-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Explain how classic RDF reification relates to triple terms and rdf:reifies #61
Comments
With an interpretation of triple terms, OWL can be used, as is, to define a useful connection in RDF 1.2 environments. This can also be bridged with systems still using RDF 1.1 through support for "classicizing" RDF 1.2. (Note that the latter currently uses different terms, but those could be defined as sub-terms of the interpretation terms.) It would then be possible to use reifiers while staying compatible with existing applications relying on classic reification. (A recommendation could be to move to reifiers for all but very special cases.) The following (where the triple term is commented out and instead represented in its proposed interpretation): 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 owl: <http://www.w3.org/2002/07/owl#>
PREFIX : <http://example.org/ns#>
BASE <http://example.org/>
##
# Bridging axioms:
[ owl:onProperty _:selfIsStmt ; owl:hasSelf true ] owl:equivalentClass rdf:Statement .
[] rdfs:subPropertyOf rdf:subject ;
owl:propertyChainAxiom (_:selfIsStmt rdf:reifies rdf:tripleTermSubject) .
[] rdfs:subPropertyOf rdf:predicate ;
owl:propertyChainAxiom (_:selfIsStmt rdf:reifies rdf:tripleTermPredicate) .
[] rdfs:subPropertyOf rdf:object ;
owl:propertyChainAxiom (_:selfIsStmt rdf:reifies rdf:tripleTermObject) .
##
# Domain of discourse:
<stmt1> a rdf:Statement ;
:date "2014-12-15"^^xsd:date ;
:source <SomeDatabase> ;
:trust 0.8 ;
# rdf:reifies <<( <Alice> :bought <SomeComputer> )>> ; # "classicized" as:
rdf:reifies [ a rdf:TripleTerm ;
rdf:tripleTermSubject <Alice> ;
rdf:tripleTermPredicate :bought ;
rdf:tripleTermObject <SomeComputer> ] .
entails (among other triples): <stmt1>
rdf:subject <http://example.org/Alice> ;
rdf:predicate :bought ;
rdf:object <http://example.org/SomeComputer> . This can be tested e.g. using OWL-RL: $ owlrl -m -t -i turtle -o turtle reifies2statement.ttl |
When this is resolved, https://github.com/w3c/rdf-schema may also need to be updated accordingly. The definition of
appears less clear in comparsion to its introduction in Semantics. It can be read such that a statement is not a token sentence, but its (propositional) meaning.) |
This would be, at best, some sort of non-normative note in the document. |
It would be valuable to explain how "classic" RDF reification relates to the concepts of triple terms and reifiers.
This was asked for on the mailing list on 2024-12-07 and mentioned during the WG meeting on 2014-12-12.
Given the (informative) description of reifications (resources of type
rdf:Statement
):it is my belief is that a resource of type
rdf:Statement
is conceptually a specific kind of reifiers. More details in comments.The text was updated successfully, but these errors were encountered: