CubicWeb
Encyclopedia
CubicWeb is an open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 semantic web application framework
Web application framework
A web application framework is a software framework that is designed to support the development of dynamic websites, web applications and web services. The framework aims to alleviate the overhead associated with common activities performed in Web development...

, licensed under the LGPL. It is written in Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

.

It has been an open free software project since October 2008, but the project began in 2000 and was initially developed by Logilab for internal uses such as intranet, bug tracker and forge applications.

Concepts

The framework is entirely driven by a data model. Once the data model is defined, one gets a functional web application and can further customize the views (by default it provides a set of default views for each type of data).

A cube is a reusable component defining specific features. For example a cube forge allows one to create her own forge and the forge cube reuses the cubes comment, file, email, etc. Interesting general purpose cubes include dbpedia and openlibrary.

The framework has been translated to English, French, Spanish and German (April 2011).

Features

  • Semantic web: supports OWL
    Web Ontology Language
    The Web Ontology Language is a family of knowledge representation languages for authoring ontologies.The languages are characterised by formal semantics and RDF/XML-based serializations for the Semantic Web...

    /RDF
    Resource Description Framework
    The Resource Description Framework is a family of World Wide Web Consortium specifications originally designed as a metadata data model...

  • Multi-source: supports RQL, SQL
    SQL
    SQL is a programming language designed for managing data in relational database management systems ....

    , LDAP, Subversion and Mercurial
    Mercurial
    Mercurial is a cross-platform, distributed revision control tool for software developers. It is mainly implemented using the Python programming language, but includes a binary diff implementation written in C. It is supported on Windows and Unix-like systems, such as FreeBSD, Mac OS X and Linux...

  • RQL: Relationship query language to ease data query
  • Migration tool: fits into agile development
  • View selection principle: the engine selects the best view to fit the content to display according to the context
  • Cubes library: a wide range of cubes are available on the forge

See also

  • Sesame
    Sesame (framework)
    Sesame is an open-source framework for querying and analyzing RDF data. It was created, and is still being maintained, by the Dutch software company . It was originally developed as part of the "On-To-Knowledge", a semantic web project that ran from 1999 to 2002. It contains a triplestore.Sesame...

  • Jena
    Jena (framework)
    Jena is an open source Semantic Web framework for Java. It provides an API to extract data from and write to RDF graphs. The graphs are represented as an abstract "model". A model can be sourced with data from files, databases, URLs or a combination of these...

  • Mulgara
    Mulgara (software)
    Mulgara is a triplestore and fork of the original Kowari project. It is Open Source, scalable, and transaction-safe. Mulgara instances can be queried via the iTQL query language and the SPARQL query language.-History:...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK