1 context mediation in the semantic web context mediation in the semantic web: handling owl ontology...

26
1 Context Mediation in the Context Mediation in the Semantic Web Semantic Web: Handling OWL Ontology and Data Disparity through Context Interchange Philip Tan Singapore-MIT Alliance (SMA) Stuart Madnick (Presenter) MIT Sloan School of Management [email protected] Kian-Lee Tan Department of Computer Science, National University of Singapore SMA Computer Science (CS) – Technical Program SMA Computer Science (CS) – Technical Program 19-20 January 2005 19-20 January 2005

Upload: alexandrina-jenkins

Post on 13-Dec-2015

239 views

Category:

Documents


0 download

TRANSCRIPT

1

Context Mediation in the Context Mediation in the Semantic WebSemantic Web: Handling OWL Ontology and Data Disparity through Context Interchange

Philip TanSingapore-MIT Alliance (SMA)

Stuart Madnick (Presenter)MIT Sloan School of Management

[email protected]

Kian-Lee TanDepartment of Computer Science, National University of Singapore

SMA Computer Science (CS) – Technical ProgramSMA Computer Science (CS) – Technical Program19-20 January 200519-20 January 2005

2

Context Mediation Research and Semantic

Web Research

ContextMediationResearch

SemanticWeb Research

Focus on resolving semanticConflicts amongst Heterogeneous data sources

Focus on making the web semantically richer

Help resolve semanticheterogeneity in OWL/RDF/XML data

Provide a standard (OWL etc) for representingOntology-related knowledge

3

Some History COntext INterchange (COIN) system for

semantic interoperability among heterogeneous data sources (started around 1995) Uses COINL, based on FOL/Prolog, to model

semantic knowledge (application ontology and context modifiers)

Web Ontology Language (OWL) becomes W3C Recommendation for ontology publishing (2004)

4

Example of Context Mediation situation

. Company_Name

DAIMLER-BENZ AG

TotalAssets

565,9478

Company_Name

DAIMLER BENZ CORP 615,000,000

NetIncome

DAIMLER BENZ

Name

97,736,992

TotalSales

Worldscope

Disclosure

Datastream

Fig. 1. Multiple databases with similar data, but differing contexts Note: NetIncome (profit) exceeds TotalSales – Impressive !

(Issues: currency? Scale factor?)

5

“Unit-of-measure mixup tied to loss of $125Million Mars Orbiter”

“NASA’s Mars Climate Orbiter was lost because engineers did not make a simple conversion from English units to metric, an embarrassing lapse that sent the $125 million craft off course. . . .

. . . The navigators ( JPL ) assumed metric units of force per second, or newtons. In fact, the numbers were in pounds of force per second as supplied by Lockheed Martin ( the contractor ).”

Source: Kathy Sawyer, Boston Globe, October 1, 1999, page 1.

6

The Context Interchange Approach

ContextMediator

Source Receiver

ReceiverContext

ConversionLibraries

SourceContext

SharedOntologies

ContextTransformation

Context ManagementAdministrator

Concept: Length

Meters Feet f()meters feet

17

part length

Select partlengthFrom catalogWhere partno=“12AY”

55.25

F-logic: based on FOL, uses Prolog

7

Web Ontology Language (OWL)

W3C Recommendation status publish and share ontologies supporting advanced Web search software agents knowledge management

Three sublanguages Categorization for computational guarantees OWL Lite, OWL DL, OWL Full

8

OWL in Action GraduateStudents are Students with a

degree of either BA or BS <owl:Class rdf:ID="Student“/><owl:Class rdf:ID="GraduateStudent"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <owl:ObjectProperty rdf:about="#hasDegree"/> </owl:onProperty> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf rdf:resource="#Student"/> </owl:Class>

Class

Inheritance

Restriction definition

9

OWL in Action GraduateStudents are Students with a degree of either BA or BS

