Soprano 2.1 released

I am proud to announce the release of Soprano 2.1, the RDF storage/parsing/serialization framework based on Qt 4. Soprano 2.1 comes with a set of improvements and new features as compared to 2.0 and will accompany the upcoming KDE 4.1 release.

The following list is not complete but names the most important changes and improvements.

  • SignalCacheModel to restrict the number of emitted statementsAdded and statementsRemoved signals in a certain timeframe.
  • Raptor serializer now supports all raptor serializer factory names which are mapped to Soprano user serialization types.
  • Changed mimetype of N-Triples to "application/n-triples"
  • New filter model DBusExportModel which exports a single Model via D-Bus.
  • The onto2vocabularyclass tool is now installed by default.
  • New sopranocmd feature: export only part of a model based on a SPARQL construct query.
  • Added OWL Lite resource instances for easy access to OWL Lite members
  • Finer grained control over the D-Bus server components:
    • Soprano::Server::DBusExportModel exports a single model
    • Soprano::Server::DBusExportIterator exports a single iterator
  • Finer grained access to objects exported via D-Bus: the Soprano::Client::DBusXXXIterator classes provide thin wrappers around Soprano iterators exported via D-Bus
  • New method IndexFilterModel::rebuildIndex to rebuild the complete index.
  • New filter model ReadOnlyModel which does exactly what its name suggests: it blocks all writing operations.
  • The unix socket client has been replaced be the LocalSocketClient based on the QLocalSocket which was introduced in QT 4.4. As a result of the design on QLocalServer and QLocalSocket the server is not multithreaded anymore (this might be fixed in 2.2 again).
  • New Backend method "deleteModelData"
  • New AsyncModel to asyncroneously execute commands on any model.
  • The IndexFilterModel now allows to only index certain predicates and not actually store them
  • Sesame2 updated to 2.1.3
  • Fixed encoding issues in the raptor parser and serializer

Soprano has come a long way since its first release but there is still some way to be gone. We are still missing transactions and a fast and scalable backend writting in C/C++ to replace sesame2 as the default one. New developers interested in RDF technologies are always welcome.

Source tarballs are available via the Sourceforge download page. Binary packages will soon pop up in combination with the KDE 4.1 release.