Documents
Resources
Learning Center
Upload
Plans & pricing Sign in
Sign Out

A Model-Driven Semantic Web - Using Model Driven Architecture to

VIEWS: 7 PAGES: 18

									                    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)
                Metadata Management Scenario
                              1—Integrated MOF Repository




A Model-Driven Semantic Web                                 2
                Metadata Management Scenario
                              2—Federated MOF Repositories




A Model-Driven Semantic Web                                  3
                          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                                        4
                                  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                                        5
                          Business Information Model
                                                 <<BusinessEntity>>
                                                                     1..n
                                                          Account
                                                  id : String       +account
                                                 balance : Money
                                                                                               1
                                                                                               +customer
                                            {disjoint}
                                                                                    <<BusinessEntity>>
                                                                                         Customer
           <<DataType>>                                                           socialSecurityNum : String
             Decimal          <<BusinessEntity>>         <<BusinessEntity>>       name : String
                                 SavingsAccount           CheckingAccount         address : String
                              interestRate : Decimal     minBalance : Money




                                                         <<BusinessEntity>>
                                                         PreferredChecking




                                               context PreferredChecking inv:
             <<DataType>>
                Money                          --Cannot go below the minBalance

                                               balance >= minBalance



A Model-Driven Semantic Web                                                                                    6
                              Business Service Model

                                                 <<BusinessService>>
                                                     FundsXFer

         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                                                                                      7
                          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                          8
            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                      9
     Bridging the Semantic Web and MDA Worlds
 A         B          C                Generic UML
Means tool A outputs
                                       Modeling Tool
B, and B serves as
input to tool C.
                                 UML Model         Generic
                              Using UML Profile   UML Model

                                                                MOF/XMI Based
  Native Semantic Web                                         Tooling (e.g. Semantic
  Ontology Development                                        Web Eclipse Plug-In)
          Tool                           UML-OWL
                                          Bridge
                                                            XMI
            Native                                       OWL Document
          OWL Document

                                         OWL-XMI
                                          Bridge
A Model-Driven Semantic Web                                                            10
 Translating Entity Relationship Models to OWL
 A         B          C                Generic UML
Means tool A outputs
                                       Modeling Tool
B, and B serves as
input to tool C.
                                 UML Model         Generic
                              Using UML Profile   UML Model

                                                                MOF/XMI Based
  Native Semantic Web                                         Tooling (e.g. Semantic
  Ontology Development                                        Web Eclipse Plug-In)
          Tool                           UML-OWL
                                          Bridge
                                                            XMI
            Native                                       OWL Document
          OWL Document                                                        ER Tool

                                         OWL-XMI          ER-OWL
                                          Bridge                             ER Model
                                                           Bridge
A Model-Driven Semantic Web                                                             11
                              Metamodel Contents
         • Model of abstract syntax
                – Defines a domain of conforming abstract
                  syntax trees

                OWL                                   OWL
              Metamodel                              Ontology
           Abstract Syntax                       Abstract Syntax Tree

                                 = conforms to
                  SCL                                  SCL
                Metamodel                            Expression
            Abstract Syntax                      Abstract Syntax Tree



A Model-Driven Semantic Web                                             12
                     Part of the SCL Abstract Syntax




A Model-Driven Semantic Web                            13
             Representation of an Abstract Syntax
                             Tree




A Model-Driven Semantic Web                         14
      XMI: The MOF-XML Technology Mapping


                               ODM Metamodel
                               ODM Metamodel

                                Abstract Syntax


                                         Mapping




                              Concrete XML -Based
                              Concrete XML -Based
                                Syntax for ODM
                                Syntax for CWM
                                 (XML Schema)
                                  (XML DTD or
                                    Schema)


A Model-Driven Semantic Web                         15
           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                                                           16
                              The Core Metamodel
             Means bi-directional mapping


                                        UML Metamodel



         ER Metamodel                DL Core Metamodel   Topic Maps Metamodel



                                   OWL/RDF/S Metamodel




A Model-Driven Semantic Web                                                 17
                              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

A Model-Driven Semantic Web                              18

								
To top