<owl:Class rdf:ID="Student“/><owl:Class rdf:ID="GraduateStudent"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <owl:ObjectProperty rdf:about="#hasDegree"/> </owl:onProperty>

<owl:someValuesFrom> <owl:Class> <owl:oneOf rdf:parseType="Collection"> <Degree rdf:ID="BA"/> <Degree rdf:ID="BS"/> </owl:oneOf> </owl:Class> </owl:someValuesFrom> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf rdf:resource="#Student"/> </owl:Class>

Or is it “AB” and “SB”?

Some Harvard degree abbreviations appear to be backwards because they follow the tradition of Latin degree names. The undergraduate degrees awarded by Harvard University are the A.B. and S.B. The A.B. is an abbreviation for the Latin name for the bachelor of arts (B.A.) degree "artium baccalaureus." The S.B., Latin for "scientiae baccalaureus," is the bachelor of science (B.S.).

10

Why not be explicit about context ?(i.e., include in data – DB or XML)

Picture of old lady or young lady ?

- Hard to anticipate need (why include currency, if everything is US dollars)

- Hard to get everyone to agree to same context

11

Data source . . . (how do you cite in a Journal article?)

12

Context Interchange in OWL

(COIN-OWL) Extend COIN Two sides of COIN

OWL as COIN’s application ontology representation benefits COIN

COIN as ‘meta-ontology’ for OWL ontology interoperability benefits OWL

Rule Markup (RuleML) Language basis for an integrated rule-markup approach specification for immediate rule interchange Hierarchical language subclasses

Datalog Hornlog

For brevity, COIN-OWL

13

Design Approach to Use OWL to Represent COIN Ontology

Preserve constraint programming engine in the eCOIN prototype

Layered architecture:1. Domain ontology modeled in OWL2. OWL ontology transformed to eCOIN Prolog3. Transformed ontology fetched to eCOIN

engine Minimal impact to existing

implementation

14

3-Tier Approach

ECOIN Context Mediation

System

ECOIN Context Mediation

System

Ontology Administrator

COIN-OWL

Ontology

ECOIN - Prolog

Program

Ontology Development & Editing

Automated Ontology

Conversion

Context Mediation and Query Processing

(unchanged)

(1)(2)(3)

15

Ontology Model Design Domain Model

Semantic types, modifiers, attributes Source Sets

Physical relations and data source Context Axioms

Context, modifier values, conversion functions Elevation Axioms

Semantic relations – mapping source sets to domain model

Context relations – mapping source sets to contexts

16

Domain and Context Model in COIN-OWL

<coin:Modifier rdf:ID="mod_scaleFactor"> <coin:ModifierName rdf:datatype="&xsd;string">scaleFactor</coin:ModifierName> <coin:ModifierTo rdf:resource="#basic"/> <coin:ModifierFrom rdf:resource="#companyFinancials"/></coin:Modifier>

<coin:Modifier rdf:ID="mod_currency"> <coin:ModifierName rdf:datatype="&xsd;string">currency</coin:ModifierName> <coin:ModifierTo rdf:resource="#currencyType"/> <coin:ModifierFrom rdf:resource="#companyFinancials"/></coin:Modifier>

<coin:SemanticType rdf:ID="companyFinancials"> <coin:Modifiers rdf:resource=”#mod_scaleFactor”></coin:Modifiers> <coin:Modifiers rdf:resource=”#mod_currency”></coin:Modifiers></coin:SemanticType>

17

Challenging area to using Semantic Web:

Modeling Conversion Functions

Previous (RDF/XML) work<coin:Ont_ModifierConversionFunction>convfunc|rule(cvt(companyFinancials, O, currency, Ctxt, Mvs, Vs, Mvt, Vt), (attr(O, fyEnding, FyDate), value(FyDate, Ctxt, DateValue), olsen_p(Fc, Tc, Rate, TxnDate), value(Fc, Ctxt, Mvs), value(Tc, Ctxt, Mvt), value(TxnDate, Ctxt, DateValue), value(Rate, Ctxt, Rv), Vt is Vs * Rv)).rule(month("Oct", 10), (true)). rule(month("Dec", 12), true)).|companyFinancials|currency</coin:Ont_ModifierConversionFunction>

