Comments (5)
Hi constnick,
thanks as usual for the attention to the library and for your detailed reports!
This is an error of the reasoner, which should not consider blank properties during the execution of this specific rule: I'll patch this rule, after the patch you should not see any inferences coming from this rule. I think you should try instead the "InverseOfEntailment" rule, which reverses object assertions by exploiting owl:inverseOf relations between object properties. I'll also check this one in order to see if it is smart enough to detect the expected inference. I'll also patch this, in case it doesn't work.
Regards,
Marco
from owlsharp.
Checked-in fixes in bd56416:
- Discard blank properties during "PropertyEntailment" reasoner rule, so that it will not crash anymore when encountering blank candidate properties coming from OWL2-full anonymous inline property expressions
- Recognize OWL2-full anonymous inline property expressions during owl:inverseOf computation, so that "InverseOfEntailment" reasoner rule will be able to infer "ex:iJunior ex:DescendantOf ex:iMajor"
from owlsharp.
Hi @constnick,
as you are an expert ontologist, can you kindly explain me the purpose of the syntax:
ex:ParentOf rdfs:subPropertyOf [ owl:inverseOf ex:DescendantOf ] .
What is the advantage against an explicit statement:
ex:ParentOf owl:inverseOf ex:DescendantOf
Can this also exist in equivalency way:
ex:ParentOf owl:equivalentProperty [ owl:inverseOf ex:DescendantOf ] .
Thanks,
Marco
from owlsharp.
ex:ParentOf owl:inverseOf ex:DescendantOf
— it is a wrong assertion within the model.
The inverse of DescendantOf
is something like AncestorOf
, and ParentOf
is the subproperty of it.
Of course we can create the inverse property explicitly, but it is usually inconvenient to create inverse of every property for possible rare usage.
from owlsharp.
Thanks for the clarification.
I checked on Protege with Pellet and HermiT reasoners emitting "ex:iJunior ex:DescendantOf ex:iMajor" inference. I confirm that now our rule named "InverseOfEntailment" is compliant. Expect the updated version soon.
Regards,
Marco
from owlsharp.
Related Issues (20)
- Add support for modeling literal enumerate classes HOT 1
- Add support for exporting ontologies without including inferences
- Incorrect detection of OWL2-Full anonymous inline property expressions on restrictions
- Functional properties, SameAs inference, validation HOT 8
- Also provide reasoner rule for inverse functional entailment HOT 1
- Add validator rule for checking owl:Thing and owl:Nothing consistency HOT 1
- Add validator rule for checking owl:TopObjectProperty and owl:BottomObjectProperty consistency HOT 1
- Provide support for temporal reasoning HOT 1
- Reorganize internals to host SWRL as extension to the OWL core HOT 1
- SKOS extension should conform to our standard architecture (like SWRL, GEO and TIME)
- Provide support for SKOS reasoning HOT 1
- Complete SKOS validator with remaining rules
- Add support for temporal validation
- Add ability to import ontologies HOT 1
- Modeling support for "Negative Type" statement HOT 7
- Add reasoner rule for enhanced TBOX entailments
- Validation with cardinality restriction HOT 3
- Add ability to query an ontology with SPARQL
- typo in the user guide HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from owlsharp.