OpenLink Software Inc. just released the Virtuoso Open-Source Edition 5.0.0. From the press release:

This version includes:

  • Significant rewrite of database engine resulting in 50%-100% improvement on single CPU and in some cases up to 300% on multiprocessor CPUs by decreasing resource-contention between threads and other optimizations.
  • Radical expansion of RDF support including
    • In-built middleware (called the Sponger) for transforming non RDF into RDF “on the fly” (e.g. producing Triples from Microformats, REST style Web Services, and (X)HTML etc.)
    • Full Text Indexing of Literal Objects in Triple Patterns (via Filter or magic bif:contains predicate applied Literal Objects)
    • Basic Inferencing (Subclass and Subproperty Support)
    • SPARQL Aggregate Functions
    • SPARQL Update Language Support (Updates, Inserts, Deletions in SPARQL)
    • Improved Support of XML Schema Type System (including the use of XML Schema Complex Types as Objects of bif:xcontains predicate)
    • Enhancements to the in-built SPARQL to SQL Compiler’s Cost Optimizer
    • Performance Optimizations to RDF VIEWs (SQL to RDF Mapping)
  • Bug fixes

NOTE: Databases created with earlier versions of Virtuoso will be automatically upgraded to Virtuoso 5.0 but after upgrade will not be readable with older Virtuoso versions.

For more information please see:

Virtuoso Open Source Edition Links:

Most interesting new/updated features

The Sponger (or RDF crawler) is quite a great improvement of the version 5 of the open source edition of Virtuoso. I talked about it in that blog post: “Making the bridge between the Web and the Semantic Web“. This is a sort of Swiss army knife for on-the-fly Web data conversion into RDF.

I have requested the full-text index over triple store literals a few months ago, now this feature is already included into the open source edition of Virtuoso. A simple SPARQL language extension enable the use of this more-than-essential feature. It is possible to use this feature with triples of the triple store, or via a RDF View.

Finally RDF Views are an essential tool to convert existing data to RDF on-the-fly. A good use case I can think about is:

One enterprise has many data sources (employees and products data), on multiple database systems (mysql and oracle). This enterprise wants to convert all these data sources into RDF using some related ontologies. Their goal is to uniform the data among multiples services points of the enterprise to let them easily exchange information.

The only thing they have to do is to connect Virtuoso, via ODBC, to the mysql and oracle databases. Then, they only have to write some RDF Views using these mysql and oracle relational databases as data source to convert them in RDF. Finally, all the enterprise management applications will be able to query these databases, uniformly among all service points, with a single SPARQL query against this Virtuoso server instance running the RDF Views.

The same information is always in place, the only thing that has to be added is a RDF Views layer that converts the data of relational databases into RDF.

MusicBrainZ RDF Views

I was waiting after that release before publishing the MusciBrainZ RDF View I create to convert MusicBrainZ relational data into RDF using the Music Ontology. In the next few days I should write a blog post explaining how this RDF View is working and how you can use it on your Virtuoso Open Source Server instance.


I am sure that this new and major release will help the development of many semantic web projects that could eventually change the World, as we know it.

Leave a Reply

Your email address will not be published. Required fields are marked *