Web of Data
Valid XHTML + RDFa Convert to RDF/XML

The Statistical Core Vocabulary (scovo)

Semantic Web JOANNEUM RESEARCH Centre for Digital Music, Queen Mary, University of London Cambridge Semantics Talis
This version:
Editors (alphabetical):
Ayers, Danny (Talis)
Feigenbaum, Lee (Cambridge Semantics)
Hausenblas, Michael (JOANNEUM RESEARCH)
Heath, Tom (Talis)
Raimond, Yves (Centre for Digital Music, Queen Mary, University of London)


This document specifies an [RDF-Schema] vocabulary for representing statistical data on the Web. It is normatively encoded in [XHTML+RDFa], that is embedded in this page.

Table of Contents

  1. Overview
  2. Classes
  3. Properties
  4. Usage


The Statistical Core Vocabulary (scovo) lets you describe statistical information on the Web of Data. Three basic concepts are used:

The Statistical Core Vocabulary (scovo)
Fig.: The Statistical Core Vocabulary (scovo)

The following namespace URIs are used by scovo:

http://purl.org/NET/scovo#scv:the namespace defined by this specification
http://purl.org/NET/c4dm/event.owl#event:the event ontology
http://www.w3.org/2004/02/skos/core#skos:the SKOS vocabulary
http://www.w3.org/1999/02/22-rdf-syntax-ns#rdf:the RDF base namespace
http://www.w3.org/2000/01/rdf-schema#"rdfs:the RDF-Schema namespace



a statistical dataset, is a SKOS Concept.


a statistical data item; is a kind of Event.


a dimension of a statistical data item



An Item belongs to dataset Dataset.


A Dataset is the dataset of an Item.


An Item has a dimension Dimension.


A Dimension has a minimum range value.


A Dimension has a maximum range value.


The following examples shows how to use scovo to model statistics for airline on-time arrivals and departures based on [LeeF-MS-RDF-SD]. We use the RDF/Turtle notation yielding a concise and human-readable form (note that this example is also available as an [RDF/XML document]):

@prefix ex: <http://example.org/on-time-flight#> .
@prefix scv: <http://purl.org/NET/scovo#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

 # domain schema definitions
 ex:TimePeriod rdfs:subClassOf scv:Dimension ;
   dc:title "time period" .
 ex:Q12006 rdf:type ex:TimePeriod ;
   dc:title "2006 Q1" ;
   scv:min "2006-01-01"^^xsd:date ;
   scv:max "2006-03-31"^^xsd:date .
 ex:OnTime rdfs:subClassOf scv:Dimension ; 
   dc:title "on-time arrivals or departures" .

 ex:ota rdf:type ex:OnTime ;
   dc:title "on-time arrivals" .
 ex:Airport rdfs:subClassOf scv:Dimension ;
   dc:title "airport" .
 ex:AtlantaHartsfield rdf:type ex:Airport ;
   dc:title "Atlanta, Hartsfield" .
 # dataset and data items instances
 ex:ontime-flights rdf:type scv:Dataset ;
   dc:title "On-time Flight Arrivals and Departures at Major U.S. Airports: 2006" ;
   scv:datasetOf ex:AtlantaHartsfield-ota-2006-q1 .
 ex:AtlantaHartsfield-ota-2006-q1 rdf:type scv:Item ;
   rdf:value 74 ;
   scv:dataset ex:ontime-flights ;
   scv:dimension ex:Q12006 ;
   scv:dimension ex:ota ;
   scv:dimension ex:AtlantaHartsfield .

When we want to find out about how many on-time arrivals there were for a certain airport in a given time period (from Feb 2006 to Aug 2006), the following SPARQL-query can do the job - try it out!:

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 
PREFIX dc: <http://purl.org/dc/elements/1.1/>
PREFIX scv: <http://purl.org/NET/scovo#>
PREFIX ex:  <http://example.org/on-time-flight#>

SELECT ?airport_name ?period ?percent_ontime_arrivals
FROM <http://sw.joanneum.at/scovo/otf-example-full.rdf>
  ?item rdf:type scv:Item ;
        scv:dimension ?airport;
        scv:dimension ?time_period;
        scv:dimension ex:ota ;
        rdf:value ?percent_ontime_arrivals .
  ?airport rdf:type ex:Airport ;
   dc:title ?airport_name .
  ?time_period rdf:type ex:TimePeriod ;
   scv:min ?min ;
   scv:max ?max ;
   dc:title ?period .
   FILTER ( ?min > "2006-02-01" && ?max < "2006-08-01")

The query below can be used to list high-performing aiports (that is higher than 85 % on-time arrivals or departures, along with the time period) - try it out!:

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX dc: <http://purl.org/dc/elements/1.1/>
PREFIX scv: <http://purl.org/NET/scovo#>
PREFIX ex:  <http://example.org/on-time-flight#>

SELECT DISTINCT ?airport_name ?percent_ontime ?period ?ontime_type
  ?item rdf:type scv:Item  ;
        scv:dimension ?airport ;
        scv:dimension ?time_period ;
        scv:dimension ?ontime ;
        rdf:value ?percent_ontime .
  ?airport rdf:type ex:Airport ;
   dc:title ?airport_name .
  ?time_period rdf:type ex:TimePeriod ;
    dc:title ?period .
  ?ontime rdf:type ex:OnTime ;
    dc:title ?ontime_type .
  FILTER ( ?percent_ontime > 85)
ORDER BY DESC (?percent_ontime)