Global architecture

The Datao architecture

Datao is a semantic web browser. It enhances the features of modern Firefox browser with Java technologies, running the semantic web stack directly on the client.

Datao is architectured in 3-tiers :

Data layer

Jena

Status: available.

Jena Jena is a semantic web library that provides semantic management and storage for both RDF and OWL data. It provides automatic import of remote RDF data into Datao and processing. It is also the necessary library for distributed remote SPARQL queries (see DARQ below).

Sesame

Status: available.

Sesame Sesame is a semantic web data store that provides semantic management and storage for RDF. This efficient triple store is available through the Jena2Sesame bridge.

Kaon2

Status: available.

Kaon2 Kaon2 is a highly efficient semantic management and storage for OWL. It also provides advanced reasoning and rules capabilities. This software is proprietary (ie. incompatible with the GPLv3 version of Datao) and is available through the Ontoprise company.

Virtuoso

Status: near available.

Viertuoso Virtuoso is a SQL/XML/RDF database. This highly scalable storage system is useful for high volumes semantic data management.

DARQ

Status: to be done.

DARQ DARQ is a query engine that provides distributed queries capabilities. It optimizes the aggregation of data by analysing the query tu be run, partition it accordingly to the data sources models and manages the local aggregation/join of remotely retrieved data.

D2RQ

Status: to be done.

D2RQ D2RQ is a middleware that maps semantic queries to SQL queries in order to retrieve semantic data from legacy SQL databases.

Application layer

Visual query

Status: available.

QueryBuilder

Visual query is a way to interact with semantic data in a fully graphical way. You use drag'n drop to browse the data structure, build queries and debug them. The user can also manage the data lifecycle visually (ontologies catalog, defining the data loading and aggregation, enabling reasoning). This tool can generate SPARQL or SeRQL queries, and plans to support MetaViews should be discussed.

Cypher

Status: to be done.

Cypher

Cypher is a query translator between Natural Language and SPARQL. It is an interesting alternative to visual query building with drag'n drop. Such an interface could ease rapid query building by providing a simple textual GUI and natural access to the semantic web.

Sher

Status: to be discussed.

Sher

SHER is an innovative scalable reasoner for the semantic web. It could be included as another reasoner in Datao (after Jena, Pellet and Kaon2). SHER depends on IBM DB2 internals, but it should be possible to port it to Virtuoso, which is (soon to be) available in Datao.

Pellet

Status: available.

Pellet

Pellet is an efficient inference engine in the Semantic Web area. This tool has many usages to enhance semantic data, whether it is rules or OWL reasoning. This is a must-have if you want to manage high-level data models.

SemanticWiki

Status: to be discussed.

SemanticWiki

SemanticWiki is a way for a end-user to interact with Semantic Webs in the usual and fun Wiki way. Datao wishes to provide client-side tools for Semantic Wiki, such as client-side controled english processor, p2p wiki synchronization...

BPM/Workflow

Status: to be discussed.

Workflow

Datao should provide a workflow-driven web applications facility. Taverna or Tersus or SemanticWebPipes could be integrated in order to fully graphically defining the actions triggered by users and how to interact with the Semantic Web.

Plugins

Status: to be done.

Plugins

Datao is currently a monolithic application embedding all the components that seems to be necessary in a semantic web browser. But this architecture is not evolutive. Modern technologies such as OSGi and EventBus provide a plugin infrastructure to ensure that future needs can be added with minor integration difficulties and maximum reusability.

Browser layer

Firefox/XUL frontend

Status: ongoing (TOP priority).

Firefox

Firefox is now available as a Swing component for Java (thanks to the MozSwing project). Firefox provides all the browser features required for the Datao project, and also provides the XUL framework. This framework can generate fat-client GUIs in a declarative HTML-like language. And, most importantly, the XUL framework natively relies on RDF for its internal data models. This last point definitely seals the choice of Firefox as the crucial technology for Datao browser layer.

Fresnel

Status: to be done.

Fresnel

Fresnel is an abstract language to link RDF data and declarative GUIs such as HTML or XUL. Datao should provide a GUI to ease the development of Fresnel templates.

Xenon

Status: to be discussed.

Xenon

Xenon is a research project to define a stylesheet language for RDF semantic data. Datao should provide a (visual?) development environment for Xenon templates.

Datao is available as a free software, under AGPLv3 licence.

Click here for the Sourceforge project page.

Copyright 2008, Datao.net SARL, All rights reserved. Contact us