Upload
cleopatra-allen
View
216
Download
2
Embed Size (px)
Citation preview
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 Scenario1—Integrated MOF Repository
A Model-Driven Semantic Web 3
Metadata Management Scenario 2—Federated MOF Repositories
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 : Stringbalance : Money
Customer<<BusinessEntity>>
socialSecurityNum : Stringname : Stringaddress : String
1..n
1
+account
1..n
+customer1
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) : voidpre: --There must be sufficient funds in the checking account to support the transfer fromAcct.balance >= amountpre: --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 - amountpost: --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)
MOF/XMI Based Tooling (e.g. Semantic Web Eclipse Plug-In)
OWL-XMI Bridge
OWL-XMI Bridge
Native Semantic WebOntology Development
Tool
Native Semantic WebOntology Development
Tool
Generic UML Modeling Tool
Generic UML Modeling Tool
XMI OWL Document
XMI OWL DocumentNative
OWL Document
Native OWL Document
UML ModelUsing UML Profile
UML ModelUsing UML Profile
UML-OWL Bridge
UML-OWL Bridge
GenericUML Model
GenericUML 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)
MOF/XMI Based Tooling (e.g. Semantic Web Eclipse Plug-In)
OWL-XMI Bridge
OWL-XMI Bridge
Native Semantic WebOntology Development
Tool
Native Semantic WebOntology Development
Tool
Generic UML Modeling Tool
Generic UML Modeling Tool
XMI OWL Document
XMI OWL DocumentNative
OWL Document
Native OWL Document
UML ModelUsing UML Profile
UML ModelUsing UML Profile
UML-OWL Bridge
UML-OWL Bridge
GenericUML Model
GenericUML Model
A B C
Means tool A outputs B, and B serves as input to tool C.
ER ModelER Model
ER ToolER Tool
ER-OWL Bridge
ER-OWL Bridge
A Model-Driven Semantic Web 12
Metamodel Contents
• Model of abstract syntax– Defines a domain of conforming abstract
syntax trees
OWLMetamodel
OWLMetamodel
Abstract Syntax
OWLOntology
OWLOntology
Abstract Syntax Tree
= conforms to
SCLMetamodel
SCLMetamodel
Abstract Syntax
SCLExpression
SCLExpression
Abstract Syntax Tree
A Model-Driven Semantic Web 13
Part of the SCL Abstract Syntax
CommentedTerm
comment : String
SequenceVariable
Term
1
0..1
1
0..1
Application
0..1
0..1
0..1
0..1
0..*
0..1
+functionPositionTerm0..*{ordered}
0..1
1
0..1
+additonalTerm1
0..1
Name
string : String
'('quotedstring S term S? ')' '(' S? term S termseq S? ')'
termseq ::= (term S?)* seqvar?term ::= name | '(' S? term S termseq S? ')' | '('quotedstring S term S? ')'
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 MetamodelODM 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 MetamodelDL Core Metamodel
UML MetamodelUML Metamodel
Means bi-directional mapping
OWL/RDF/S MetamodelOWL/RDF/S Metamodel
ER MetamodelER Metamodel Topic Maps MetamodelTopic 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