Proposed draft RDF Graph vocabulary

Taking Jeremy's suggested terms relating graphs, and adding the terms 
for
trust/authentication, here's what I think the vocabulary should look 
like:

Suggestion: shall we use 'rdfg:' for "RDF Graph" rather than the more
cryptic/arbitrary 'rdfx:'?

--

    rdfg:Graph
       a rdfs:Class ;
       rdfs:comment "An RDF graph (with intensional semantics)." .

    rdfg:Authority
       a rdfs:Class ;
       rdfs:comment "An authority, or origin, of a graph." .

We don't say more about what an rdfg:Authority actually is. We only 
(vaguely)
define that such a class of entities exist which have a particular role
with regards to trust.

    rdfg:Signature
       a rdfs:Class ;
       rdfs:comment "A signature used to authenticate a graph." .

Again, we don't say more about exactly what an rdfg:Signature is, only
that it has a particular purpose in authentication of the statements
and instances should be suitable for that purpose.

    rdfg:sameAs
       a rdf:Property ;
       rdfs:comment  "The subject and object graphs are equivalent as 
defined by RDF Concepts." ;
       rdfs:domain rdfg:Graph ;
       rdfs:range rdfg:Graph .

I think that some localname recognition with OWL would be useful here, 
even
if the semantics is not identical. But something like rdfg:equivalentTo 
would
also be OK.

    rdfg:subsumes
       a rdf:Property ;
       rdfs:comment "The object graph is equivalent to a subset of the 
subject graph." ;
       rdfs:domain rdfg:Graph ;
       rdfs:range rdfg:Graph ;
       owl:inverseProperty rdfg:subsumedBy .

    rdfg:subsumedBy
       a rdf:Property ;
       rdfs:comment "The subject graph is equivalent to a subset of the 
object graph." ;
       rdfs:domain rdfg:Graph ;
       rdfs:range rdfg:Graph ;
       owl:inverseProperty rdfg:subsumes .

I expanded rdfx:subGraphOf into a pair of inverse properties, allowing 
one to
relate two perfectly intersecting graphs from either perspective.

    rdfg:authority
       a rdf:Property ;
       rdfs:comment "The object is the authority, or origin, of the 
subject graph." ;
       rdfs:domain rdfg:Graph ;
       rdfs:range rdfg:Authority .

This property simply associates an authority with a particular graph. 
It does
not assert anything. This can be used to clearly indicate the origin of 
the
graph without that origin/entity making any actual claims (e.g. the end
result being akin to quoting, if not otherwise asserted by that 
authority
elsewhere).

    rdfg:assertedBy
       a rdf:Property ;
       rdfs:subPropertyOf rdfg:authority ;
       rdfs:comment "The object is the asserting authority of the 
subject graph." ;
       rdfs:domain rdfg:Graph ;
       rdfs:range rdfg:Authority .

Note that rdfg:assertedBy is a subproperty of rdfg:authority, so one can
both associate the authority and explicitly assert with a single 
statement.
Those who don't care about quoting or the distinction between authority
and assertion can happily just use this property and ignore 
rdfg:assertion
and the distinction it provides for...

    rdfg:signature
       a rdf:Property ;
       rdfs:comment "The object is the signature to be used to 
authenticate the subject graph." ;
       rdfs:domain rdfg:Graph ;
       rdfs:range rdfg:Signature .

Again, we don't mandate what the signature is (there may be multiple 
alternatives
in use) only provide the means to associate a signature with the 
particular graph.

--

The bootstrapping interpretation/test looks specifically for the
properties rdfg:assertedBy and (optionally) rdfg:signature where the
subject of those "literal" statements is the same URIref as that
naming the graph in which they occur.

Statements using any of the above vocabulary are fully valid and
compatible with both the RDF and OWL MTs irrespective of the
special bootstrapping interpretation/test necessary for determination
of (terminal) assertion and authentication.

Eh?

--

Patrick Stickler
Nokia, Finland
patrick.stickler@nokia.com

Received on Monday, 15 March 2004 06:25:03 UTC