Virtuoso's Entity Description Services

Virtuoso provides services rendering Entity Descriptions using HTML descriptions. These descriptions provide human-readable presentations of RDF-based Entity Relationships stored in a Virtuoso-managed Knowledge Graph.

Each of these services is packaged in a Virtuoso Application Distribution (VAD) package and deployed via an endpoint, following VAD installation.

  • /about – endpoint for the Entity Description Service packaged with the Sponger Middleware Module as part of the catridges_dav.vad package
  • /describe – endpoint for the Entity Description Service packaged with the Faceted Browser Module as part of the fct_dav.vad package

/about Service

The /about/ endpoint is mapped to a /rdf/desc/description.vsp (Virtuoso’s equivalent of a PHP or ASP page) which provides an Entity Description using a variety of negotiable document types. For instance, if a URL contains the pattern /about/html it presents an Entity Relationship Description using an HTML document that associates a single Entity with all of its Properties.

Features include:

  1. Entity Description Presentation
  2. Linked Data Principles applied to data imported from external sources (i.e., sponging for progressive Knowledge Graph updates)
  3. Entity Descriptions using a variety of negotiable document types e.g., HTML, HTML+ Various Structured Data Islands, RDF-Turtle, JSON-LD, JSON, CSV etc.
    This service is a preconfigured mapping of a URL to a VSP that’s installed as part of the Sponger Package (cartridges_dav.vad). It is also similar to the DBpedia skin, but with the addition of “on the fly” de-referencing of URIs when associated with external data sources.

Examples

/describe Service

The /describe/ endpoint is mapped to a /fct/rdfdesc/description.vsp Virtuoso Server Page (Virtuoso’s equivalent of ASP) which provides an Entity Description using a variety of negotiable document types. For instance, if a URL contains the pattern /describe={Entity-URI} it presents an Entity Relationship Description using an HTML document that associates a single Entity with all of its Properties.

Features include.

  1. Entity Description Presentation
  2. Faceted Browsing i.e., data exploration informed by Entity Relationship Type Semantics e.g., clicking on rdf:type property values resolve to all instances of an associated class; likewise, click on a property reveals its accepted domains and ranges which also provide exploration pathways using the follow-your-nose pattern
  3. Sponging is included as an option for progressive Knowledge Graph updates
  4. Entity Descriptions using a variety of negotiable document types e.g., HTML, HTML+ Various Structured Data Islands, RDF-Turtle, JSON-LD, JSON, CSV etc.

Note:
The description.vsp pages mapped to /about/ and /describe/ are fundamentally different in the following ways:

  1. External Data Imports (a/k/a “Sponging”) occur each time you click on a link when using /about/ but not so when using /describe/ which includes a “sponger” or “import” link for explicit imports
  2. Clicking on an rdf:type property resolves all instances of the value of said property when using /describe/ but not so when using /about/

Example

Linked Data Deployment

You can easily deploy Linked Data using Virtuoso by creating re-write rules that map HTTP requests to either the /about/ or /describe/ endpoints. Fundamentally, this provides a very simple option for Linked Data Deployment when using any Virtuoso instance to which the relevant vad packages have been installed.

Related: