Ontology translation: two approaches Xiangkui Yao OntoMorph: A Translation System for Symbolic...

Post on 22-Dec-2015

226 views 0 download

Transcript of Ontology translation: two approaches Xiangkui Yao OntoMorph: A Translation System for Symbolic...

Ontology translation: two approaches

Xiangkui Yao

OntoMorph: A Translation System for Symbolic Knowledge

By: Hans Chalupsky

Ontology Translation on the Semantic Web

By: Dejing Dou, Drew McDermott, Peishen Qi

Outline

• Motivation and Translation problem• Traditional Translation Methods• OntoMorph Approach (Chalupsky)• OntoMerge Approach (Dou etc.)• Discussion

Motivaton and Translation Problem

• Ontologies developed independently and thus very different, even in similar domain

• But distributed heterogeneous agent need to communicate

• Overcoming syntactic and semantic differences between ontologies – the problem of translation

Traditional Translation Methods

• Manual translation – Slow, tedious, error-prone ……

• Special-purpose (case by case) translators– Tedious, hard to maintain– Not generalizable

• Therefore, automated solutions needed

OntoMorph Approach – translation problem

– KBs describable in some linear syntax– sentence-based translation– single expression to whole KB– arbitrary semantic shift allowed

Source KBTarget KB

OntoMorph Approach – Dimensions of Translation

• KR language syntax• KR language expressivity• Modeling conventions• Model coverage and granularity• Representation paradigms• Inference system bias

OntoMorph Approach -- overview

• Syntactic rewriting– pattern-directed rewrite rules– sentence-level transformation of syntax trees– based on pattern matching

• Semantic rewriting– modulates syntactic rewriting– uses integrated PowerLoom KR system– based on (partial) semantic models– uses logical inference

OntoMorph Approach -- pattern language• Literals match themselves:foo, hans, 2, Variables match

complete subtrees:?x, ?bar, ?• Sequence variables match tree subsequences:

– (??x foo ??y), ??• Grouping (AND) matches a sequence of tokens: {a ?x c} • Alternatives (OR) match alternative token sequences:

– {a|(b ?x)|c d}• Optionals match optional token sequences:{a [b c]}• Repetition matches a pattern multiple times:

– {a|b}+, {a|b}*1-2• Binding input matched by a pattern to a variable:

– ?x := {a|(b ?y)|c} matched against (b d) binds ?x to (b d).

OntoMorph Approach –execution model

• Input stream token sequence apply rewrite rules using pattern-matching

• Rewrite Rule Syntaxpattern => result

• Rule Set Syntax (defruleset name pattern1 => result1

... patternN => resultN)

• Function calls and rule recursion– Rule sets and functions can be invoked recursively– Arguments are consumed and results pushed back

onto the input stream.

OntoMorph Approach –rewrite rule example(defruleset Term

(?op := {\+|-|\*|/} ?x ?y) => (?op <Term ?x> <Term ?y>) (1\+ ?x) => (\+ <Term ?x> 1) (1- ?x) => (- <Term ?x> 1) (square ?x) => (\* <Term ?x> <Term ?x>)?x => ?x )

(defruleset Condition(lt ?x ?y) => (negative? (- <Term ?x> <Term ?y>))(gt ?x ?y) => <Condition (lt ?y ?x)> )

Rule application:(rewrite (gt (/ (1+ M) N) (square N)) Condition)

=> (negative? (- (* N N) (/ (+ M 1) N)))

OntoMorph Approach -- Semantic Rewriting

• Syntactic rewriting limited:

(defruleset Conflate-Truck-Types ({Light-Truck | Heavy-Truck | ... } ?x) => (Truck ?x) )

• Solution: use semantic test

(defruleset Conflate-Truck-Types {(?class ?x) <ask (subset-of ?class Truck)>} => (Truck ?x) )

• Semantic rewriting via integration with PowerLoom KRS

OntoMorph Approach -- Two-Pass Translation Scheme

OntoMerge Approach -- overview

• Ontology Translation by Ontology merging and automated reasoning

• The merge of two related ontologies is obtained by taking the union of the terms and the axioms defining them, using XML namespaces to avoid name clashes.

• Bridging axioms are then added to relate the concepts in one ontology to the concepts in the other through the terms in the merge.

• The inference mechanism, a theorem prover optimized for the ontology-translation task, is called OntoEngine.

OntoMerge Approach -- translation vs mapping

• Translation problem is beyond mapping and merging

• ontology mapping: finding correspondence between the concepts of two ontologies

• ontology translation needs to know the mapping, then it can use the mapping rules

OntoMerge Approach – ontology translation of datasets

• Problem:– The problem for translating datasets can be expressed

abstractly thus: given a set of facts in one vocabulary (the source), infer the largest possible set of consequences in another (the target

• This process is broken into 2 phases:– Inference: working in a merged ontology that combines

all the symbols and axioms from both the source and target, draw inferences from source facts

– Projection: Retain conclusions that are expressed purely in the target vocabulary

OntoMerge Approach – ontology translation of datasets

• The merged ontology available, and contains bridging axioms that relate symbols in one ontology to symbols in the other

• Using skolemization and term-generating for merged ontologies.

OntoMerge Approach – ontology translation of datasets

• 3 parts:– Syntactic translation from the source notation

in a web language to an internal representation

– Semantic translation by inference using the internal notation

– Syntactic translation from the internal representation to the target web language

OntoMerge Approach – ontology translation of datasets

Experiment 1: OntoMerge translates a dataset with 7564 facts about the geography of Afghanistan using more than 10 ontologies into a dataset in the map ontology. 4611 facts are related to the geographic features of Afghanistan described by the geonames ontology and its airports described bythe airport ontology.

OntoMerge Approach – ontology translation of datasets

• Using the bridging axioms:

Translated into

OntoMerge Approach – ontology extension generation

• Given two related ontologies O1 and O2 and an extension (subontology) O1s of O1, construct the “corresponding” extension O2s

• Manually developing subontologies extended from existing ontology(s) is tedious at the Web scale

• Two scenarios– Subontologies and ontology updating

OntoMerge Approach – ontology extension generation

OntoMerge Approach – querying through different ontologies

• To answer a query may need multiple knowledge bases, using different ontologies from the ontology

• Without ontology translation, querying across these knowledge bases with different ontologies is very difficult.

OntoMerge Approach – querying through different ontologies

• a backward chaining reasoner is embedded

• PDDAML extended to handle syntax translation between DQL query and Web-PDDL

• Tools for query selection and query reformulation are embedded into OntoMerge

• One input query be the conjunction of some subqueries and each of them may be answered by different knowledge bases

Disuccion

• Term rewriting vs. theory-proving

• Questions?