ruleml2015: user extensible system to identify problems in owl ontologies and swrl rules
TRANSCRIPT
![Page 1: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/1.jpg)
User Extensible System to
Identify Problems in OWL
Ontologies and SWRL RulesJoão Paulo Orlando
Mark A. Musen
Dilvan A. Moreira
1
![Page 2: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/2.jpg)
Summary
Introduction
MetaFOR ontology and Converter
Case study
Conclusion and future works
2
![Page 3: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/3.jpg)
The problem
Survey about systems that identify problems/patterns/anomalies
Found deficiencies:
Predefined patterns
Manually evaluation
Use of the not familiar languages
3
![Page 4: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/4.jpg)
Proposed work
We created a system that helps in the evaluation scenario:
METAdata description For Ontologies/ Rules (MetaFOR)
Converter
The user can write SWRL rules to find patterns
4
![Page 5: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/5.jpg)
Evaluation
Case study
Nine problems from the literature
Two user defined ones.
SWRL rules
5
![Page 6: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/6.jpg)
MetaFOR ontology
Contains information about the analyzed ontology elements
Elements types:
Entities (classes, proprieties)
Entity relationships (inverse, disjoint, equivalent)
Data relationships (number of instances)
6
![Page 7: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/7.jpg)
Converter
Java and OWLAPI
7
![Page 8: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/8.jpg)
Converter
8
![Page 9: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/9.jpg)
Case study
Family Relationships Ontology
6 problems from the literature
2 created scenarios
SWRL was created to identify the problems/patterns/anomalies
9
![Page 10: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/10.jpg)
Case study
1 - Circular properties problem:
Two inverse properties
The same or equivalent domain
The same or equivalent range
10
![Page 11: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/11.jpg)
Case study
1 - Circular properties problem:
In MetaFOR:
hasInverse(?p1, ?p2), hasDomain(?p1, ?d1), hasDomain(?p2, ?d2),
isEquivalent(?d1, ?d2), hasRange(?p1, ?r1), hasRange(?p2, ?r2),
isEquivalent(?r1, ?r2) ->
Circular_Properties(?p1), Circular_Properties(?p2)
In family ontology:
hasChild and hasParent (not a problem)
Add the atom: DifferentFrom(?d1, ?r1)
an important advantage of this system
11
![Page 12: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/12.jpg)
Case study
2 - Contradicting rules:
Two rules
The same or equivalent antecedent atoms
Two of their consequent atoms are disjoint
In family ontology:
Add:
Person(?x), Woman(?y), hasChild(?x, ?y) -> hasSon(?x, ?y)
Contradicting with:
Person(?x), Woman(?y), hasChild(?x, ?y) -> hasDaughter(?x, ?y)
12
![Page 13: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/13.jpg)
Case study
2 - Contradicting rules:
In MetaFOR:
sameAntecedents(?r1, ?r2),
hasConsequentAtom(?r1, ?c1),
hasConsequentAtom(?r2, ?c2),
hasPredicate(?c1, ?p1),
hasPredicate(?c2, ?p2),
isDisjoint(?p1, ?p2) ->
Contradicting_Rules(?r1)
13
![Page 14: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/14.jpg)
Case study
2 - Contradicting rules:
14
![Page 15: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/15.jpg)
Case study
3 - Partition error in taxonomy:
An incorrect combination of disjoint and derives relations happens
In family ontology:
Father is disjoint Mother
Added the class: FatherMother
In MetaFor
isDisjoint(?c1, ?c2), hasSub(?c1, ?cf),
hasSub(?c2, ?cf) ->
Partition_Error_in_Taxonomy(?cf)
15
![Page 16: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/16.jpg)
Case study
4 - Incompatible rule antecedent
There is an incompatibility among antecedent atoms
In family ontology:
hasChild is disjoint of hasParent
Added the rule with:
hasChild(?a, ?b) is incompatible with hasParent(?a, ?b)
16
![Page 17: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/17.jpg)
Case study
4 - Incompatible rule antecedent for properties
hasAntecedentAtom(?r, ?a1), hasAntecedentAtom(?r, ?a2),
hasPredicate(?a1, ?p1), hasPredicate(?a2, ?p2),
isDisjoint(?p1, ?p2),
hasFirstArgument(?a1, ?var1), hasFirstArgument(?a2, ?var1),
hasSecondArgument(?a1, ?var2), hasSecondArgument(?a2, ?var2)
->
Incompatible_Rule_Antecedent(?r)
17
![Page 18: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/18.jpg)
Case study
5 - Self-contradicting rule
One atom is in the antecedent and the other in the consequent
In family ontology:
Added the rule with:
hasChild(?a, ?b) in antecedent and
hasParent(?a, ?b) in consequent
18
![Page 19: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/19.jpg)
Case study
5 - Self-contradicting rule
hasAntecedentAtom(?r, ?a1), hasConsequentAtom(?r, ?a2),
hasPredicate(?a1, ?p1), hasPredicate(?a2, ?p2),
isDisjoint(?p1, ?p2),
hasFirstArgument(?a1, ?var1), hasFirstArgument(?a2, ?var1),
hasSecondArgument(?a1, ?var2), hasSecondArgument(?a2, ?var2)
->
Self_Contradicting_Rule(?r)
19
![Page 20: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/20.jpg)
Case study
6 - Multiple functional properties
Functional properties can only have one value
The user can define a minimum or a maximum cardinality restriction that is
greater than 1
In FRO:
Added the functional object property hasMaritalStatus
Maximum cardinality restriction equal 2
20
![Page 21: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/21.jpg)
Case study
6 - Multiple functional properties
FunctionalObjectProperty(?x), hasCardinality(?x, ?c),
MaxCardinality(?c),
hasCardinalityNumber(?c, 2) ->
Multiple_Functional_Properties(?x)
More generic:
Change:
hasCardinalityNumber(?c, ?cn), greaterThan(?cn, 2)
21
![Page 22: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/22.jpg)
Case study
Two possible user scenarios - Useless Inheritance
Found an ontology for a domain
Evaluated, added all instances, created rules to classify
Analyzed the ontology and the inferences made
The user wanted:
Find classes/properties that are not used in instances or in restriction and that are in a
subclass or sub property cascade.
22
![Page 23: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/23.jpg)
Case study
Two possible user scenarios - Useless Inheritance
hasDirectSuper(?a, ?b), hasDirectSuper(?b, ?c),
hasInstancesNumber(?b, 0), usedInRestrictions(?b, false) ->
ClassToEliminate(?b)
23
![Page 24: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/24.jpg)
Case study
Two possible user scenarios - Class with low use
A user built and evaluated his own ontology, adding instances and creating
rules to classify instances in different classes
He wants to analyze the inference results
The user wants to know which classes have less than 7 instances
The classes that the user is interested in are subclasses of Classifications
24
![Page 25: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/25.jpg)
Case study
Two possible user scenarios - Class with low use
hasDirectSuper(?x, URI1_Classifications),
hasInstancesNumber(?x, ?xn), lessThan(?xn, 7) ->
ClassToAnalyze(?x)
25
![Page 26: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/26.jpg)
Conclusion
A technique to find problems that occur in ontologies and rules was created
This technique relies in an ontology that represents information (metadata)
about OWL ontologies
Once an ontology is in this new format, rules can be applied to it to find
problems or usage patterns
26
![Page 27: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/27.jpg)
Conclusion
Advantages:
The use of OWL and SWRL, two popular languages among ontologists, to identify
patterns/problems in ontologies.
The fact that users can expand the system themselves creating new rules to
identify patterns they are interested in.
27
![Page 28: RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules](https://reader034.vdocuments.net/reader034/viewer/2022052701/55d2b2f7bb61ebdc5b8b4788/html5/thumbnails/28.jpg)
Future works
We have performed experiments in order to test this system using a set of
real world ontologies
such as the ones available at Bioportal
Another important direction will be to provide visualization for the reported
problems/patterns
so users can more easily find solutions to them.
28