Add test to demonstrate owl:Axiom interpretations in inferencing#52
Add test to demonstrate owl:Axiom interpretations in inferencing#52ajnelson-nist wants to merge 2 commits intoRDFLib:masterfrom
Conversation
This patch adds one test to give the RDFLib OWL-RL project's expected
behavior.
From the OWL 2 Mapping to RDF document (cited in test), it appears that
Table 7, row 7, implies a class declaration axiom should be induced by a
populated `owl:Axiom` ("populated" meaning annotated{Source,Property,
Target} are all given), whether or not the referenced axiom is directly
asserted (written as a triple). The left column pattern contrasts with
Table 17, row 1, which specifies the triple must already be asserted (to
receive further annotations).
This patch runs up against an undefined behavior in the OWL-RDF mapping:
What should be deduced from an IRI that is an `owl:Axiom`? A subtle
detail throughout the document is `owl:Axiom` only appears in references
to blank nodes (`_:x`, rather than `*:x`).
A follow-on patch may be necessary to clarify decisions (and assertions)
around what may or may not be undefined behavior.
Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
|
Also, I'm aware this first version of the unit test fails. I currently think it hits unimplemented functionality in closure construction. |
|
Not an OWL expert, but I always have good luck asking at https://gitter.im/linkeddata/chat - so maybe that helps. |
|
I've been informed that if an RDF pattern does not match the OWL 2 Web Ontology Language Mapping to RDF Graphs, the RDF document is in OWL FULL. I would like to stay within OWL 2 DL semantics, so I will modify this PR to not step into that extended usage of |
A follow-on patch may be necessary to clarify closure behaviors. Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
|
I've updated the test, but I'm not sure if I placed one of the failure detectors right. An IRI-identified |
|
I will try find some time this week to review this. |
I've been inspecting
owl:Axiomfor potential use in a project. (What I'm trying to do is out of scope of this patch series, but the short of it is, I'm trying to almost but not entirely assert a triple, while remaining in OWL 2 DL. Subclassingowl:Axiomlooks like it might work, but reviewing the OWL 2 specs has left me spinning. It's not obvious to me whether this is a good idea or an explicit faux pas. If you know one way or the other offhand, I'd appreciate hearing it! Meanwhile, relevant to the RDFLib OWL-RL project, I may have found a bug.)I am having difficulty finding in the OWL specifications how
owl:Axiomis supposed to behave when its described triple is not already asserted(/present) in the graph. Would any of this repository's maintainers be able to help answer some of these questions, encoded in a unit test added in this patch series? (Patch 1 has a commit message providing further detail.)I appreciate some of this may be out of scope of RL-specific functionality, but it appears from Issues 33 and 35 that this repository is looking to slightly expand its scope beyond RL. Please let me know if there is a better venue for this line of questions.