Towards a Commons RDF Library - ApacheCon Europe 2014
1. Towards a
Commons RDF
Library
Sergio Fernández, Andy Seaborne and Peter Ansell
http://commons-rdf.github.io
2. Who are we?
Sergio Fernández
• Senior Researcher at Salzburg Research
• Partner Technology Manager at Redlink GmbH
• ASF Committer of Marmotta and Stanbol
Andy Seaborne
• Senior Architect at Epimorphics Ltd
• ASF participant on W3C SPARQL-WG, RDF-WG
• ASF Committer of Jena
Peter Ansell
• Researcher at CSIRO
• Developer of OpenRDF Sesame
• ASF Committer of Marmotta and Any23
3. Commons RDF, why?
• Historical incompatibility in Java
• Not providing yet-another-wrapper
• But providing common interfaces
• It arrives in the right time for design of:
• Apache Jena 3.0
• OpenRDF Sesame 4.0
• But it will live or die on its own merits!
4. Motivations
• Avoid propagation of internal
implementation decisions
• Typically now when any API decides either Jena or
Sesame, it immediately forces you to follow the
same implementation decision
• Simple common interfaces would solve
most of the use cases
• In the end you should be, a bit more, free
to choose
5. Use Cases
• Non-captive client libraries
• MICO API: http://www.mico-project.eu/commons-rdf/
• Redlink SDK: http://dev.redlink.io/sdk#java
• Generic SPARQL Client
• Portable in-memory RDF model/graph
• Move RDF to other worlds (e.g., Hadoop)
• ...whatever it could come
6. Current features: version 0.0.2
• A type-safe, non-general API that covers
RDF 1.1
• Initially focused on core concepts:
• IRI, Blank Node, Literal, Triple, and Graph
• In a future other aspects may be also
included
• datasets, query, etc.
7. Developers, we need you!
what other interfaces
are desired by
developers?
https://www.flickr.com/photos/kalexanderson/6300175460
9. Next steps and discussion
• Bootstrap the implementations on each
toolkit
• Evolve the current design
• Get feedback from the community
• Currently working at GitHub, although at
some point we could move to Apache
Commons or any suitable organization
11. thanks!
available under
CreativeCommons Attribution 4.0
International License
http://commons-rdf.github.io
acknowledgments to
MICO FP7 project
(grant no. 610480)