Soprano

Free and open source Qt/C++ RDF framework
Download

Soprano Ranking & Summary

Advertisement

  • Rating:
  • License:
  • LGPL
  • Price:
  • FREE
  • Publisher Name:
  • Daniele Galdi and Sebastian Trueg
  • Publisher web site:
  • Operating Systems:
  • Mac OS X
  • File Size:
  • 1.8 MB

Soprano Tags


Soprano Description

Free and open source Qt/C++ RDF framework Soprano is a library which provides a highly usable object-oriented C++/Qt4 framework for RDF data. Soprano uses different RDF storage solutions as backends through a simple plugin system. Soprano is targeted at desktop applications that need a RDF data storage solution. Soprano has been optimized for simplicity and easy usage. Here are some key features of "Soprano": · A Model-centric view on RDF data. A Model is one set of RDF statements, optionally is different named graphs (contexts). · Highly usable API: fully iterator-based, FilterModel design which allows to easily stack different RDF filters on top of Models. Simple plugin design: Soprano features five different kinds of plugins: · Backend plugins do the actual RDF data storage · Parser plugins are used to parser encoded RDF data into Soprano statements · Serializer plugins are the exact counterpart to parser plugins: they serialize Soprano RDF statements into encoded RDF data · Query parser plugins provide support for different query languages · Query serializer plugins are the exact counterpart to query parser plugins: they serialize a Soprano query object into different query languages. · Vocabulary namepaces contain static QUrl objects for most frequently used URIs from RDF, RDFS, or XML Schema · Soprano has a rule-based forward-inference engine that is implemented as a filter model and comes with predefined rulsets for RDFS and NRL · The CLucene index provides a full text query index for all literal statements including CLucene scoring. · Soprano features a server/client architecture which allows to run an RDF storage remotely. Interfaces for communication over TCP, unix sockets, and DBus are provided in an easy-to use API. · The Soprano API is fully documented using doxygen. The build target "apidox" creates the documentation as HTML pages. · Soprano comes with two full-features backend plugins: redland and Sesame2. (A third, unfinished backend using 3Store may be removed for the Soprano final release) What's New in This Release: · New class LanguageTag replacing the old simple string language handling with a sophisticated one implementing RFC 4647. At the same time Soprano now directly supports plain literals in addition to typed string literals (compare LiteralValue::createPlainLiteral). (thanks to Greg Beauchesne for the patch) CAUTION: This patch changes behaviour: parsers and storage backends will now return plain literals instead of typed string literals! · New static methods Node::resourceToN3, Node::literalToN3, and Node::blankToN3 for easy N3 formatting without the creation of a Node instance. · Fixed both Node::matches and Statement::matches - now only the paramter is treated as a wildcard sopranocmd: · new paramter --file which allows to execute commands on files directly without creating a database on disk. · standard namespace prefixes rdf, rdfs, xsd, nrl, and nao are now added to sparql queries automatically if used. · construct and describe query results can now be serialized in all supported formats. · New parameter --index which allows to wrap an IndexFilterModel around the actual Model. · New command 'monitor' which allows to monitor a remote repository for statementAdded and statementRemoved signals. · New class Graph which is a simple QSet based container for statements as a quick replacement for Model in case one wants to handle a small number of statements without query support. · Fixed plugin loading on windows. · Fixed a deadlock in the IndexFilterModel in case a query could not be parsed. · Prevent Model::removeContext to remove empty contexts, i.e. the whole database. · Statement::operator


Soprano Related Software