-
Notifications
You must be signed in to change notification settings - Fork 2
Declare XSD 1.1 facets as rdf:Property and annotate them #66
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
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.
lgtm
I believe this needs wider exposure than just a PR. |
Do you think discussion on a call will be sufficient? If not, what other exposure do you suggest? |
The matter regarding wider review is the relationship to OWL. Discussion in call is one possibility - noting telecon time is a scarce resource at the moment. Raising an issue and actively soliciting feedback is another route. |
Do you mean email to semantic-web mailing list? |
I'm not being prescription as to how. |
@alanruttenberg @Antoine-Zimmermann @dlmcguinness @ianhorrocks11 @iherman @baojie @mkroetzsch @pfps @RinkeHoekstra @sandhawke @seanbechhofer We would appreciate your views on PR #66 (Declare XSD 1.1 facets as Background. In PR #64 (#64), we added and aligned the set of XSD datatypes that are recognized and used by the RDF specifications. PR #66 can be seen as a natural extension of that effort: it documents the facet IRIs from XSD 1.1 which routinely appear in RDF encodings of datatype restrictions, making their role explicit and providing minimal metadata for discoverability. Context & intent. In OWL 2’s RDF mapping, datatype restrictions via Specific questions for review
The PR is labeled needs discussion. If you have reservations or alternative approaches, suggestions are very welcome. Many thanks in advance for your feedback. |
Very few, probably none, of these are RDF or RDFS axioms. Any indication that they are needs to be scrubbed from the document and refuted in discussions. With the changes, the file cannot be used in OWL because it uses IRIs from the OWL reserved vocabulary as properties. OWL datatype facets are not properties. |
@pfps Are you saying that an OWL implementation which parses e.g. the Turtle of one of the examples above must not interpret the triples using an extension of RDFS, but that OWL redefines the interpretation so that not all predicates of triples in the graph are interpreted as properties? And/or that the value space of facets is disjoint from (I'm just trying to understand if the path is blocked or just "untrodden".) |
The OWL 2 reserved vocabulary can only be used in certain ways in OWL 2 DL and using xsd: facet IRIs in any place except datatype definitions is not allowed. |
I understand. Is it also a problem in OWL Full? And if not, would it be less of a problem (for OWL DL implementations) if the content of this PR was in a separate resource and not bundled with the description of XSD datatypes? |
There is no need for any OWL processor to include any part of this file. As far as OWLFull goes, I don't think that there is a problem. |
There are 2 counter arguments against this:
On the other hand, an argument combating the PR is that facets are completely foreign to RDF/RDFS semantics. It seems to me that these triples would better fit in the OWL vocabulary file. By the way, |
There is no real problem that these are not RDFS axioms, except that that is what they are described as. |
Where? by whom? |
AFAICS, only in the issue description of #64; and that uses the formulation "RDFS subclass axioms", which doesn't necessarily mean "RDFS axioms", but axioms expressed using As for this PR, I think @Antoine-Zimmermann has a point with:
If the contents of this PR was put in a separate file (such as (Similarly, as commented, |
I am not strongly opposed to a split in principle. My concern is practical ambiguity for users and tooling once we publish two Turtle documents that both speak about the same namespace IRI. When we write prefixes such as:
the expectation is that each prefix denotes a single namespace with a single dereference target or at least a single canonical vocabulary description. If we introduce two separate documents for Especially since there are a huge number of documents in the world that use both datatypes and facets in the same namespace. Furthermore, the XSD 1.1 Datatypes specification itself treats them as one. I don't think it's the best idea to force people to use two different prefixes to express the same thing. Given these concerns, my mild preference is to keep the facet declarations together with the rest of the XSD-in-RDF vocabulary for now, since that is the least ambiguous path for users who only interact via prefixes or full IRIs. I am open to a split if we agree on a clear dereferencing and import policy that preserves a single canonical target for |
Summary
This pull request adds explicit declarations for the XML Schema 1.1 facets (e.g.,
xsd:minInclusive
,xsd:maxInclusive
,xsd:pattern
, etc.) asrdf:Property
in the RDF/XSD ontology file. Each facet IRI is annotated withrdfs:label
,rdfs:comment
, andrdfs:isDefinedBy
pointing to the corresponding section of the XML Schema Part 2 specification.No existing IRIs are modified and no domains/ranges are introduced, so there is no behavior change for consumers; this simply documents how these facet IRIs are actually used in RDF encodings of datatype restrictions.
Motivation
The current file enumerates XSD datatypes commonly used in RDF. OWL 2’s RDF mapping expresses datatype restrictions via
owl:withRestrictions
as lists of blank nodes whose predicates are facet IRIs. In practice, these facet IRIs occur in the predicate position of RDF triples and function as properties. Making this explicit:Proposed Changes
Add facet declarations as
rdf:Property
with metadata:Rationale (single, precise argument)
In OWL 2’s, each restriction on a datatype is encoded as RDF triples where the facet IRI appears as the predicate of a triple attached to a blank node in the
owl:withRestrictions
list. For example:Because these facet IRIs are used in predicate position in RDF, declaring them as
rdf:Property
accurately reflects their operational role in the graph and enables attaching standard metadata (rdfs:label
,rdfs:isDefinedBy
,rdfs:comment
) without introducing stronger semantics than intended.Example (end-to-end)
This corresponds to triples where
xsd:maxInclusive
andxsd:minInclusive
are predicates, hence properties.Backwards Compatibility
rdfs:domain
/rdfs:range
or declaring these asowl:DatatypeProperty
).Implementation Notes
rdfs:isDefinedBy
IRIs point to the normative XSD 1.1 Part 2 facet sections.References
owl:withRestrictions
).Checklist
rdf:Property