-
Notifications
You must be signed in to change notification settings - Fork 2
Define terms for basic RDF 1.2 #70
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
base: main
Are you sure you want to change the base?
Conversation
- Update comment to align with other term definitions - Define base class
|
Note that it is already the case, and should be made clear in rdf-interop, that RDF 1.2 basic graphs can only be cleanly encoded and decoded from/to full RDF 1.2 under simple entailment. This is because if basic-decoding a graph interpreted under RDFS entailment (in some finite manner), "dangling" blank nodes would remain in the result, since |
ektrah
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The terms should also be added to the Vocabulary Registry so that readers have a single place where they can find the full list of all rdf: and rdfs: terms (with references to the defining specifications).
ns/rdf.ttl
Outdated
| rdfs:isDefinedBy <http://www.w3.org/1999/02/22-rdf-syntax-ns#> ; | ||
| rdfs:seeAlso <https://www.w3.org/TR/json-ld11/#the-rdf-compoundliteral-class-and-the-rdf-language-and-rdf-direction-properties> . | ||
|
|
||
| rdf:TripleForm a rdfs:Class ; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"Triple form" isn't terminology in RDF concepts (Should it be?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It should probably not be? We're seeking a name to use for the entity described in a basic encoding (under simple entailment). See w3c/rdf-interop#2 for details.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Then rdfs:isDefinedBy <https://www.w3.org/TR/rdf-interop/> because that defines the encoding.
RDF Concepts only says "RDF 1.2 basic is RDF 1.2 without triple terms".
At least, the comment (or maybe :description due to length) should say this is for interop.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These additions follow the pattern above in this file, for rdf:CompoundLiteral etc., where rdfs:isDefinedBy references the namespace and rdfs:seeAlso the relevant spec or section thereof. Extending the comments or adding dc:description too all of these sounds useful.
(This is similar to the discussion for versions added to sparql-ns.ttl. I suggested dc:conformsTo for the versions; does that appear more correct here too, for the terms themselves?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's the lack of indication of the intended use that concerns me.
<<( :s :p :o )>> a rdf:TripleForm .
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@afs I understand; that is very important! I'll wait for some more feedback (on the description of this PR and/or w3c/rdf-interop#2) and can work more detail into the definitions based on that. Meanwhile, I'll convert this PR to draft state.
Definitely; good point! Once we have settled on the terms (and perhaps have references in rdf-interop to point to), I'll update this PR accordingly. |
and clarify that the terms defined for proposition forms are reserved for basic encoding of propositions.
to what is in the RDF document (ns/rdfs.ttl)
|
I've made modifications to track the the emerging consensus in w3c/rdf-interop#2, and added the terms to the vocabulary registry (they need an RDF-INTEROP to reference, which I think is part of publishing that document). I also updated the description of |
This adds definitions of the terms used for basic-encoded RDF 1.2 graphs, as defined in rdf-interop; specifically the class of triple forms and their component subject, predicate, and object properties. These terms are not supposed to be used outside of basic-encoding. Of course, they may be used in axioms and/or queries operating on basic-encoded descriptions.
(
TripleFormis proposed as a neutral name suitable for basic encoding without conflicting with propositions in full RDF 1.2 (see w3c/rdf-interop#2). Alternative names might beTripleInterpretation,TripleSense,TripleMeaning.)Instances of this class are the abstract, atomic entities which have an injective mapping (
IT) from triple terms (that denote them), under all interpretations. This includes simple interpretations (even interpretations where triple terms denote themselves), RDFS interpretations (where triple terms denote instances of the classrdfs:Proposition), and extensions thereof.The added axiom
rdfs:Proposition rdfs:subClassOf rdf:TripleFormreflects this, and reflects that RDF 1.2 Basic, while semantically weaker, is compatible with RDF 1.2 specifically when basic-encoded graphs conform to the constraints of basic encoding/decoding. With this axiom, only graphs without materialized RDFS entailments about propositions can be encoded according to the encoding algorithm in rdf-interop. (And the decoding algorithm should be defined with similar conditions.)Preview | Diff