A Tutorial on: Metamodel Standardization & MOF (For SC32) 32N1764 May 26, 2008 Hajime Horiuchi Tokyo International University Leader of MFI Project, ISO/IEC JTC1 SC32WG2 “Metadata DownUnder”: 11th Open Forum on Metadata Registries Sydney, NSW Australia Sharing and advancing knowledge and experience about standards, technologies and implementations. Topics • • • • Model and Metamodel in general MOF1.4 (ISO/IEC19502) UML2.0 and MOF2.0 Standard Metamodel – MOF compliant CWM, SPEM, ODM, MFI Sharing and advancing knowledge and experience about standards, technologies and implementations. 2 General:: META HIERARCHY Sharing and advancing knowledge and experience about standards, technologies and implementations. 3 Four layered Meta Hierarchy came from IRDS M-Objects IRDS: Information Resource Dictionary System (ISO/IEC 10728) Attribute Entity MOF :Meta Object Facility, OMG Attribute Name Address Name IRDD Level Entity IRD Level Address J.Doe Sydney J. Smith New York H. Hori Tokyo IR Level Sharing and advancing knowledge and experience about standards, technologies and implementations. 4 Meta Hierarchy Concept Concept was defined by ISO/IEC 10728 (IRDS) Meta-Meta data SQL IRDD Inherited by MOF M3 Metamodel M2 To describe Column , Table Meta data IRD Data Element Column, Table M1 Meta Model Object Concept (Meta Object) Object Model Model Describe Describe Value Meta-Meta Model Object Concept Representation Mechanism Mo Concept Note: ISO/IEC11179 did not aware of 4 level Meta hierarchy. Sharing and advancing knowledge and experience about standards, technologies and implementations. 5 Problems of Multi level metamodel • “Diversity of meta concept” Problem • “Ambiguous Classification” Problem • “Replication of concept” problem – Shallow Instantiation – Deep Instantiation Colin Aktinson, Essence of Multilevel Metamodeling (UML2001) Sharing and advancing knowledge and experience about standards, technologies and implementations. 6 Diversity of the Meta Hierarchy Concept • • • • Type and Instance Category or Grouping Aggregation Template (Stereotype) Sharing and advancing knowledge and experience about standards, technologies and implementations. 7 Diversity of Meta Concept Type Type instantiation Instances Base model grouping Sub type Description describe Anything Template Apply Realization Abstract Syntax Base-Variant expression Customized Expression Sharing and advancing knowledge and experience about standards, technologies and implementations. 8 Replication of Concept A particular instance “Pochi” Class Pet Dog Animal Instance Instance of instance Essence of Multilevel Memamodeling: Colin Aktinson and Thomas K¨uhne Sharing and advancing knowledge and experience about standards, technologies and implementations. 9 Shallow & Deep Instantiation UML & MOF Shallow Instantiation M3 MetaMeta Model Deep Instantiation Object concept Mechanism Object concept Mechanism instantiate M2 Meta Model instantiate Object concept Object concept Object concept Object concept M1 M0 Model Object property Instances Object property Object property Instances Instances Object property Object property instantiate Instances Sharing and advancing knowledge and experience about standards, technologies and implementations. 10 Even in MFO 1.4 MOF core M3 Level MOF 1.4 MOF Model Sharing and advancing knowledge and experience about standards, technologies and implementations. 11 M3 MOF UML2.0 Core Package M2 UMM Metamodel CWM:Object Model CWM ebXML BPSS instantiate CWM: SQL Metamodel Healthcare Model M1 Business Information M0 Layer Business Documents HER definition HER Instances Sharing and advancing knowledge and experience about standards, technologies and implementations. 12 Model relationship in MFI (ISO/IEC 19763) M3 level Y W Super - Sub Z Type Instance Syntax Expression X M2 level V Base -Variant M1 level Sharing and advancing knowledge and experience about standards, technologies and implementations. 13 How to Register a model ISO/IEC 19763-2 : Metamodel framework for interoperability: Part 2: Core Model Upper Model •Type and Instance •Super and Sub Governs •Base and Variant •Abstract Syntax and Expression Target Model To be Registered Sharing and advancing knowledge and experience about standards, technologies and implementations. 14 MOF M3 Base-Variant UML2.0 Core Package M2 UMM Metamodel BPSS CWM:Object Model CWM: SQL Metamodel Healthcare Model Abstract SyntaxExpression M1 Business Information M0 Business Documents HER definition instantiate HER Instances Sharing and advancing knowledge and experience about standards, technologies and implementations. 15 Something Similar to Metamodel Sharing and advancing knowledge and experience about standards, technologies and implementations. Something similar to metamodel • • • • Stereotype UML Profile Architecture Models Model Patterns Design Pattern Analysis Pattern They are not metamodel, but comrades to share a same dream of the model sharing. They can be subjects of the International Standardizations. Sharing and advancing knowledge and experience about standards, technologies and implementations. 17 UML Profiles • Not metamodel • UML Profile: A set of Stereotypes and Tag Values customized for particular domain modeling <<Customer>> Stereotype M1 Layer <<Customer>> Cust ID Cust Name ClassInstance Sharing and advancing knowledge and experience about standards, technologies and implementations. 18 Published UML Profiles • OMG UML profile for CORBA UML profile for EDOC UML profile for EAI UML profile for MARTE (Real Time Embedded System) UML Profile for Modeling QoS and Fault Tolerance Characteristics and Mechanisms SysML (UML Extension) • ISO/IEC JTC1 SC7 UML Profile for RM-ODP • UN/CEFACT UML profile for CCTS Sharing and advancing knowledge and experience about standards, technologies and implementations. 19 Catalog of OMG Domain Specifications • • • • • • • • • • • • • • • • • • • • • Air Traffic Control Application Management and System Monitoring (AMSM) for CMS Systems Audio / Visual Streams Bibliographic Query Service Bimolecular Sequence Analysis (BSA) Business Motivation Model (BMM) Business Process Definition Metamodel (BPDM) Business Process Maturity Model (BPMM) Chemical Structure and Access Representation (CSAR) Life Sciences Identifiers Computer Aided Design (CAD) Services Data Acquisition from Industrial Systems (DAIS) Gene Expression Historical Data Acquisition from Industrial Systems (HDAIS) Laboratory Equipment Control Interface Specification (LECIS) Metamodel for the Federal Transition Framework (FTF) OMG Systems Modeling Language (OMG SysML) Product Data Management (PDM) Enablers Robotic Technology Component (RTC) Telecom Service & Access Subscription (TSAS) Sharing and advancing knowledge and experience about standards, technologies and implementations. 20 etc. MOF1.4 (ISO/IEC 19502 ):: MOF (META OBJECT FACILITY) Sharing and advancing knowledge and experience about standards, technologies and implementations. 21 What is MOF The Meta-Object Facility (MOF) is the OMG's adopted technology for defining metadata and representing it as CORBA objects using UML. The MOF 1.3 specification was finalized in September 1999 (OMG document ad/99-09-05). The MOF 1.4 specification was submitted to ISO/IEC/JTC1 SC32 by PAS process in 2004 . It has been approved by PAS DIS ballot last December in 2004. (ISO/IEC DIS 19502). A MOF metamodel defines the abstract syntax of the metadata in the MOF representation of a model. The MOF model itself describes the abstract syntax for representing Sharing and advancing knowledge and experience about standards, technologies and implementations. 22 What is MOF (Basic Concept) • A model which describe an object concept. It is called “the MOF model”. • It become available by inheriting the MOF model to materialize uniformed and reusable objects and relationships among them • The MOF model is considered to be situated at the M3(Meta-Meta) layer. Sharing and advancing knowledge and experience about standards, technologies and implementations. 23 MOF Metamodel Architecture Type Instance Type Instance Sharing and advancing knowledge and experience about standards, technologies and implementations. 24 4 Layer Metamodel Architecture Layer Description Examples MetaClass, Metametamodel Foundation for a Metamodeling Architecture. MetaAttribute, Defining the language to describe MetaOperation metamodels Metamodel An Instance of a metametamodel. Class, Attribute, Defining the language to describe Operation, models. Component Model An Instance of Metamodel. Defining a language to describe the information object domain. Product, Unit Price, Customer, Sale, Detail User Objects (User Data) An Instance of a Model. Defines specific information Domain <Chair>, <Desk>, $100, $200 Sharing and advancing knowledge and experience about standards, technologies and implementations. 25 The relationship between metamodel and model Sharing and advancing knowledge and experience about standards, technologies and implementations. 26 UML metamodel in the 4 Layers Sharing and advancing knowledge and expeence about standards, technologies and implementations. 27 Basic Idea: How to define an Object Reality M0 Layer Set: Employees of company A emp # class Name 0800101 Adam Smith 0800102 Jon Due object instance 0800103 Hajime Hori Class Emp={ people | people working for company A} Sharing and advancing knowledge and experience about standards, technologies and implementations. 28 Object Concept and Metamodel M1 Layer M2 Layer Class emp Class Class name emp#: name: attribute enrolment() operation Attribute operation Class has Attributes and operations Sharing and advancing knowledge and experience about standards, technologies and implementations. 29 Overview of M3 Layer ModelElement Feature Attribute * Operation Classifier Interface Class Sharing and advancing knowledge and experience about standards, technologies and implementations. 30 Core portion of MOF Every classifier : •is Generalizable, •has Namespace . A Namespace is consisted by ModleElement. And •All classifier are governed by a ModleElement • Some Classifier might be typed by TypedElement Sharing and advancing knowledge and experience about standards, technologies and implementations. 31 Feature in MOF Every class has attributes and operations as Feature Sharing and advancing knowledge and experience about standards, technologies and implementations. 32 TypedElement Classifier typed by TypedElement is Class, Association or Data Type . Then, TypedElement characterize a classifier. Sharing and advancing knowledge and experience about standards, technologies and implementations. 33 Data Type Sharing and advancing knowledge and experience about standards, technologies and implementations. 34 Association Association between class Sharing and advancing knowledge and experience about standards, technologies and implementations. 35 Class Association: A MOF Association defines a class of links between MOF objects. Derivedness, Changeability, Contents A MOF Class defines the type of an object rather than its implementation Supertypes, Abstract, Singleton, Contents . Attribute A MOF object may have a number of Attributes. Name,type, scope,mmultiplicity, derivedness, changeability Operation Association End name,type,multiplicity aggregation A MOF object can have a number of operations Parameter list, result, exception list Association References: Multiplicity The end's multiplicity constrains the number of links that may involve one object at one end. It also specifies whether the links have a partial order. A MOF object may defined to be “aware” of being in a relationship with other objects via an Association. Name,referenced Association End, changeability Sharing and advancing knowledge and experience about standards, technologies and implementations. 36 The MOF Model The MOF Model is based on the concepts of object relationship modeling. The three kinds of building blocks for a metainformation model are Objects (described by MOF Classes), Links that connect objects (described by MOF Associations), Data values (described by CORBA IDL types). Instances of these constructs are organized as MOF Packages. CORBA(IDL) Sharing and advancing knowledge and experience about standards, technologies and implementations. 37 MOF1.4 MOF model (M3 Layer) ModelElement Namespace Constraint TypedElement Tag Import Feature Generalizabl eElement Constant BehavioralF eature Package Association StructuralF eature TypeAlias Parameter AssociationEnd Classifier Datatype Class Operation Exception Attribute Reference Sharing and advancing knowledge and experience about standards, technologies and implementations. 38 MOF1.4 Metamodel: MOF Class Class Name: This is an identifier which obeys the CORBA syntax rules. Attributes: A MOF object may have a number of Attributes. A MOF Attribute definition has the following components: name, type, scope, multiplicity, derivedness, changeability Operations A MOF object can have a number of operations (in addition to any implicit operations for accessing and updating attribute values and association links). These are defined by the following components: parameter list, result, exception list Association References: A MOF object may defined to be "aware" of being in a relationship with other objects via an Association. This awareness is expressed as an Association Reference, and results in link navigation and update operations being made available in the MOF object's interface. An Association Reference has the following components: name, referenced association End, changeability Supertypes: An abstract MOF Class is defined so that other Classes may inherit from it. The MOF does not support creation of instances of an abstract Class. Singleton, A singleton MOF Class is one for which only one instance may exist. Contents A MOF Class is a "container" for its component features; i.e. any Attributes, Operations and Association References. It may also contain MOF definitions of CORBA types (e.g. typedefs) and Exceptions. 39 MOF1.4 Metamodel: MOF Associations Defines a class of links between MOF objects. Links are always binary and directed; i.e. each one links from one MOF object to one MOF object. Class Name: This is an identifier which obeys the CORBA syntax rules. Association Ends: Each MOF Association has precisely two Ends with the following components: name,type,multiplicity, aggregation Derivedness: May be defined to be derivable from other information in a model. For example, one can define "substitutability" as a derived relationship between two instances of a given Class. Changeability: May be defined so that links cannot be explicitly added or removed. This only makes sense for a derived association. Contents: A MOF association is a "container" for its Association Ends. Sharing and advancing knowledge and experience about standards, technologies and implementations. 40 MOF1.4 Metamodel: MOF Packages serve as the unit of modularisation and reuse of meta-information models. "instances" of Packages act as collection objects for schemas of related meta-information. Name: This is an identifier that satisfies the CORBA IDL syntax rules. Contents: A MOF Package is a "container" for a Classes, Associations and other Packages as well as MOF definitions of CORBA types and exceptions. Imports: A MOF Package's imports list defines a set of other MOF Packages whose components may be re-used by components defined within the Package. Supertypes: A MOF Package's supertypes list defines a set of other MOF Packages whose components form a part of the Package. Sharing and advancing knowledge and experience about standards, technologies and implementations. 41 MOF1.4:: XMI(ISO/IEC19503) Sharing and advancing knowledge and experience about standards, technologies and implementations. 42 MOF・XMI MOF Is a generic framework for describing and representing meta-information in an CORBA-based environment. Defines an IDL mapping which allows models expressed using MOF Model constructs to be translated into interfaces CORBA-based meta-information services. CORBA(IDL) Generate IDLs from metamodel written by MOF IDLs are interfaces for the repository to store metamodels. Generate IDLs from UML metamodel XMI(XML metamodel Interchange) A set of XML schema for transforming MOF based metamodels into XML schemas, that is for encoding and decoding MOF based metadata. Sharing and advancing knowledge and experience about standards, technologies and implementations. 43 MOF/XMI (XML Model Interchange) MOF Spec Layer Example XMI M 3 Meta-meta model MOF M 2 MetaModel UML Metamodel, IDL Metamodel CWM Metamodel … MetaClass(“Class”, [MetaAttr(“name”,String), MetaAttr(“Attributes”,List<”Attribute”>)]) MetaClass(“Attribute”,…) XML DTD UML Models IDL Models Class(“StockQuote”, [Attribute(“company”, String), Attribute(“price”,FixedPoint)] … XML M 1 M 0 Model Information Instance(data) SotckQuote(“Sunbeam Harvesters”,98.77) StockQuote(“Ace Taxi CabLtd”,12.32) … <!ELEMENT Class (name,Attribute*)> <Class>StockQuote <Attribute>company</Attribute> <Attribute>price</Attribute> </Class> 7 Sharing and advancing knowledge and experience about standards, technologies and implementations. 44 Sample UML model to be Interchanged Element ModelElement name:Name Feature ownerScope:ScopeKind visibility:VisibilityKind Parameter defaultValue:Expression kind:ParameterDirectionKind Classifier +type +parameter BehavioralFeature isQuery:Boolean Sharing and advancing knowledge and experience about standards, technologies and implementations. 45 Sample DTD Sharing and advancing knowledge and experience about standards, technologies and implementations. 46 XML Statement (Behavioral Feature) <BehavioralFeature> <ModelElement.name>create</ModelElement.name> Class Window +create(size:Rectangle) -show( ) <Feature.ownerScope>classifier</Feature.ownerScop e> <Feature.visibility>public</Feature.visibility> <BehavioralFeature.isQuery>false </ BehavioralFeature.isQuery> <BehavioralFeature.parameter> <Parameter> <ModelElement.name>size</ModelElement.name> <Parameter.type>Rectangle</Parameter.type> </Parameter> </BehavioralFeature.parameter> </BehavioralFeature> Sharing and advancing knowledge and experience about standards, technologies and implementations. 47 OMG Standards & ISO Standards • • • • • UML 1.5 (ISO/IEC 19501: 2003) MOF1.4 (ISO/IEC 19502: 2005) XMI (ISO/IEC 19503:2005) SPEM(ISO/IEC27474) CWM (ISO/IEC DIS 19504 ) •UML2.0 •MOF2.0 •ODM • BSVR •SysML •IMM SC7 SC32 SC32 SC7 SC32 Expected to be submitted by PAS Sharing and advancing knowledge and experience about standards, technologies and implementations. 48 High Resolution Modeling Facility for MDA UML2.0 AND MOF2.0 Sharing and advancing knowledge and experience about standards, technologies and implementations. 49 Don’t call it “Wine” Wine Water + alcohol + grape essence + mold +…. H2O + CH3CH(OH)CH3 + ….. Atomic periodic table Sharing and advancing knowledge and experience about standards, technologies and implementations. 50 So Many Cores SuperStructure Infrastructure Core Core But, It is very much High Resolution Sharing and advancing knowledge and experience about standards, technologies and implementations. 51 Major changes in the UML at UML2.0 • Metamodeling Facilities in MOF and UML were Integrated as the Infrastructure Library (MOF model still exist) • Composite Structure • UML Profile Mechanism • Power Type • Little changes in the diagrams Sharing and advancing knowledge and experience about standards, technologies and implementations. 52 Before UML2.0 Meta Model Modeling MOF model MOF 1.4 UML Metamodel UML 1.5 UML Metamodel Domain Model Modeling UML 1.5 Sharing and advancing knowledge and experience about standards, technologies and implementations. 53 UML 2.0 Infrastructure Specification Overall Structure Use to describe Use as parts Infrastructure Library Superstructure Specification MOF Core Abstract Syntax Expression Structure Behavior Supplement OCL Spec. DI Spec. Sharing and advancing knowledge and experience about standards, technologies and implementations. 54 Meta level concept in UML2.0 & MOF2.0 • Multiple levels still used • No rigid structure to the Four Layer • The meta layer could be extended to any level more than two, relatively • However, Type and Instance should be within two level (Level-pair) • The deep instantiation could be available with the Reflection capability of the MOF Sharing and advancing knowledge and experience about standards, technologies and implementations. 55 Composition Structure Sharing and advancing knowledge and experience about standards, technologies and implementations. 56 Composite Structure example customer Customer * * order order * * Order Details OrderDetails(*) * * 1 Item(*) * 1 Item Sharing and advancing knowledge and experience about standards, technologies and implementations. 57 From the User View Point Domain Metamodel MOF I-Lib UML Infra structure UML Super structure Domain Model Modeling Tool DI OCL Sharing and advancing knowledge and experience about standards, technologies and implementations. 58 The Core of Cores: UML 2.0 Infrastructure Infrastructure Library 59 Infrastructure Library – Contents InfrastructureLibrary PrimitiveTypes (Integer, String, Boolean…) «import» «import» «import» Abstractions (Grab-bag of fine-grain OO modeling primitives/mix-ins) Basic (Simple forms of basic OO modeling concepts: Class, Operation, Package, etc.) Constructs (Sophisticated forms of OO modeling concepts) «import» Profiles (Extensibility mechanisms) Sharing and advancing knowledge and experience about standards, technologies and implementations. 60 UML Profile in UML 2.x Profiles package is owned by the Infrastructure Library package. Sharing and advancing knowledge and experience about standards, technologies and implementations. 61 Power Type • Power Type of UML (UML2.0 Superstructure, Section 7.2) • Power Set: Power Set P(S):= {A: a set | A ⊆ S } Example; S={a, b, c} … n elements. P= {φ, a, b, c, (a, b), (a, c), (b, c), (a, b, c)} Number of elements in P = 2n Dangerous !! Sharing and advancing knowledge and experience about standards, technologies and implementations. 62 Power Type Jim Odell(1994), Essence of Multilevel Memamodeling: Colin Aktinson and Thomas K¨uhne Sharing and advancing knowledge and experience about standards, technologies and implementations. Another Discussion: “Power type pattern” on SPEM (ISO/IEC27474) Cesar Gonzalez Perez Sharing and advancing knowledge and experience about standards, technologies and implementations. 64 UML2.0 Superstructure, Abstract Syntax Sharing and advancing knowledge and experience about standards, technologies and implementations. 65 Contents of the Power Type Package M3 level Sharing and advancing knowledge and experience about standards, technologies and implementations. 66 Power type example M1 level UML 2.0 Superstructure Specification Sharing and advancing knowledge and experience about standards, technologies and implementations. 67 Possibility of the problems by Power type M3 Object concept Mechanism Power Type Package instantiate M2 Object concept instantiate Object concept Object concept Object concept Object concept Power Type instantiate instantiate M1 Object property Object property Object property Object property M0 object object object object Object property object Object property object Sharing and advancing knowledge and experience about standards, technologies and implementations. Object property object 68 UML2.0:: MOF 2.0 Sharing and advancing knowledge and experience about standards, technologies and implementations. 69 MOF2.0 in UML2.0 MOF 2.0 use UML Infrastructure Library Define a metalanguage kernel that can define (bootstrap) UML and also be reused to define other OMG MDA metamodels (e.g., MOF, CWM, ODM) Provide more powerful mechanisms to customize UML Allow users to define language dialects for platforms (e.g., J2EE, .NET) and domains (e.g., ebusiness, finance, etc.) Sharing and advancing knowledge and experience about standards, technologies and implementations. 70 Infrastructure Library – Usage InfrastructureLibrary «import» «import» Constructs Basic «merge» … PrimitiveTypes «import» «import» «merge» MOF EMOF «merge» CMOF … Sharing and advancing knowledge and experience about standards, technologies and implementations. 71 Difference of EMOF & CMOF UML2.0 Infrastructure:: Infrastructure Library:: core Rich constructs for OO modeling EMOF e.g. association, Package, . . CMOF 72 EMOF Classes Sharing and advancing knowledge and experience about standards, technologies and implementations. 73 Constructs merged from Core Sharing and advancing knowledge and experience about standards, technologies and implementations. 74 EMOF (Essential MOF) Essential MOF is the subset of MOF that closely corresponds to the facilities found in OOPLs and XML. The value of Essential MOF is that it provides a straightforward framework for mapping MOF models to implementations such as JMI and XMI for simple metamodels. A primary goal of EMOF is to allow simple metamodels to be defined using simple concepts reuse the UML2 Infrastructure. The EMOF Model imports two packages from MOF. Identity Reflection Sharing and advancing knowledge and experience about standards, technologies and implementations. 75 CMOF: Complete MOF Model The CMOF Model is the metamodel used to specify other metamodels such as UML2. It is built from the Core of UML 2. The Model package does not define any classes of its own. Rather, it imports packages that together define basic modeling capabilities. Sharing and advancing knowledge and experience about standards, technologies and implementations. 76 What are brought MOF Model (Meta-metamodel) MOF EMOF «merge» CMOF … MOF Capability Reflection Identification Extension Sharing and advancing knowledge and experience about standards, technologies and implementations. 77 Example of Reflection Reflection Element SemanticDomain getMetaClass(): Class containar(): Element equals(element:object ) Boolean get (property: Property): Object set (property: Property, value: object) Unset (property: Property) +object ObjectInstance 1 <<instantiate>> Factory Model Repository Create (metaClass: Class): Element 1 +entry <<use>> Identifier URIExtent uri(object: Element) string Element (uri: String) : Element Client * 1..* RepositoryEntry url : string Client can access a object specified by an URI through the reflection package Sharing and advancing knowledge and experience about standards, technologies and implementations. 78 MOF Model Constraint by OCL [C-1] MustBeContainedUnlessPackage format1: MUST_BE_CONTAINED_UNLESS_PACKAGE format2: must_be_contained_unless_package evaluation policy : deferred description: A ModelElement that is not a Package must have a container. context ModelElement inv: not self.oclIsTypeOf(Package) implies self.container -> size = 1 Sharing and advancing knowledge and experience about standards, technologies and implementations. 79 Semantic Domain in CMOF Add more functional capabilities for the modeling Sharing and advancing knowledge and experience about standards, technologies and implementations. 80 Standard Metamodels:: MOF BASED METAMODELS Sharing and advancing knowledge and experience about standards, technologies and implementations. 81 MOF based Metamodel Standards • ISO/IEC JTC1 SC32 – MFI (ISO/IEC 19763-n) • OMG + ISO – ISO/IEC JTC1 SC32 CWM (ISO/IEC DIS 19504) – ISO/IEC JTC1 SC7 SPEM (ISO/IEC27474) • OMG standards expected to be PAS submission ODM (Ontology Definition Metamodel) SBVR (Semantic Business Vocabulary Rules) MOF2QVT(Query View Transformation) RSA (Reusable Asset Specification) IMM(Information Management Metamodel) Etc. Sharing and advancing knowledge and experience about standards, technologies and implementations. 82 Metamodel Framework for Interoperability (MFI) ISO/IEC19763-1 Reference model ISO/IEC19763-2 Core model ISO/IEC19763-3 Metamodel for ontology registration ISO/IEC19763-4 Metamodel for model mapping ISO/IEC WD19763-5 Process model registration Sharing and advancing knowledge and experience about standards, technologies and implementations. 83 Objectives for MFI Core Registering sharable modeling constructs Metamodel Model Ontology Profiles Pattern Classification for components From viewpoint of “Sign-Concept-Instances” Selection of instance sets for a particular purpose usage Assembly (Composition) of registered components Plug and Play with selection Core Framework for registering Ontology and Model Mapping Sharing and advancing knowledge and experience about standards, technologies and implementations. 84 ISO/IEC 19763-2 : Core Model (Overview) ModelDomain conformance 0..* +specified by ModelSign nameSpace sign +having 1 +generally expressed by +expressing +specified by 0..* 1 Administered Item data_identifier : String version : String 1..* ModelSelection condition ModelClassifier model type +concept usage type xmi text 1 0..1 attachment type attachment 1 +governed by 1 ModelConcept modelType 1..* +governing 1..* +selected by 1 +selecting ModelInstances componentType format 1 0..* ModelComponent +referent Sharing and advancing knowledge and experience about standards, technologies and implementations. 85 MOF and MFI Core MOF M3 Layer <<instanceOf>> <<instanceOf>> MDR-ByMOF <<instanceOf>> M2, M1, Layer ..,M-n MMF-Core Classifier <<use>> <<use>> <<reference>> Target <<reference>> ObjectByMOF <<use>> <<use>> <<reference>> <<use>> Target Models Level Pair Registry <<use>> Relationship <<use>> Sharing and advancing knowledge and experience about standards, technologies and implementations. 86 Common facility of MDR(ISO/IEC11179) MOF MFI-2 MFI Core model MDR standards ODM MFI-3 Metamodel for MDR(ISO/IEC11179) registration Metamodel for Ontology Registration Metamodel for Metamodel for DL Metamodel for OWL Administration Record Describe Data Elements Terminology Basic Classes Basic Relationship Any Ontology Ontology by ODM Sharing and advancing knowledge and experience about standards, technologies and implementations. 87 Standard Metamodels:: MOF BASED METAMODELS:: CWM : COMMON WAREHOUSE METAMODEL Sharing and advancing knowledge and experience about standards, technologies and implementations. 88 CWM (Common Warehouse Metamodel) • ISO/IEC DIS 19504 PAS DIS Balloting was closed on Dec.,25 2007. BRG (Ballot Resolution Group ) was formulated. • A set of metamodel for data resource models. • 19 metamodels; Sharing and advancing knowledge and experience about standards, technologies and implementations. 89 Why CWM is needed Application Application System Application System System Database Data File CSV, Record, Relation, Object Data Warehouse Multi dimensional data OLAP tools • Metamodel for CSV, Record • Metamodel for Multi dimensional data • Metamodel for transformation etc Sharing and advancing knowledge and experience about standards, technologies and implementations. 90 CWM Metamodels Sharing and advancing knowledge and experience about standards, technologies and implementations. 91 CWM Core metamodel Nothing but MOF model Sharing and advancing knowledge and experience about standards, technologies and implementations. 92 CWM: Relational Data model Sharing and advancing knowledge and experience about standards, technologies and implementations. 93 CWM: Relational data model CheckConstraint deferrability : DeferrabilityType +/constraint n +/constrainedElement {ordered} n n +/constraint ColumnSet +/owner ColumnSet 0..1 M2 Column Column precision : Integer +/feature scale : Integer isNullable : NullableType length : Integer n collationName : String {ordered} characterSetName : String / optionScopeColumnSet : NamedColumnSet / referencedTableType : SQLStructuredType +/structurealFeature n NamedColumnSet NamedColumnSet / optionScopeColumn : Column / type : SQLStructuredType usingTrigger : Trigger +sqlDistinctType View n Table isTemporary : Boolean temporaryScope : String / trigger : Trigger isSystem : Boolean M1 1 SQLDataType typeNumber : Integer SQLDistincType n {ordered} +/constrainedElement +/type SQLDistinctType length : Integer precision : Integer scale : Integer / sqlSimpleType : SQLSimpleType QueryColumnSet query : QueryEsxpression Table SQLDataType View isReadOnly : Boolean checkOptio : Boolean queryExpression : QueryExpression SQLSimpleType SQLSimpleType characterMaximumLength : Integer +sqlSimpleType characterOctetLength : Integer numericPrecison : Integer 1 numericPrecisionRadix : Integer numericScale : Integer dateTimePrecision : Integer NamedColumnSet ColumnSet Employee emp # Name Address 0800101 Adam Smith Table 0800102 Jon Due 0800103 Hajime Sharing and advancing knowledge and experienceHori about standards, technologies and implementations. 94 Metamodel for Record Sharing and advancing knowledge and experience about standards, technologies and implementations. 95 Recommendations & References Book: •D.Gasevic, D.Djuric, V. Devedzic : Model Driven Architecture and Ontology Development, Springer, 2006. ISBN-10: 3-540-32180-2 Paper or Presentation: •Bran Selic : Presentation on UML2.0 at OFMR2005, Berlin, •Colin Aktinson: Essence of Multilevel Metamodeling, UML2001, http://www.mcs.vuw.ac.nz/~tk/publications/papers/essence.pdf •C. Gonzalez-Perez: Supporting Situational Method Engineering with ISO/IEC 24744 and the Work Product Pool Approach Useful sites: • OMG Specifications: http://www.omg.org/spec/ • pUML : <<Google>> • Metamodel.com: <<Google>> Sharing and advancing knowledge and experience about standards, technologies and implementations. 96 THANK YOU FOR YOUR ATTENTION & ENDURANCE Sharing and advancing knowledge and experience about standards, technologies and implementations. 97