18

…Conversion Functions Using RuleML Month name lookup:

rule(month("Jan", 01), (true)). <fact> <_head> <atom> <cterm> <_opc><ctor>rule</ctor></_opc> <cterm> <_opc><ctor>month</ctor></_opc> <ind>Jan</ind> <ind>01</ind> </cterm> <ind>true</ind> </cterm> </atom> </_head> </fact>

19

Domain Model

Context Axioms

Elevation Axioms

Source Sets

-Attributes : Attribute-Modifiers : Modifier

SemanticType

-AttributeName-AttributeFrom : SemanticType-AttributeTo : SemanticType

Attribute

-ModifierName-ModifierFrom : SemanticType-ModifierTo : SemanticType-ModifierValues

Modifier

0..1

*

0..1

*

-DataSource-RelationName-Type-Bindings-Operators-Columns

Relation

-ColumnName-DataType-ColumnIndex-AssociatedRelation

Column

1 1..*

-ContextName

Context

-ModifierContext : Context-ModifierObject : Modifier-ModifierSemanticType : SemanticType

ModifierValue

-ModifierStringValue-ModifierNumericValue

ModifierStaticValue

-ModifierDynamicValues : Attribute

ModifierDynamicValue

-ElevationContext : Context-SourceRelation : Relation-SemanticColumns : SemanticColumn

SemanticRelation

-SourceColumn : Column-TargetSemanticType : SemanticType-AssociatedSemanticRelation : SemanticRelation

SemanticColumn

-JoinSourceSemanticColumn : SemanticColumn-JoinValueContext : Context

JoinValue

-JoinTargetSemanticColumn : SemanticColumn

JoinValueColumn-JoinTargetString

JoinValueLiteral

-SourceSemanticColumn : SemanticColumn-TargetSemanticColumn : SemanticColumn-SourceAttribute : Attribute

SemanticAttribute

-JoinValues : JoinValue

ComplexSemanticAttribute

1 *

1

*

Master Plan of COIN Representation in OWL

20

COIN-OWL Development Platform

OWL Editor Protégé –extensible architecture, de facto pOWL – web-based development environment

Why Protégé? Easy to use Actively supported Plugins for visualization, diagram

Plugin for Protégé Input: COIN-OWL ontology in OWL, RuleML Output: eCOIN Prolog application ontology

Developed in Java 1.4, Protégé OWL API, XSLT

21

COIN-OWL Ontology

22

RuleML Conversion Functions

23

Generated eCOIN Prolog View

24

Conclusion OWL ontology model for COIN framework

OWL Lite RuleML

COIN-OWL prototype as reference implementation

Adoption of W3C standard reaches wider spectrum of audience

Opportunity to enhance Semantic Web

25

Future Work Investigate RuleML Lite, Semantic Web Rule

Language (SWRL) Tighter cohesiveness Reference to OWL ontology via rdf:resource

Address OWL ontology interoperability Problem similar to heterogeneous data

integration Use COIN for context mediation among

ontologies On-going extensions to COIN research

Addressing temporal and aggregational context

26

The 1805 Overture

In 1805, the Austrian and Russian Emperors agreed to join forces against Napoleon. The Russians said their forces would be in the field in Bavaria by Oct. 20.

The Austrian staff planned based on that date in the Gregorian calendar. Russia, however, used the ancient Julian calendar, which lagged 10 days behind.

The difference allowed Napoleon to surround Austrian General Mack's army at Ulm on Oct. 21, well before the Russian forces arrived.Source: David Chandler, The Campaigns of Napoleon, New York: MacMillan 1966, pg. 390.