blob: c54a7f2fc7e5eeeb5adcff0b4b8689d8d3b7fc67 [file] [log] [blame]
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix : <http://jena.hpl.hp.com/2003/03/result-set#> .
@prefix xsd: <http://www.w3.org/2000/10/XMLSchema#> .
: rdfs:comment "Vocabulary for recording query result set" ;
dc:creator "Andy Seaborne" ;
dc:subject "" ;
dc:publisher "SWAD-e" ;
dc:title "" ;
dc:description "" ;
dc:date "2003-03-12" ;
dc:format "RDF" ;
dc:identifier : ; #:-)
.
## ---- Class declarations ----
:ResultSet rdf:type rdfs:Class ;
rdfs:comment "Class of things that represent the result set" ;
.
:ResultSolution rdf:type rdfs:Class ;
rdfs:comment "Class of things that represent a row in the result table - one solution to the query" ;
.
:ResultBinding rdf:type rdfs:Class ;
rdfs:comment "Class of things that represent a single (variable, value) pairing" ;
.
## =======================================
## Modelling style: uses multiple instances of a property
## to represent
## e.g. :ResultTable has many :hasSolution properties, one per row
## ---- Properties ----
## - Table level
:solution rdf:type rdf:Property ;
rdfs:domain :ResultSet ;
rdfs:range :ResultSolution ;
.
## Useful information extracted
:size rdf:type rdf:Property ;
rdfs:comment "Number of rows in the result table" ;
rdfs:range xsd:integer ; # Is that how I write it?
.
## Can be convenient to list the variables beforehand
:resultVariable rdf:type rdf:Property ;
rdfs:domain :ResultSet ;
rdfs:range xsd:string ;
rdfs:comment "Name of a variable used in the result set" ;
rdfs:comment "Multivalued" ;
.
## -- Row level
:binding rdf:type rdf:Property ;
rdfs:comment "Multi-occurrence property associating a result solution (row) resource to a single (variable, value) binding " ;
rdfs:domain :ResultSolution ;
rdfs:range :ResultBinding ;
.
## -- Single binding level
:variable rdf:type rdf:Property ;
rdfs:comment "Variable name" ;
rdfs:domain :ResultBinding ;
rdfs:range rdfs:Literal ;
.
:value rdf:type rdf:Property ;
##rdfs:subPropertyOf rdfs:value ;
rdfs:comment "Variable name" ;
rdfs:domain :ResultBinding ;
# Range is anything
.
# Declare the "undefined" value
:undef rdf:type rdfs:Resource ;
rdfs:comment "Resource representing the undefined value" ;
.