Semantic Recognition of Ontology Refactoring

Download Semantic Recognition of Ontology Refactoring

Post on 26-Jan-2015

104 views

Category:

Technology

2 download

Embed Size (px)

DESCRIPTION

 

TRANSCRIPT

<ul><li> 1. Web Science &amp; Technologies University of Koblenz Landau, GermanySemantic Recognition of OntologyRefactoring Gerd GrnerFernando Silva Parreiras Steffen StaabISWC2010, Shanghai</li></ul> <p> 2. Distributed Development of OntologiesOntologyOntologyOntology Version V1 Change Version V2 Change Version V3 Change ... Ontology Change Version V4Change...No change logs!WeSTGerd Grner ISWC 2010groener@uni-koblenz.de2 3. What has changed?ontology version Vontology version VCompare ?Recognize, analyze and explain!WeSTGerd Grner ISWC 2010groener@uni-koblenz.de3 4. AgendaProblem Description and Ontology RefactoringAnalyze and describe ChangesRecognize ChangesReasoning for Comparison of Ontology VersionsRefactoring RecognitionDiscussion and ConclusionWeSTGerd GrnerISWC 2010groener@uni-koblenz.de 4 5. Refactoring Scenarioontologyversion V ontology version V ChangeWeST Gerd GrnerISWC 2010 groener@uni-koblenz.de 5 6. Comparison: What has changed? ontology version V ontology version VEmployee PersonEmployee PersonEmployee department.DepartmentEmployee project.Project (d) Employee 1 SSN.string (a)Employee department.Department Person name.stringEmployee =1 SSN.string (d)Person 1 SSN.string (a)Person name.string Person contact.ContactData (a)Person address.string (d)ContactData telephone.string (a)Person telephone.string (d)ContactData address.string (a)Department project.Project (a) WeSTGerd GrnerISWC 2010 groener@uni-koblenz.de 6 7. Analyze and Describe ChangesObservation:Is the set of axioms (V and V) helpful to recognize changes?How can we communicate about changes?(domain knowledge, modeling details)Idea: Categorize Changes by RefactoringsWeST Gerd GrnerISWC 2010 groener@uni-koblenz.de 7 8. Refactoring Pattern 13 refactoring pattern Example: Extract ClassRefactoring PatternSome properties p1, , pn of class C should be extracted to a new class DRefactoringE.g., extract properties address and telephoneWeST Gerd GrnerISWC 2010 groener@uni-koblenz.de 8 9. Refactoring: Extract ClassV V Employee Person Employee department.DepartmentEmployee Person Employee 1 SSN.string (a)Employee project.Project (d)Employee department.DepartmentPerson name.stringEmployee =1 SSN.string (d) Person 1 SSN.string (a)Person name.string Person contact.ContactData (a)Person address.string (d)ContactData telephone.string (a)Person telephone.string (d)ContactData address.string (a) Department project.Project (a) WeSTGerd GrnerISWC 2010 groener@uni-koblenz.de 9 10. Refactoring: Pull-Up Property V VEmployee PersonEmployee PersonEmployee department.DepartmentEmployee project.Project (d) Employee 1 SSN.string (a)Employee department.Department Person name.stringEmployee =1 SSN.string (d)Person 1 SSN.string (a)Person name.stringPerson contact.ContactData (a)Person address.string (d) ContactData telephone.string (a)Person telephone.string (d) ContactData address.string (a)Department project.Project (a) WeST Gerd GrnerISWC 2010groener@uni-koblenz.de 10 11. Refactoring: Move Of Property V VEmployee PersonEmployee Person Employee department.DepartmentEmployee project.Project (d)Employee 1 SSN.string (a)Employee department.DepartmentPerson name.stringEmployee =1 SSN.string (d) Person 1 SSN.string (a)Person name.stringPerson contact.ContactData (a)Person address.string (d) ContactData telephone.string (a)Person telephone.string (d) ContactData address.string (a)Department project.Project (a) WeST Gerd GrnerISWC 2010groener@uni-koblenz.de 11 12. Recognition: Difficulties1. (syntactical) comparisonof axioms or triples in Vand V2. purely structuralcomparison Semantic comparisonWeSTGerd GrnerISWC 2010groener@uni-koblenz.de 12 13. AgendaProblem Motivation and Ontology RefactoringReasoning for Comparison of Ontology VersionsComparison ProblemSolution Combining Knowledge Bases Version ComparisonRefactoring RecognitionDiscussion and ConclusionWeSTGerd GrnerISWC 2010groener@uni-koblenz.de 13 14. The Comparison Problem V V Situation:Conceptual relations in each ontology (version)Same classes, e.g., PersonPerson address.string Person address.string ? Goal: Conceptual relation across versionsWeSTGerd GrnerISWC 2010groener@uni-koblenz.de 14 15. Comparison MethodsMatching: compare class and property names and typesStructural and semantic comparison: class subsumptionchecking to compare their extensions Joint reasoning on two ontology versions to identifyconceptual relationsProblems: How to connect them? How to compare them? WeST Gerd GrnerISWC 2010groener@uni-koblenz.de 15 16. Connecting two Versions1. Matching between classes2. Renaming of classes that appear in both versionsPerson1 Person2 3. Introduce a common superclassPerson1 PersonPerson2 Person4. Relax rangeContactData person . Person1 ContactData person . PersonWeST Gerd GrnerISWC 2010 groener@uni-koblenz.de 16 17. Comparison affected axiomsVariety of modeling principles in OWL Only some need to be considered:Property restrictions:Corresponding axioms: Person contact.ContactDataPerson address.stringContactData address.string Analyzes: Class expressions of property restrictionsWeST Gerd GrnerISWC 2010 groener@uni-koblenz.de 17 18. Comparison affected axioms (2)Sub- and superclasses:Corresponding axioms:Employee Person Employee PersonEmployee 1 SSN.string Employee =1 SSN.stringPerson 1 SSN.string Analyzes: Subclass axioms and property restrictions Only certain kinds of axioms are relevant! Next Step: Normalization to ease version comparisonWeST Gerd GrnerISWC 2010 groener@uni-koblenz.de 18 19. NormalizationAnalyze axioms of class definitions of class C: Conjunctive normal form of C: C1 Cn i = 1 n: C CiReduced conjunctive normal form: Flattened nested conjunctions: A (B C) A B C Normalized negation: D D is a named class B A and A B : A B AWeSTGerd GrnerISWC 2010groener@uni-koblenz.de 19 20. Reduced Conjunctive Normal Form Uniqueness of the normal form is reduced conjunctive normal form of C1 Cnfor each Ci one of the following condition holds: Ci is a named class Ci is a data type or object property restriction Ci is a complex class definition that is neither a named superclass of C nor a property restrictionWeSTGerd GrnerISWC 2010groener@uni-koblenz.de 20 21. Using the NormalizationExploit two results1. Only certain types of axioms are affected by the refactoring Other axioms can be neglected2. Representation in the normal formAxioms are covered by the normal form representation Uniqueness: class expressions C of C can be extractedi Each Ci of C subsumes C Analyze changes by comparing class expressions Ci of Cand C using subsumption checkingWeST Gerd GrnerISWC 2010 groener@uni-koblenz.de 21 22. Diff and Common AlgorithmDiff: Compute class expressions (superclasses) from C and C1. Class expressions of C in version V but not in VE.g.,For each class expression A of If the subsumption ( A C ) does not hold then Class expression A belongs to the difference2. Likewise the expressions of C in version V but not in V Difference is computed in two steps (invert V and V):Reduced conjunctive normal form applies to the class expressions of the resultWeST Gerd Grner ISWC 2010 groener@uni-koblenz.de22 23. AgendaProblem Motivation and Ontology RefactoringReasoning for Comparison of Ontology VersionsRefactoring RecognitionDiscussion and ConclusionWeSTGerd GrnerISWC 2010groener@uni-koblenz.de 23 24. Refactoring Recognition Each pattern: specification of differences for comparing two versions description of conditions on these differences Comparison algorithms: determining the different andcommon parts of a class in two versions Comparing class expressions of Using subsumption checking to test the conditions on the differencesWeSTGerd GrnerISWC 2010groener@uni-koblenz.de 24 25. Extract ClassV VDifference (C = Person):D2 = { address.string, D1 = { contact.ContactData } telephone.string }Extracted Class:RC = ContactData(range of contact.ContactData)Condition: ContactData address.string ContactData telephone.stringare inferred in VWeST Gerd Grner ISWC 2010 groener@uni-koblenz.de25 26. ConclusionDescribed Solution:Adopted 13 refactoring patterns and described the recognitionRealization:Class comparison using subsumption checking Connect versions (V and V are unaffected) Compare classes and class expressions of Only certain class expressions are relevant in the refactoringFuture Work:Consider further refactoring patternsWeST Gerd GrnerISWC 2010 groener@uni-koblenz.de 26 27. Thank You! Supported by: MOST-ProjectWeST Gerd GrnerISWC 2010 groener@uni-koblenz.de 27 </p>