iso/iec cd 19763-2 and wd19763-4 : core model and model mapping iso/iec jtc1/sc32/wg2 18-21 april...
TRANSCRIPT
ISO/IEC CD 19763-2 and WD19763-4 :
Core Model and Model Mapping
ISO/IEC JTC1/SC32/WG2 18-21 April 2005-Berlin, Germany
SC32/WG2 Japan(Kanrikogaku Ltd)
Masaharu Obayashi
MMF-2 Status
ISO/IEC 19763-2 Core model Information technology -- Framework for Metamodel
interoperability Part 2: Core model Progress status
WD 2003-11-06 SC32 N10651st CD 2004-02-04 SC32 N1086 (summary SC32 N1140)2nd CD 2004-11-19 SC32 N1186 (summary SC32 N1234)
Editor’s Draft for 3rd CD SC32WG2 Nxxxxdispositions
SC32WG2 Nxxxx for 1st CD 2004-02-04 SC32 N1086SC32WG2 Nxxxx for 2nd CD 2004-11-19 SC32 N1186
Feature of MMF Core Modeling Artifacts to be registered
Metamodel, Model, Value sets, Vocabulary, Template, Pattern etc.
UML (domain) profile including metamodel and modelArtifacts based on OMG ODM (Part3)Artifacts based on MOF QVT (part4) The other such as document, spreadsheet, XMLshcema etc.
Classification for componentsFrom viewpoint of “Sign-Concept-Instances”
Basic MetadataAdministered Item (from ISO/IEC 11179 MDR)
Selection of instance sets for a particular purpose usageAssembly (Composition) of registered componentsPlug and Play with selection
Core Framework for registering Ontology and Model Mapping
Changes at 2nd (draft) CD
1st CD reviewed and revised based on 1st CD comments and resolutions, also discussion with experts
Change the relationship to MDR and MOFAdministered Item from MDRAvoid direct inheritance from MOF (only use MOF/XMI)
Change the package structure Divide normative part and informative part Harmonize metamodel with Ontology (part 3) and
Model Mapping (part 4)
Changes at Editor’s draft 3rd CD
Editorial ChangesFully Follow the disposition of 1st CD ballot summaryReflect the comment from the OMG expertModified partially by the draft disposition of 2nd CD
ballot summary Metamodel Changes
Introduce Association TypeRefine the specification on the relationship between
ModelConcept and ModelInstances Add Examples
Add and replace Figures
Pattern :
Universe of Discourse
Modeling Constructs
Metametamodel
Stereotype :
Template:
MetaModel MetaModel
MetaModel
Modeling Facility
governing
governingM3
M2
M1
M0
ModelModel
ModelModel
Model
Object
Overview of Metamodel Framework
ProvinceCountry City
State CountyPrefecture
Political Boundary Model
Metamodel Example
ProvinceCountry City
State CountyPrefecture
PrefectureCountry Japan
City
to fudo ken shi choku son
renamingrefining
specifying
refining
Political Boundary Model
Base Model
Japan Local Boundary Model Variant Model
Set of Area in Region
Region in Global
Area
neighborhood
ProvinceCountry City
State CountyPrefecture
PrefectureCountry Japan
City
to fudo ken shi choku son
renamingrefining
specifying
refining
Political Boundary Model
Base Model
Japan Local Boundary Model Variant Model
Boundary Metamodel
Expression
Abstract Syntax
Metaclass-Class
NaraTokyo KyotoM0
M1
M3
M2
MOF
Base-Variant
Abstract Syntax-
Expression
KyotoTokyo
Vocabulary
Prefecture
To-do-fu-ken
Super-Sub
Vocabulary Example
Nara
To-do-fu-ken
Japan Area
Japan Region
Global Region
ProvinceCountry City
State CountyPrefecture
Political Boundary Model
Metamodel Example
ProvinceCountry City
State CountyPrefecture
PrefectureCountry Japan
City
to fudo ken shi choku son
renamingrefining
specifying
refining
Political Boundary Model
Base Model
Japan Local Boundary Model Variant Model
Tokyo
Nara Kyoto
To-do-fu-ken
Prefecture
Area
Region
Vocabulary
Global Region
Boundary
Japan Area
Selected and specified
selected
Japan Region
Framework of Registering (Key Idea)
Sign-Concept-InstancesSign
a symbol designating a named element in a namespace.
Namespace is a collection of signsConcept
specify meaning of sign.generally expressed with sign.
Instancesa set of instance of the Concept designated by a sign.
Selectiona result of selecting a set of model instance from
referents designated by a sign.
Instances (of the model
associated by the metamodels)
Concept (expressed by metamodels in
domain)
Concept, concept,
concept,……Model
Registering
Sign(evoking
Concepts)
evokes
refers tostands for
Selection
“Auto cycle” Component
“Bicycle” Component
“Trailer” Component
“Car” Component
“Ambulance” Component
“Bus” Component
concept
referesTo
“Vehicle” Class Vehicle
signevoked
“Truck” Component
instancesselection
domain
classifier
Model Concept
Namespace
Model Sign
Model Selection
Model Instances
Model Components (Lower Model) Model Components (Lower Model)
Named Element Model Classifier conceptsign
specified bynamespace
referent
Model Components
Model Domain Profile (including Upper Model)
Model Specification
defineshas
association type
Basic Scheme of MMF Core
Type1: Type-Instance Type2: Super-SubType3: Base-VariantType4: Abstract Syntax-Expression
Type3: Base-Variant
“Base-Variant” is an association type between a base model and its variant models that are created by modifying the base model according to the permitted operation.
There are operations such as renaming, specifying, refining, substituting, extending and merging.
In the association type “Base-Variant” many operations above are performed on a base model partially and many times.
Eventually, the lower model will be derived from the upper base model.
The detail specification on specifying such operations should be provided as a ModelSpecification for each registering target.
MMF Core Metamodel (1)
Administered Itemdata_identifier : Stringversion : String
ModelComponent
ModelClassifiermodel typeusage typexmi textattachment typeattachment
ModelDomainProfile
conformance
ModelInstancesassociation typecomponent typeformat
0..*
1 +has
0..*
1
ModelSelectioncondition
11..*
+selecting
1
+selected by
1..*
ModelConceptmodelType
0..11
+concept
0..11
0..*
1
+specified by0..*
1
1
1..*
+associated by1
+referesTo1..*
ModelSignnameSpacesign
1
1..*
+generally expressed by1
+expressing1..*
10..*
+specified by
1
+having
0..*
Framework of Registering Model Sign-Model Concept-Model Instances
Model Signdesignate a named element in a namespace.Namespace is a collection of signs defined by a submitted
organizationSigns should be unique within the particular Namespace
M M F C o re M e ta m o d e l (1 )
A d m in is t e r e d It e md at a_id e n t ifi e r : S t r in gve r s io n : S t r in g
M o d e lC o m p o n e n t
M o d e lC las s ifi e rm o d e l t yp eu s age t yp exm i t e xtat t ac h m e n t t yp eat t ac h m e n t
M o d e lD om ai nP r o fi le
c o n fo r m an c e
M o d e lI n st an c e sas s o c iat io n t yp ec o m p o n e n t t yp efo r m at
0 .. *
1 +h as
0 .. *
1
M o d e lS e l e c t io nc o n d it io n
11 ..*
+s e le c t in g
1
+s e le c t e d b y
1 ..*
M o d e lC o n c e p tm o d e lT yp e
0 ..11
+c o n c e p t
0 ..11
0 ..*
1
+s p e c ifi e d b y0 ..*
1
1
1 ..*
+as s o c iat e d b y1
+r e fe r e s T o1 ..*
M o d e lS i gnn a me S p a ces ign
1
1 ..*
+ge n e r ally e xp r e s s e d b y1
+e x pr e s s in g1 ..*
10 ..*
+s p e c ifi e d b y
1
+h avin g
0 ..*
ModelSign
M M F C o re M e ta m o d e l (1 )
A d m in is t e r e d It e md at a_id e n t ifi e r : S t r in gve r s io n : S t r in g
M o d e lC o m p o n e n t
M o d e lC las s ifi e rm o d e l t yp eu s age t yp exm i t e xtat t ac h m e n t t yp eat t ac h m e n t
M o d e lD om ai nP r o fi le
c o n fo r m an c e
M o d e lI n st an c e sas s o c iat io n t yp ec o m p o n e n t t yp efo r m at
0 .. *
1 +h as
0 .. *
1
M o d e lS e l e c t io nc o n d it io n
11 ..*
+s e le c t in g
1
+s e le c t e d b y
1 ..*
M o d e lC o n c e p tm o d e lT yp e
0 ..11
+c o n c e p t
0 ..11
0 ..*
1
+s p e c ifi e d b y0 ..*
1
1
1 ..*
+as s o c iat e d b y1
+r e fe r e s T o1 ..*
M o d e lS i gnn a me S p a ces ign
1
1 ..*
+ge n e r ally e xp r e s s e d b y1
+e x pr e s s in g1 ..*
10 ..*
+s p e c ifi e d b y
1
+h avin g
0 ..*
Framework of Registering (cont’)
Model Sign-Model Concept-Model InstancesModel Concept
Specify meaning of the sign.Defined by a Model Classifier in the Model Domain ProfileThe sign is corresponding to a Model Classifier
ModelConcept
ModelClassifier
ModelDomainProfile
M M F C o re M e ta m o d e l (1 )
A d m in is t e r e d It e md at a_id e n t ifi e r : S t r in gve r s io n : S t r in g
M o d e lC o m p o n e n t
M o d e lC las s ifi e rm o d e l t yp eu s age t yp exm i t e xtat t ac h m e n t t yp eat t ac h m e n t
M o d e lD om ai nP r o fi le
c o n fo r m an c e
M o d e lI n st an c e sas s o c iat io n t yp ec o m p o n e n t t yp efo r m at
0 .. *
1 +h as
0 .. *
1
M o d e lS e l e c t io nc o n d it io n
11 ..*
+s e le c t in g
1
+s e le c t e d b y
1 ..*
M o d e lC o n c e p tm o d e lT yp e
0 ..11
+c o n c e p t
0 ..11
0 ..*
1
+s p e c ifi e d b y0 ..*
1
1
1 ..*
+as s o c iat e d b y1
+r e fe r e s T o1 ..*
M o d e lS i gnn a me S p a ces ign
1
1 ..*
+ge n e r ally e xp r e s s e d b y1
+e x pr e s s in g1 ..*
10 ..*
+s p e c ifi e d b y
1
+h avin g
0 ..*
Framework of Registering (cont’)
Model Sign-Model Concept-Model InstancesModel Instances
Provide a set of instances of the Model ConceptConsists of a Model Componentshould satisfy the constraints specified by the Model Concept.
ModelInstancesModelCompone
nt
Framework of Registering (cont’)
Model Selection Model Selection is a result of selecting a set of model components
from Model Instances designated by the sign.
M M F C o re M e ta m o d e l (1 )
A d m in is t e r e d It e md at a_id e n t ifi e r : S t r in gve r s io n : S t r in g
M o d e lC o m p o n e n t
M o d e lC las s ifi e rm o d e l t yp eu s age t yp exm i t e xtat t ac h m e n t t yp eat t ac h m e n t
M o d e lD om ai nP r o fi le
c o n fo r m an c e
M o d e lI n st an c e sas s o c iat io n t yp ec o m p o n e n t t yp efo r m at
0 .. *
1 +h as
0 .. *
1
M o d e lS e l e c t io nc o n d it io n
11 ..*
+s e le c t in g
1
+s e le c t e d b y
1 ..*
M o d e lC o n c e p tm o d e lT yp e
0 ..11
+c o n c e p t
0 ..11
0 ..*
1
+s p e c ifi e d b y0 ..*
1
1
1 ..*
+as s o c iat e d b y1
+r e fe r e s T o1 ..*
M o d e lS i gnn a me S p a ces ign
1
1 ..*
+ge n e r ally e xp r e s s e d b y1
+e x pr e s s in g1 ..*
10 ..*
+s p e c ifi e d b y
1
+h avin g
0 ..*
ModelSelection
Target Objects World
Structure of Registered Target ObjectsMulti-forest
There are many SDOs and organizations that will develop and register a Model Concept
A set of Model Concepts may be registered as a familyMulti-layer
There are several types of association between a Model classifier in a Model Concept and a corresponding Model component in a Model instances.
A Model component may be also registered with another Model classifier in the same Model Concept or the other one (from multi-viewpoint).
Multi-componentA Model classifier may consist of elements including
external objects that are selected from in another registered Model instances
Metamodel of Registered Target Structure
XMLSchemaSpreadSheet
Administered Itemdata_identifier : Stringversion : String
ModelSelectioncondition
ModelClassifiermodel typeusage typexmi textattachment typeattachment
NamedElement ModelConstructs
1..*
+constructs
1..*
ModelSpecificationformatoriginalsourceissue dateversionstatustitilepurposescopenormativeReferencetermDefinitioncomformance
ModelComponent0..*
+external references
0..*
0..*
+typed models
0..*
ModelDomainProfile
conformance0..*
+descriptions
0..*
+consist ofPackage
UpperModelmodel layer levelisMOFcompliantMOFversion
0..*
1
+specified by
0..*
1
0..1
1
+has0..1
1
Model Domain Profile
Model Specification
Model Classifier
Model Selection
Model Component
Upper Model
“Auto Bicycle” Component
“School Bus”
Component
“Bicycle” Component
“Sport Car” Component
“Highway Bus” Component
“F1 Car” Component
concept
Set of components
referesTo“Vehicle” Class Vehicle
signevoked
“Sedum” Component
“Car” Class Carevoked
instances
“Automobile”
Class Automobile
evoked
“Bus” Class Busevoked
referesTo
referesTo
referesTo
child
child
Administered Items in Core
ModelComponent ModelSign ModelConcept ModelDomainProfile ModelInstances ModelSelection
Issues and work items on CD 19763-2
Technical 3.1 MOF Terms used in specifying the MMF metamodel
The MOF Terminology in this clause came from the Glossary of MOF 1.4 Specification in OMG. However, the MOF PAS submission as ISO/IEC 19502 does not include the Glossary. The definitions below should be reconsidered and checked if those
are appropriate or not. 5. Conformance add the the statements about conformance criteria
Editorial Refine the specification Cross check the content with the other parts. Proofreading and refinement as English
Target Date for 3rd CD circulate editor’s final draft 2005-05-15 request comment and review by 2005-5-20 submit the document 2005-06-01
MMF-4 Status
ISO/IEC 19763-2 Metamodel for Model Mapping Information technology -- Framework for Metamodel
interoperability Part 4: Metamodel for Model Mapping Progress status
WD 2004-05-09 SC32 N1109 Expert’s Draft for 1st CD
SC32WG2 Nxxxx
What is Model Mapping?
Framework for Metamodel Interoperability ( MMF ) ISO/IEC CD 19763-1 Reference model ISO/IEC CD 19763-2 Core model ISO/IEC WD19763-3 Metamodel for ontology registration ISO/IEC WD19763-4 Metamodel for model mapping
Objectives This standard is a part of the metamodel framework family
of standards. It is based on inheritance of the core model. Modelling method with using UML is coming into common
use and MDA ( Model Driven Architecture ) promoted by OMG is a new approach that has come from considering the importance of modelling and model transformation technique.
The metamodel framework for model mapping provides a normative metamodel which allows the describing of differences regarding formats and types of objects to be exchanged or shared.
This metamodel framework also provides a capability for describing transformation rules between different objects in term of a meta ModelInstances.
Model Transformation Tool
The tool based on MOF is useful for specifying and implementing the transformation rules.
Such supporting tools use specialized transformation description languages.
A formal transformation description language is needed to define complex transformation rule and share transformation among different tools.
For example, OMG MOF QVT (Query, View and Transformation) is a formal transformation language to specify transformation rules precisely and availably.
The model compiler is the function of generating simple codes from a model.
A main important function supporting MDA is a function of transformation between one model and the other model.
Illustrates the basic structure of the MMF for Model Mapping that could be minimal set of metamodel for representing both mapping targets and mapping rules.
m etam odel
Modeling Construct
Modeling Facility Dom ain Model
Metam etamodel
UOD
governing
governinggoverning governing
metamodel
Modeling Construct
Modeling Facility Domain Model
Metametam odel
UOD
governing
governinggoverning governing
Model A(PIM)
Transformation Tool
Transformation Definition
Transformation Definition Model B
(PSM)
Pattern DefinitionFor Model A
Pattern DefinitionFor Model A
Pattern DefinitionFor Model B
Pattern DefinitionFor Model B
Source Model Target Model
Overview of Model Mapping
Example:A transformation from a domain model on PIM into the same domain model on PSM.
Transformation tool should be specified
Model transformation definition
Model Transformation
types of model transformationType1: from upper level model into lower level modelType2: from implementation model into object code Type3: from conceptual model into object codeType4: from conceptual model to conceptual model
Basic Framework of registering MMF model mapping
MM1
M1
MM2
MetaModelRelationship
Model Generation Mapping
Value Computation
Model Compilation type
C
M2
V2V1
Metamodel:
MM1
TransformationTransformation
Model:
M1
Metamodel:
MM2
Model:
M2
MM
Transformation
Value:
V1
Value:
V2
M
Transformation
V
Transformation
ProjectionMetamorphosis Compilation
uppermodel
source
uppermodel
uppermodel
source target
source target
uppermodel
target
CP1/P2M
Framework for Model Mapping
Metamodel:
MM1
TransformationTransformation
Model:
M1
Metamodel:
MM2
Model:
M2
MM
Transformation
Value:
V1
Value:
V2
M
Transformation
V
Transformation
Projection Compilation
uppermodel
source
uppermodel
uppermodel
source target
source target
uppermodel
target
CP1
Relationship
Mapping
Computation
Projection type1 and Compilation -Model
Relationship -Model Renaming-Model Equivalence
-Model Enhancement
-Model Transformation-Model Generation -Model Migration -Model Derivation
-Value Computation-Value Aggregation-Value Conversion
Metamodel:
MM1
TransformationTransformation
Model:
M1
Metamodel:
MM2
Model:
M2
MM
Transformation
Value:
V1
Value:
V2
M
Transformation
V
Transformation
Projection
uppermodel
source
uppermodel
uppermodel
source target
source target
uppermodel
target
P2
Relationship
Relationship
Computation
Projection type2
Metamodel:
MM1
TransformationTransformation
Model:
M1
Metamodel:
MM2
Model:
M2
MM
Transformation
Value:
V1
Value:
V2
M
Transformation
V
Transformation
Metamorphosis
uppermodel
source
uppermodel
uppermodel
source target
source target
uppermodel
target
M
Relationship
Relationship
Computation
Metamorphosis
MMF model mapping Metamodel
Model Concept
Model I nstances
Admi ni stered I tem
MTransf ormat i ondefi ni t i onTypeM
Model Associ at i onModel Tabl enameTabl estereotypeLi stpat ternDefi ni t i onLi st
Model M
+source
+target
Model V
+uppermodel
Model MM
+uppermodel
VTransf ormat i ondefi ni t i onTypeVtaggedVal ueMapTabl ecomputat i onTabl e
+source
+target
Transf omat i ondefi ni t i onType
0. . *0. . *+defi nedby
MapTabl econceptMaptabl estereotypeMapTabl epat ternMapTabl eel ementMapTabl edescri pt i onKi nddescri pt i on
MMTransf ormat i ondefi ni t i onTypeMM
+soruce
+target
0. . *0. . *
+has
The MapTable is a metaclass designating the metamodel/model/vallue transformation definition between source and target metamodel/model/value.
The ModelTable is a metaclass designating the source/target metamodel of metamodel transformation.
The Transformation is a metaclass designating an unit of model transformation between source and target including metamodel, model and value transformation definition respectively.
Model Transformation Example
Simple UML metamodel Simple RDBMS metamodel
Reference:
Revised submission for MOF 2.0 Query/View/Transformation RFP (ad/2002-04-10) QVT-Merge Group version 2.0
Model Transformation Example (cont’)
Graphical Notation Textual Notation
Issues and work items on CD 19763-4
Technical Provide the concrete example using MOF QVT add the the statements about conformance criteria
Editorial Review and Refine the specification Cross check the content with the other parts. Proofreading and refinement as English
Target Date for 1st CD circulate editor’s final draft 2005-05-15 request comment and review by 2005-5-20 submit the document 2005-06-01
Annex for discussion
Administered Items
19763-2
(core)
19763-3 (ontology)
11179-2
11179-3 MOF/XMI
19763-4
(Model Mapping)
ODM
QVT
OWL
SCL
RDF
DL
FOL TM
OMG
W3C
ISO
XMDR
Access API
ER
ebXML Artifact
HL7 Artifact
MDR Artifact
OMG Artifact
Relationship among related Standards (for discussion)
UML
used
registered