Naam An Ontology-Based Metalanguage with Explicit Instantiation Alfons Laarman Committee: Dr. Ivan Kurtev Dr. Ir. Klaas van den Berg Arda Goknil, Msc.

Slides:



Advertisements
Similar presentations
Major Influences on the Design of ODM Dan Chang (IBM) Elisa Kendall (Sandpiper) MDSW 2004.
Advertisements

1 Copyright ©2007 Sandpiper Software, Inc. Vocabulary, Ontology & Specification Management at OMG Elisa Kendall Sandpiper Software
Issue 134 Metamodel for OWL 2 Peter Haase, Elisa Kendall, Boris Motik, Evan Wallace.
Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
June, 2006 The 11th CAiSE06 International Workshop on Exploring Modeling Methods in Systems Analysis and Design (EMMSAD06), Luxembourg Ontological.
CH-4 Ontologies, Querying and Data Integration. Introduction to RDF(S) RDF stands for Resource Description Framework. RDF is a standard for describing.
Meng Tian Extension in Domain Specific Code Generation with Ontology Based Aspect Weaving Supervisor: Julian Rathke
Modeling SPARK Systems with UML Xavier Sautejeau SigAda’05 © Sodius.
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
Formal Methods of Systems Specification Logical Specification of Hard- and Software Prof. Dr. Holger Schlingloff Institut für Informatik der.
The Knowledge Industry Survival Strategy (KISS) Tony Clark, Thames Valley University, London, UK Jorn Bettin, Sofismo, Switzerland.
XOWL – an Executable Modeling Language for Domain Experts Laurent WOUTERS (EADS Innovation Works, France) Marie-Pierre GERVAIS (Université Paris Ouest,
Train Control Language Teaching Computers Interlocking By: J. Endresen, E. Carlson, T. Moen1, K. J. Alme, Haugen, G. K. Olsen & A. Svendsen Synthesizing.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
A Formal Foundation Supporting MDD --- ZOOM Approach Hongming Liu Lizhang Qin 11/08/2003.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Foundations This chapter lays down the fundamental ideas and choices on which our approach is based. First, it identifies the needs of architects in the.
A novel approach to modeling Zvezdan Protić, Tom Verhoeff, Mark van den Brand.
Syntax & Semantic Introduction Organization of Language Description Abstract Syntax Formal Syntax The Way of Writing Grammars Formal Semantic.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
Model Transformations
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Ontology Development Kenneth Baclawski Northeastern University Harvard Medical School.
A Model-Driven Semantic Web David Frankel (David Frankel Consulting) Pat Hayes ( Institute for Human & Machine Cognition, University of West Florida) Elisa.
Architecture Ecosystem Foundation (AEF) RFP aesig/ Draft RFP Presentation June 2010.
OWL 2 Web Ontology Language. Topics Introduction to OWL Usage of OWL Problems with OWL 1 Solutions from OWL 2.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
Agenda 1. Introduction 2. Overview of SU-MoVal 3. OCL-based Model Validation 4. QVT-based Transformations 5. Demo of SU-MoVal 6. Conclusion and Future.
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
Ontology Transformations Laurent WOUTERS (EADS Innovation Works, France) Marie-Pierre GERVAIS (Université Paris Ouest, LIP6, France)
Diagram Definition A Case Study with the UML Class Diagram MoDELS 2011, Wellington, NZ By Maged Elaasar 1,2 (Presenter) and Yvan Labiche.
2004 Open Forum for eBusiness and Metadata Technology Standardization Metamodel Framework for Ontology Keqing He, Yixin Jing, Yangfan He State Key Laboratory.
UML Profile to Support Requirements Engineering with KAOS Presented by Chin-Yi Tsai.
Verification and Validation in the Context of Domain-Specific Modelling Janne Merilinna.
Ontology-Driven Software Development with Protégé and OWL Holger Knublauch Stanford Medical Informatics Model-Driven Semantic Web.
A MOF Metamodel & UML Profile for the Web Ontology Language (OWL) January 30, 2003 Elisa F. Kendall CEO & Founder (650)
Sheet 1 DocEng’03, Grenoble, November 2003 Model Driven Architecture based XML Processing Ivan Kurtev, Klaas van den Berg University of Twente, the Netherlands.
Toolbased Language Development J. Fischer, E. Holz, A. Prinz, M. Scheidgen.
Semantics for DSL Group Members: Ritu Arora, Diyang Chu, Zekai Demirezen, Jeff Gray, Jacob Gulotta, Luis Pedro, Arturo Sanchez, Greg Sullivan,Ximing Yu.
Reusable Specification of Non-functional Properties in DSLs Francisco Durán, Steffen Zschaler, and Javier Troya 28 September, 2012.
Issues in Ontology-based Information integration By Zhan Cui, Dean Jones and Paul O’Brien.
Description of Information Resources: RDF/RDFS (an Introduction)
All Presentation Material Copyright Eurostep Group AB ® A Meta-model of EXPRESS in UML for MOF and UML to EXPRESS David Price April 2002.
Requirements Analysis
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
WonderWeb. Ontology Infrastructure for the Semantic Web. IST Project Review Meeting, 11 th March, WP2: Tools Raphael Volz Universität.
OWL Web Ontology Language Summary IHan HSIAO (Sharon)
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Sheet 1 MDAFA 2003 A Synthesis-based Approach to Transformations in an MDA Software Development Process Ivan Kurtev, Klaas van den Berg University of Twente.
Sheet 1 Forum on Specification and Design Languages (FDL), Frankfurt, September 2003 UML to XML-Schema Transformation: a Case Study in Managing Alternative.
Sheet 1MDAFA2004 Linköping, June 2004 A Language for Model Transformations in the MOF Architecture Ivan Kurtev, Klaas van den Berg University of Twente,
Page 1 Hitachi Ltd. – FhI FOKUS TTCN-3 User Conference, June 2005 MDA based approach for generation of TTCN-3 test specifications Hideto Ogawa, Hitachi.
Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.
Semantics Paper page 1 Figures: Metamodelling and Semantics…
SysML v2 Formalism Requirements Formalism WG September 15, 2016.
Language = Syntax + Semantics + Vocabulary
SysML 2.0 Formalism Requirements and Potential Language Architectures
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
Syntactic Requirements
Web Ontology Language for Service (OWL-S)
Business Process Measures
Model-Driven Ontology Engineering
Implementing Language Extensions with Model Transformations
Chapter 4 Advanced Class Modeling
Evaluating Compuware OptimalJ as an MDA tool
Introduction.
Ivan Kurtev, Klaas van den Berg Software Engineering Group
Implementing Language Extensions with Model Transformations
Software Architecture & Design
Presentation transcript:

naam An Ontology-Based Metalanguage with Explicit Instantiation Alfons Laarman Committee: Dr. Ivan Kurtev Dr. Ir. Klaas van den Berg Arda Goknil, Msc

Overview Introduction –Title Problem Statement Approach The Metalanguage OGML Results Conclusion 2

Introduction (Title) An Ontology-Based Metalanguage with Explicit Instantiation Model Driven Engineering 3

Introduction (Ontology) Ontology is the study of existence Uses Observation & Logic Existential dependence & metaphysical realism 4

Introduction (Model Driven Engineering) In a model we capture the state of affairs in a domain of interest Instantiation / instanceOf A UML model: Models raise the level of abstraction in software development 5

Model transformation taken from OMG/MDA Guide 03 Introduction (Model Driven Engineering) Models can be used to automate software development 6

A model is expressed in a modeling language A modeling language consist of concrete syntax, abstract syntax and semantics A modeling language makes an ontological commitment A modeling language can be represented as model Introduction (Model Driven Engineering) 7

8

Modeling architecture General-purpose or domain-specific? Support for multiple modeling languages is desirable 9

Metamodeling is the practice of defining a modeling language A metalanguage is introduced to define Metamodels (MOF) Introduction (Model Driven Engineering) 10

Problem statement 11

Problem Statement Tradition modeling architectures do not provide sufficient support for metamodeling It lacks: Support for data translation uniform model handling 12

Problem Statement (the problems) data translation: uniform model handling: The OCL specification only supports UML and MOF 13 Taken from Kurtev 08

Problem Statement (an analysis) We found two sources of the problems: Multiple instanceOf relations (relativity) The expressiveness of the metalanguage is imprecise 14

Problem Statement (an analysis) Multiple instanceOf:Relativity: 15 UML Class MOF Object MOF Class

Problem Statement (an analysis) expressiveness of metalanguage: Guizzardi,Wand & Webber looked at the ontological faithfulness of UML and concluded that it suffers from: Construct excessiveness, overload and incompleteness MOF uses the same constructs as UML and is thus unsuitable to express the ontological commitment of modeling languages 16

Problem Statement (research questions) How to provide an uniform interpretation of the instanceOf relation in the whole modeling architecture? How to ensure precise and consistent definition of metamodels? 17

Approach 18

Define a metalanguage which can express the instantiation semantics Base the language constructs on Ontology Approach 19

The Metalanguage OGML 20 Ontology Grounded MetaLanguage

The Metalanguage: OGML Ontological Constructs 21

The Metalanguage: OGML Example Exercise. Express in OGML: 22

The Metalanguage: OGML 23 Example Language SimpleUML { SubstantialDefinition Class {... } DataTypeDefinition UMLDataType {... } MomentDefinition Attribute {... } ObjectDefinition Object {... } ObjectDefinition Literal {... } PropertyDefinition Slot {... }

The Metalanguage: OGML Ontological Relations 24

Example 25 The Metalanguage: OGML

26 The definition of instantiation semantics (with the use of OCL)

Example 27 The Metalanguage: OGML

28 Relations UMLInstanceOfDefinition { c : Class -> o : Object {... } when (not(c.isAbstract)) a : Attribute -> s : Slot {... }

Example 29 The Metalanguage: OGML

The Metalanguage: OGML Ontological Perspective Example 30

How to define the perspective in the metamodel? Ontology tells us about the nature of relations: each participant has its own view on the relation Attribute Function 31

The Metalanguage: OGML, Attribute function a : Attribute -> s : Slot { attributes { naming name <- a.name; valuing [a.lowerbound.. a.upperbound] s.value; typing a.type; } Example 32

Since OGML is a language to define languages, we can apply reflection What is the ontological commitment for the models? 33 The Metalanguage: OGML : Reflection SubstantialDefinition Definition { attribute name : "String"; } SubstantialDefinition "SubstantialDefinition" extends UniversalDefinition {} SubstantialDefinition "MomentDefinition" extends UniversalDefinition {} SubstantialDefinition "DataTypeDefinition" extends UniversalDefinition {} SubstantialDefinition IndividualDefinition extends Definition {} SubstantialDefinition "ObjectDefinition" extends IndividualDefinition {} SubstantialDefinition "PropertyDefinition" extends IndividualDefinition {} SubstantialDefinition LanguageDefinition { attribute definitions [*] : Definition, "Relations", "GeneralizationRelation"; }...

The Metalanguage: OGML, Reflection 34

35 The Metalanguage: OGML : Reflection Relations OGMLInstanceOfRelation { abstract Definition -> PropertiesElement {... } sd : UniversalDefinition-> su : InstantiatableElement {... } md : "MomentDefinition" -> mu : MomentUniversal {... } "PropertyDefinition"-> XObject {} "SubstantialDefinition" -> SubstantialUniversal {} "DataTypeDefinition“-> SubstantialUniversal {} "ObjectDefinition" -> XObject {} "Class" -> XObject {} "OGMLDataType" -> Literal {} InstanceOfRelation -> InstanceOfProperty {} ld : LanguageDefinition -> mm : MetaModel {... } a : Attribute -> p : Property {... } i : InherenceRelation -> p : Property {... } c : CharacterizationRelation -> p1 : Property {... } c : CharacterizationRelation -> p2 : Property {... } g : "GeneralizationRelation" -> p1 : Property {... } g : "GeneralizationRelation" -> p2 : Property {... } }

Results 36

Results To verify that OGML works we created a prototype of the language We conducted case studies and expressed different kinds of UML The OCL engine was used to show that models can be uniformly handled (navigated) We proved that models are instanceOf OGMLX 37

Results: Navigating N-ary Associations PlayerTeamYearsalary DavidsTWENTE KluivertTWENTE DavidsAJAX KluivertAJAX Player Davids played in team TWENTE during 1999 for the mere sum of $ Player Kluivert played in team TWENTE during 2000 for the mere sum of $ Player Davids played in team AJAX during 1997 for the mere sum of $ Player Kluivert played in team AJAX during 1998 for the mere sum of $ {UML | UMLMM!Player.allInstances()->collect(ps | ps.player->collect(ac | 'Player '+ ac.player.name +' played in team '+ ac.team.name + ' during '+ inYear.year +' for the mere sum of $'+ ac.salary)) ->iterate(row ; result: String = '' | result + row +'\n') }

39 Results: Navigating explicit relativeness {OGML| UMLM!Kluivert->first().attributes } {OGMLX| UMLM!Kluivert->first().properties }

OGML constructs are defined self-reflectively + InstanceOfDefinitions map OGML to OGMLX constructs = All models are instanceOf OGMLX OGMLX stores the ontological meaning of constructs! 40 The Metalanguage: OGML Proof of Uniform model representation

41 The Metalanguage: OGML Proof of Uniform model representation

Conclusion OGML can provide uniform handling of models as demonstrated with OCL explicit relativity OGML provides an explicit ontological commitment for metamodels and models (via OGMLX) Compared MOF and OWL we are closer to the OWL reification model but preserve more meaning of the constructs 42

Conclusion Did OGML trade expressiveness for uniform model handling? We only expressed a subset of UML, what about RDF, OWL, MOF? Can this support data translation? Future Work: investigate expressiveness Extend OGML with mereology, multiple instantiation 43