On Relationships among Models, Meta Models and Ontologies Motoshi Saeki Tokyo Institute of Technology Haruhiko Kaiya Shinshu University Oct. 22, 2006, Portland
Motivation & Approach Meta Model: Abstract Syntax for DSL Semantics of Models and Meta Models? Semantic Consistency & Completeness Using Ontology: Thesaurus + Inference Rules Semantic Concept: Common Words where everybody can have the same and unique interpretation in a domain Structure (Concepts and Relationships) : Thesaurus mechanisms to infer/calculate the semantic properties on the ontology
Domain Ontology: Example Specifying semantics of a specific area, e.g. Lift Control System, Insurance Business, etc. Using Class Diagram Word = Class Relationship = Association
Basic Idea CD A E B cause Model Domain Ontology (thesaurus part only) aaa bbb semantic mapping
Basic Idea CD A E B cause Model Domain Ontology (thesaurus part only) aaa bbb semantic mapping "A causes C" on the Domain Ontology
Basic Idea CD A E B cause Model Domain Ontology (thesaurus part only) aaa ccc bbb semantic mapping "aaa causes ccc" for semantic consistency Adding ccc Finding Semantic Inconsistency and Incompleteness Inference on the structure of the ontology
Model v.s. Domain Ontology LiftDoor Scheduler 1: request 2: up 3: arrived 4: open Model
Model v.s. Domain Ontology Door > Lift > Doors > Lifts > Close > Move > Stop > Open > next LiftDoor Scheduler 1: request 2: up 3: arrived 4: open Model Domain Ontology next : Temporal order of execution
Model v.s. Domain Ontology Door > Lift > Doors > Lifts > Close > Move > Stop > Open > next LiftDoor Scheduler 1: request 2: up 3: arrived 4: open Model Domain Ontology semantic mapping
Model v.s. Domain Ontology Door > Lift > Doors > Lifts > Close > Move > Stop > Open > next LiftDoor Scheduler 1: request 2: up 3: arrived 4: open Model Domain Ontology semantic mapping ? Inference of causality Model: up causes arrived causes open Ontology: Move next Stop next Open Stop missing!
Meta Model v.s. Meta Model Ontology Object Message sendreceive Data carry Meta Model of Sequence Diagram
Meta Model v.s. Meta Model Ontology manipulate Object Message sendreceive AssociationClass source destination FunctionData consume produce State describe Object abstraction describe Event associate change-from change-to participate next Data carry Meta Model of Sequence Diagram Meta Model Ontology
Meta Model v.s. Meta Model Ontology manipulate Object Message sendreceive AssociationClass source destination FunctionData consume produce State describe Object abstraction describe Event associate change-from change-to participate next Data carry Meta Model of Sequence Diagram Meta Model Ontology semantic mapping
Meta Model v.s. Meta Model Ontology manipulate Object Message sendreceive AssociationClass source destination FunctionData consume produce State describe Object abstraction describe Event associate change-from change-to participate next Data carry Meta Model of Sequence Diagram Meta Model Ontology semantic mapping ? Meta Model: Message carry Data, Message ? Message Ontology: Event associate Data, Event next Event Next missing
Meta Model v.s. Meta Model Ontology manipulate Object Message sendreceive cause AssociationClass source destination FunctionData consume produce State describe Object abstraction describe Event associate change-from change-to participate next Data carry Meta Model of Sequence Diagram Meta Model Ontology Adding "cause" Semantic Quality = 6/7
Syntactic Domain Semantic Domain semantic mapping instantiation Meta Model Model Domain Ontology Meta Model Ontology Inference Rule#2 Inference Rule#1 M1 Layer (in MOF) M2 Layer (in MOF) Relationships
Summary & Future Work Providing Semantics for Models and Meta Models using Ontologies How faithfully a model and a meta model reflect their ontologies? Deviations from Ontologies represent semantic inconsistency and incompleteness Future Application Semantic Quality Measurement for Models and Meta Models (DSL) Elaborating a Meta Model Ontology Reasoning Properties on Models and Meta Models Automated Tool for Reasoning, Calculating,...