ARC

From ArgeoWiki

Jump to: navigation, search
ARC
Web site http://arc.web-semantics.org/home
All third party software

PHP library that allow integration of RDF/SPARQL features into a web mainstream project.

Contents

Purpose

  • Provides a RDBMS-based storage for RDF-compliant documents
Note: RDF is more a concept than a technology.
  • Automatically transposes XML documents into the RDF model.
  • In general use cases, you won't even have to know the w3c standard RDF syntax to make this work (known exception: collections description)
  • Allows to run semantic queries against the stored RDF model using the SPARQL syntax.

Technical Review

Benefits from RDF:

  • In association with xml serialization (following w3c recommandation):
  • provides standard transmission of entities' data from db to client with no or minimal transformation.
  • does not bind to a specific xml structure (may be a drawback by not scaling with xpath/xsl techs: xpath and xsl are bound to the very structure of the underlying xml document, RDF is not bound by those rules)

Benefits from SPARQL:

  • Many similarities with SQL, should be quick to learn.
  • Improved simplicity to query the model according to business model. By design, SPARQL queries reflect directly the underlying RDF model.
=> improved maintainability for business requests
  • Can query heterogenous resource types with a single request.

Benefits from ARC:

  • Lightweight configuration
  • Very simple to interact with database:
    • feeds directly on RDF-compliant xml documents (easy to write and maintain, self-describing)
    • multiple output formats (php arrays, xml, json for direct integration into javascript...)
  • Less impact on resources model changes (ie: the db structures would not be affected only business layer wich would change anyway). Typically, upgrades to the model may only be driven by input forms design.
  • Good average performances on different query types

ARC's Drawbacks:

  • Builds a fully normalized relational physical model that maps RDF Nodes and Arcs.
=> Greater database size: growth factor depends mainly on internal IDs scheme.
=> Quasi impossible to maintain by hand, may require more efforts in administration interfaces.

Important features yet to test

  • Split store: allows to define several triple tables based on predicates to "increase query and insert speed" (dixit ARC's author). This could also reduce table/indices overload and response time.

Performance Review & System Constraints

Still to be filled

Questions:

 We would need to know the maximal allowed DB size by OVH to forecast criticity factor on database growth.
 Accortding to charles, OVH would limit us over 25MB.

Usage

The Library is candidate for use as Persistence Layer Engine and Query engine in the following projects:


References

RDF


SPARQL

Personal tools