Consistency Checking of Semantic Web Ontologies Kenneth Baclawski
Consistency Checking of Semantic Web Ontologies Kenneth Baclawski, Northeastern U. & VIS Mieczyslaw M. Kokar, Northeastern U. & VIS Richard Waldinger, SRI & Kestrel Paul A. Kogut, Lockheed Martin 1
Overview n n n Inconsistency UBOT Tools Cons. VISor Snark Conclusions Future directions 2
Consistency con • sis • ten • cy agreement with what has already been done or expressed; conformity with previous practice [Webster] • An inconsistent ontology means one part of the ontology does not agree with another • In logic: from P and not(P) can derive anything Inconsistency is a dangerous thing for autonomous agents! 3
Logical Consistency n Definition: there exists a non-trivial model of theory. If a theory is inconsistent then every logical statement can be proven true. n Our Opinion: n u u u One consistent ontology for Semantic Web – impossible Consistent subsets of a set of ontologies – but need to know when a given set is inconsistent – need warnings Every single ontology should be consistent – need checking 4
Inconsistent Ontology: Example (UML syntax) • Recursive combination of expressions • Elementary – constants, variables • Operation – includes operators (e. g. , +, *) • Example: (x + y + 5)*(z + 3)*(a + b) • Problem: • at least twice more Operations than Expressions (cardinality constraint) • more Expressions than Operations (sub. Class constraint) • #Expression #Operation 2*#Expression – inconsistency? • Operation – either empty or infinite! • Mistake: cardinality restrictions inverted (not uncommon) 5
What’s wrong with this ontology? 6
[Enzyme] [Protein] [Chemical] [Reaction]<[Enzyme] Thus Enzyme<Enzyme! 7 […] – class cardinality
UBOT - Ontology Engineering Tools DAML Ontology Engineer CRAVE UML GUI Consistency checking results DAML ontologies Consistency checking results XMI models UML DAML Translation DAML ontologies Consistency Reasoning Agent Cons. VISor DAML ontologies Bug. VISor Specware SNARK 8
Cons. VISor n n Input: URI for DAML ontology or annotation Processing: Prolog-based tool that checks ontologies against the DAML+OIL axiomatic semantic specification Output: list of error and warning messages Role: u u n help ontology engineers check ontologies help website developers check DAML annotations Cannot check consistency of the language (DAML) 9
Cons. VISor Architecture daml 20. pl DAML file Final Messages Modified daml 20. pl d 2 p p 2 d Prolog Messages 10
Num 1: ID Message 0034 The classes http: //quantlabs. com/vis/ont/vehicle. daml#Water. Craft and http: //quantlabs. com/vis/ont/vehicle. daml#Land. Vehicle were declared to be disjoint, but they both contain http: //quantlabs. com/vis/ont/vehicle. daml#avk 3379. 11
SNARK/Specware n Specware (from Kestrel Institute) Formal specifications u Based on category theory u n SNARK (from SRI) Theorem prover (resolution, paramodulation, special unification, sorts, procedural attachments, extensibility with Lisp) u But may not terminate (when ontology is consistent) u Can check consistency of the language specification! u 12
Example (SNARK) Checking Consistency of DAML Axiomatization Original axiom: (<=> (Type ? fp Functional. Property) (and (Type ? fp Property) Revised axiom (<=> (Type ? fp Functional. Property) (and (Type ? fp Property) (=> (and (Property. Value ? fp ? s ? v 1) (forall (? s ? v 1 ? v 2) (Property. Value ? fp ? s ? v 2)) (= ? v 1 ? v 2)))) (=> (and (Property. Value ? fp ? s ? v 1) (Property. Value ? fp ? s ? v 2)) (= ? v 1 ? v 2))))) • With the original axiom every property is functional • Consequently, since rdf: Bag is both rdfs: Class and rdf: Resource rdfs: Class = rdf: Resource 13
Checking Restriction w/SNARK n n n daml: Restriction was used to state that one can have only one father (see [1]) SNARK was able to prove that there is at least one father for everybody But could not prove that there are no more than one The problem was in the DAML specification of cardinality restriction Specification has been revised [1] www. daml. org/2001/03/daml+oil-walkthru. html 14
Conclusion n n n Inconsistencies are not desirable although not easy to avoid It’s better to identify them and then decide how to treat them rather than ignore Cons. VISor is available at http: //vis. home. mindspring. com for checking consistency of your DAML ontologies Can be used to find problems in an ontology, not necessarily inconsistencies and not necessarily all SNARK can find more, but will quit after some time SNARK can be used to check language specifications 15
Current/Future Work Ontology Or Annotated Source Errors Bug Locations Explanations DAML Axioms Cons. VISor Bug. VISor DAML Bug Ontology 16
Current/Future Work (cont. ) n n n Integrate Cons. VISor with Snark Investigate ways to address time complexity of consistency checking Make the integrated tool available on the web Analyze errors due to merging different ontologies Provide quantitative evidence of problems related to inconsistencies 17
- Slides: 17