RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules

Post on 18-Aug-2015

18 views 3 download

Tags:

Transcript of RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and SWRL Rules

User Extensible System to

Identify Problems in OWL

Ontologies and SWRL RulesJoão Paulo Orlando

Mark A. Musen

Dilvan A. Moreira

1

Summary

Introduction

MetaFOR ontology and Converter

Case study

Conclusion and future works

2

The problem

Survey about systems that identify problems/patterns/anomalies

Found deficiencies:

Predefined patterns

Manually evaluation

Use of the not familiar languages

3

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

Evaluation

Case study

Nine problems from the literature

Two user defined ones.

SWRL rules

5

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

Converter

Java and OWLAPI

7

Converter

8

Case study

Family Relationships Ontology

6 problems from the literature

2 created scenarios

SWRL was created to identify the problems/patterns/anomalies

9

Case study

1 - Circular properties problem:

Two inverse properties

The same or equivalent domain

The same or equivalent range

10

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

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

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

Case study

2 - Contradicting rules:

14

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

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

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

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

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

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

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

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

Case study

Two possible user scenarios - Useless Inheritance

hasDirectSuper(?a, ?b), hasDirectSuper(?b, ?c),

hasInstancesNumber(?b, 0), usedInRestrictions(?b, false) ->

ClassToEliminate(?b)

23

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

Case study

Two possible user scenarios - Class with low use

hasDirectSuper(?x, URI1_Classifications),

hasInstancesNumber(?x, ?xn), lessThan(?xn, 7) ->

ClassToAnalyze(?x)

25

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

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

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

Thanks

E-mail: orlando@icmc.usp.br

29