180 likes | 339 Vues
This document presents a detailed introduction to ontology mapping patterns within the DIP/SEKT Combined Mediation Project. It highlights the importance of mapping patterns for interoperation among diverse ontologies, which often cover overlapping topics and exist in various languages. The text outlines the creation of an ontology mapping language, a mediation framework, and a library of mapping patterns. Furthermore, it discusses mapping complexities, including unidirectional and bidirectional mappings, and various types of mappings like class, attribute, and relation mappings.
E N D
Ontology Mapping Patterns doug foxvog 14 February 2005
Introduction • DIP/SEKT Combined Mediation Project • Why Mapping Patterns? • The Patterns • Language for Expressing Patterns • Summary
DIP/SEKT Combined Mediation Project • The main activities of the effort were: • Design ontology mapping language • Design a mediation framework - Develop an ontology mapping patterns library - Deal with inconsistencies arising during mapping • Mapping Patterns • SEKT d4.3.1 • Adrian, doug, Jos, Kerstin • Mapping Language and Framework • SEKT d4.4.2, DIP d1.5 • Adrian, doug, Francisco, Jos, Livia
Why Mapping Patterns? • Semantic Web will have many Ontologies • Ontologies will be in Different Languages • Ontologies will Cover Overlapping Topics • Mappings are Needed For Interoperation • Not all Mappings are Equivalence • Mapping Patterns for Common Inter-topic Relations Developed
What Needs to be Mapped? • Uni-directional vs. Bi-directional Mappings • Mappings between Same Type of Model • Individuals, Classes, Relations/Attributes • Mappings between Different Types • Complex Mappings • Class + Attribute : Class • Individual + Attribute Individual
Uni-directional vs. Bi-directional Mappings • Each Use of Mapping is Unidirectional • Mappings in Different Directions at Different Times • More Compact to use Declarative Bidirectional Mapping • Single Locus for Edits • Conceptually Cleaner
Mapping between Same Type of Models • Individual – Individual • Class – Class • Attribute – Attribute • Relation – Relation • String – String
Mapping between Different Types of Model • Class – Individual • Brand Name Product Treated as Individual • String – Individual/Class • Country Code, Course Number, Product, … • Attribute Value – Class • Female – Female Animal • Value in Different Units • Mile – Kilometer Conversion
Complex Mappings • Class or Relation Intersection • Class or Relation Union • Class + Attribute : Class • Woman + hasSpouse => Wife • Individual + Attribute Individual • UK + primeMinisterIs TonyBlair • Attribute Count : Attribute • Attribute Presence/Absence : Attribute/Class • Mapping by rule
The Mappings • Mappings among Classes • Mappings among Relations • Mappings between Individuals • Inter-Type Mappings • Attribute Value Mappings • Complex Mappings
Mappings among Classes • Equivalent Classes • O1:Person O2:Human • Subclass / Superclass • O1:Man => O2:HumanMale • Class Intersection • O1:Person & O1:MaleAnimal O2:HumanMale • Class Union • O1:ChildWithIrishMom U O1:ChildWithIrishDad O2:ChildWithIrishParent
Mappings among Relations • Equivalent Relations • Subrelation – Superrelation Mapping • Negated Relation Mapping • ~(O1:A(X1 X2)) => O2:B(Y1 Y2) • Inverted Argument (Sub)Relation • Relation Union / Intersection • Attribute Transitive Closure • tran(O1:parent) => O2:ancestor • Sub-Attribute Value
Mappings between Individuals • Equivalent Individuals • Functionally specified Individual • capitalOf + Mongolia UlaanBaatar • Relations among Classes which are Treated as Individuals not Explored
Inter-model Mappings • Class – Individual (uni- and bi- directional) • Inter-Attribute Value Mappings (whether Individual, Class, String, or Other) • subAttributeValueMapping( unidirectional O1:PhysOb.colour DeepGreen O2:Object:hasColor “Green”)
Complex Mappings • Subclass by/with Attribute Mapping • Subclass by/with Attribute Intersection • Subclass by/with Attribute Union • Subclass by/with Relation Domain/Range • Subclass by/with Domain/Range Exclusion • Subrelation by Domain/Range Restriction • O1:parentOf O1:FemaleAnimal O2:motherOf …
Complex Mappings (cont.) • Class – Relation Mapping • classRelationMapping(O1:Marriage O2:marriedTo O1:Marriage.husband O1:Marriage.wife O1:Marriage.startDate) • Mappings via Rule • relationMapping(bidirectional O1:distanceInMiles O2:distanceInKM equivalentIndividuals(X1 Y1) equivalentIndividuals(X2 Y2) milesToKM(X3 Y3))
Language for Expressing MappingsExamples • equivalentClassMapping • subclassMapping • equivalentClassIntersectionMapping • subclassUnionMapping • subclassByAttributeMapping • subclassByRuleMapping • equivalentRelationMapping • subrelationMapping • attributeTransitiveClosureMapping • attributeInverseMapping • equivalentAttributeValueMapping • equavalentRelationNegationMapping • subrelationByRuleMapping • equivalentIndividualMapping • classMapping(two-way A B) • classMapping(one-way A B) • classMapping(two-way and(A1…An) B) • classMapping(one-way or(A1…An) B) • classMapping(one-way A B attributeValueCondition(Att AttValue)) • classMapping(one-way A B {rule}) • relationMapping(two-way P Q) • relationMapping(one-way P Q) • attributeMapping(two-way P trans(Q)) • attributeMapping(two-way P inverse(Q)) • attributeValueMapping(two-way P I Q J) • relationMapping(two-way R not(S)) • relationMapping(one-way R S {rule}) • individualMapping(I J)
Summary • DIP/SECT Project Researched Ontology Mediation and Mapping • Set of Mapping Patterns were created. • Unidirectional and Bidirectional • Simple and Complex • Language Designed for Encoding Mapping Patterns