• Topic
  • Discussion
  • VOS.VOSSPARQL(Last) -- DAVWikiAdmin? , 2017-06-13 05:39:51 Edit WebDAV System Administrator 2017-06-13 01:39:51

    Virtuoso SPARQL

    Language

    Virtuoso's SPARQL implementation is based on the W3C SPARQL Working Draft of Feb 20, 2006. The implementation covers almost all of the specification, including:

    • optional and union with arbitrary nesting
    • filter and expressions, including calling SQL functions
    • ask, select, describe, construct
    • order, skip, limit
    • graph for scoping a query to a given graph

    Virtuoso SPARQL translates a SPARQL query to the corresponding SQL query referring to the triple store tables. In the present implementation, all graphs are stored in one large table containing G, S, P, O quads. Future developments will introduce more flexibility in this regard.

    API

    A SPARQL statement is a valid top-level SQL select as well as a valid subquery or derived table. Hence there is almost no need for a special API for querying, as SPARQL goes wherever SQL does, see the SPARQL demo for examples.

    There are SQL API functions for reading RDF XML and Turtle files, mapping between internal ids of nodes and their external names, inserting results of construct queries as new graphs, asserting individual triples and any other such tasks.

    Protocol

    Virtuoso provides a full implementation of the SPARQL Protocol with basic HTTP and SOAP bindings. Virtuoso offers SPARQL Protocol client APIs in addition to its capabilities as a compliant server.

    SPARUL

    Since version 5.0, Virtuoso supports the SPARQL/Update (SPARUL) extension of SPARQL.

    See Virtuoso SPARUL Implementation notes.

    Examples

    CategoryWebSite CategoryVirtuoso CategoryOpenSource CategoryVOS CategorySPARQL CategoryRDF