Using Model Driven Architecture to Manage Metadata - Sandpiper ...

hurtpotatocreekΑσφάλεια

5 Νοε 2013 (πριν από 3 χρόνια και 7 μήνες)

47 εμφανίσεις

A Model
-
Driven

Semantic Web

David Frankel

(David Frankel Consulting)

Pat Hayes

(
Institute for Human & Machine Cognition, University of West Florida)

Elisa Kendall

(Sandpiper Software)

Deborah McGuinness

(Knowledge Systems Laboratory, Stanford University)

A Model
-
Driven Semantic Web

2

Metadata Management Scenario

1

Integrated MOF Repository


MOF Repository
= MOF CORBA Interfaces
= MOF Java Interfaces (JMI)
= MOF XML (XMI) Documents
Workflow
Models
ER
Models
UML
Models
Semantic Web
Ontologies
Deployment
Models
= Import/Export
A Model
-
Driven Semantic Web

3

Metadata Management Scenario

2

Federated MOF Repositories


MOF Repository
UML
Models
Semantic Web
Ontologies

MOF Repository
UML
Models
Semantic Web
Ontologies

= MOF CORBA Interfaces
= MOF Java Interfaces (JMI)
= MOF XML (XMI) Documents
= Import/Export
A Model
-
Driven Semantic Web

4

MOF and the Semantic Web


MOF technology streamlines the
mechanics

of
managing models as XML documents, Java
objects, CORBA objects, etc.


Semantic Web technology is for
reasoning

about
resources


Reasons over models that describes the resources


MOF provides no help with reasoning


Semantic Web not focused on helping with
mechanics of managing models


Complementary technologies


Despite some overlap

A Model
-
Driven Semantic Web

5

Applications


Using ontology
-
based reasoning to:


Detect problematic financial transactions


Analyze complex business rules


Resolve multiple policy constraints in


Runtime applications management


Network management


While integrating with:


Pre
-
existing relational and OLAP data stores


Entity
-
relationship models


UML models


etc.

A Model
-
Driven Semantic Web

6

Business Information Model

context PreferredChecking inv:

--
Cannot go below the minBalance

balance >= minBalance

CheckingAccount

<<BusinessEntity>>

minBalance : Money

Account

<<BusinessEntity>>

id : String

balance : Money

Customer

<<BusinessEntity>>

socialSecurityNum : String

name : String

address : String

1..n

1

+account

1..n

+customer

1

PreferredChecking

<<BusinessEntity>>

{disjoint}

Money

<<DataType>>

SavingsAccount

<<BusinessEntity>>

interestRate : Decimal

Decimal

<<DataType>>

A Model
-
Driven Semantic Web

7

Business Service Model

FundsXFer

<<BusinessService>>

XFerFromChecking(in fromAcct : CheckingAccount, in toAcct : SavingsAccount, in amount : Money)

context FundsXFer::XFerFromChecking (fromAcct : CheckingAccount, toAcct : SavingsAccount) : void

pre:


--
There must be sufficient funds in the checking account to support the transfer


fromAcct.balance >= amount

pre:


--
The checking account and the savings account must belong to the same customer


fromAccount.customer = toAccount.customer

post:


--
The balance of the checking account is reduced from its orginal amount by the amount of the transfer


fromAcct.balance = fromAcct.balance@pre
-

amount

post:


--
The balance of the savings account is increased from its original amount by the amount of the transfer


toAcct.balance = toAcct.balance@pre + amount

A Model
-
Driven Semantic Web

8

UML and the Semantic Web


No established graphical notation for
Semantic Web languages


UML profiling is one approach


UML profiles for RDF, OWL, and Topic
Maps

A Model
-
Driven Semantic Web

9

Toward a Model
-
Driven Semantic Web


Submission team


IBM


Sandpiper Software


Gentleware


AT&T (Supporter)


DSTC


MOF metamodels models of


RDF/S


OWL


Simplified Common Logic


Topic Maps


Entity
-
Relationship


UML Profiles for RDF/S, OWL


Mappings


UML
-
OWL


(UML
-
RDF/S)


(UML
-
Topic Map)

A Model
-
Driven Semantic Web

10

Bridging the Semantic Web and MDA Worlds

MOF/XMI Based
Tooling (e.g. Semantic
Web Eclipse Plug
-
In)

OWL
-
XMI

Bridge

Native Semantic Web

Ontology Development

Tool

Generic UML

Modeling Tool

XMI

OWL Document

Native

OWL Document

UML Model

Using UML Profile

UML
-
OWL

Bridge

Generic

UML Model

A

B

C

Means tool A outputs
B, and B serves as
input to tool C.

A Model
-
Driven Semantic Web

11

Translating Entity Relationship Models to OWL

MOF/XMI Based
Tooling (e.g. Semantic
Web Eclipse Plug
-
In)

OWL
-
XMI

Bridge

Native Semantic Web

Ontology Development

Tool

Generic UML

Modeling Tool

XMI

OWL Document

Native

OWL Document

UML Model

Using UML Profile

UML
-
OWL

Bridge

Generic

UML Model

A

B

C

Means tool A outputs
B, and B serves as
input to tool C.

ER Model

ER Tool

ER
-
OWL

Bridge

A Model
-
Driven Semantic Web

12

Metamodel Contents


Model of abstract syntax


Defines a domain of conforming abstract
syntax trees


OWL

Metamodel

Abstract Syntax

OWL

Ontology

Abstract Syntax Tree

= conforms to

SCL

Metamodel

Abstract Syntax

SCL

Expression

Abstract Syntax Tree

A Model
-
Driven Semantic Web

13

Part of the SCL Abstract Syntax

A Model
-
Driven Semantic Web

14

Representation of an Abstract Syntax
Tree

functionPositionTerm
(married Jack Jill)
: Application
Married : Name
Jack : Name
Jill : Name
additionalTerm
additionalTerm
A Model
-
Driven Semantic Web

15

ODM Metamodel

ODM Metamodel

Concrete XML

-

Based

Syntax for CWM

(XML DTD or

Schema)

Concrete XML

-

Based

Syntax for ODM

(XML Schema)

Abstract Syntax

Mapping

XMI: The MOF
-
XML Technology Mapping


A Model
-
Driven Semantic Web

16

Corresponding Part of the XMI Schema


<xsd:complexType

name=
"Application"
>


<xsd:complexContent>


<xsd:extension

base=
"omgorg.odm.scl:Term"
>


<xsd:choice

maxOccurs=
"unbounded"

minOccurs=
"0"
>


<xsd:element

name=
"sequenceVariable"



type=
"omgorg.odm.scl:SequenceVariable"
/>


<xsd:element

name=
"functionPositionTerm"



type=
"omgorg.odm.scl:Term"
/>


<xsd:element

name=
"additonalTerm"



type=
"omgorg.odm.scl:Term"
/>


</xsd:choice>


</xsd:extension>


</xsd:complexContent>

A Model
-
Driven Semantic Web

17

The Core Metamodel

DL Core Metamodel

UML Metamodel

Means bi
-
directional mapping

OWL/RDF/S Metamodel

ER Metamodel

Topic Maps Metamodel

A Model
-
Driven Semantic Web

18

Synergy Summary


MOF’s model management facilities and the
Semantic Web’s reasoning capabilities are
separate, complementary concerns


The ability of Semantic Web reasoners to find
discrepancies in invariant rules, preconditions,
and postconditions, can add scalability to MDA’s
use of Design
-
by
-
Contract (DBC)


UML profiles can serve as graphical notations for
Semantic Web languages