440 likes | 641 Views
WG2 N1282. Status Report of MFI-4 ISO/IEC 19763-4. SC32/WG2 Jeju Korea 25/06/09 Masaharu Obayashi. Update of MFI-4. FCD2 Ballot close: 10 July 2009 Ballot will be closed on 10 th July Documents 32N1846T-text_for_ballot-FCD2_1963-4 32N1847-disp_of_comments-FCD_19763-4.
E N D
WG2 N1282 Status Report of MFI-4 ISO/IEC 19763-4 SC32/WG2 Jeju Korea 25/06/09 Masaharu Obayashi
Update of MFI-4 • FCD2 Ballot close: 10 July 2009 Ballot will be closed on 10th July • Documents • 32N1846T-text_for_ballot-FCD2_1963-4 • 32N1847-disp_of_comments-FCD_19763-4
Discussion Points on FCD (1) • CA01: Definition of ‘pattern’ • CA04: Definition of ‘M1 Layer, M2 Layer • CA05: Abbreviations of ‘MM-M’, ‘M-V’ • CA06: Definition of ‘MOF extent’ • CA07: Definition of ‘MM Level’, ‘M Level’ and ‘V-Level’ • CA08-11: Explanation of arrow symbols • GB03: Definition of ‘Computation’ • GB05: usage of term ‘model’ • GB06: synonyms of term ‘relation’ and ‘relationship’ • GB09: Abbreviations (CA05) • GB10: Definition of ‘Layer’ (CA04) • GB11: "The MFI Model Mapping is shown as a series of UML Class diagrams , …“ • GB12: Datatypes of Attribute definition withdrawn • GB14: Abbreviations of ‘MM-M’ (CA07) Metamodel-Model Pair, Model-Value Pair • GB15: • If this figure is an accurate depiction of the concepts in the standard, it would appear that the concepts are unlikely to support accurate and realistic mapping between models. There are at least two concerns. • (1) This implies that when mapping models there is always a one-to-one mapping between 'model instances', whereas in reality mapping is usually many-to-many. • (2) As shown in the Figure it would be possible to mismatch "Model Instances" and "Model Concepts". • These are serious errors that require the complete revision of the body of the document. • GB17: Notation of ‘(from MFI-Core) ’ • GB18: "The identifier of sets of transformations rules"
Discussion Points on FCD (2) • GB19: ‘Code’ in Table 1 should not specified in Conceptual Model • GB20: set of valid values in Table1, fixed or expand? • GB21: ‘Code’ in Table2 (GB19) • GB22: Table 2 cell contents are incorrectly justified. • GB24: term "ruleDefinition" does not match • GB30: ‘Code’ in Table4 (GB19) • GB31: set of valid values in Table4, fixed or expand? (GB20) • GB34: ‘Code’ in Table5 (GB19) • GB35: set of valid values in Table5, fixed or expand? (GB20) • GB36: Figure 3 is unclear • GB37: Figure 4 is unclear • GB38: "name" and "kind" are inherited from the superclass and should not be redefined here. • GB40: ‘Code’ in Table6 (GB19) • GB41: set of valid values in Table6, fixed or expand? (GB20) • GB42-43: Figure5 and Figure6 is unclear
Discussion Points on FCD (3) • GB46: It should be made clear how this requirement will be tested. • GB48: Annex A is very difficult to read and it is unclear • GB49: Annex A: the word “compiler” "Simply stated, a model compiler is a program that reads a transformation definition written in one formal language - the source model - and translates it into an equivalent model in another metamodel - the target model." • GB50: Annex B is very difficult to read and it is unclear • GB51: Annex C is very difficult to read and it is unclear • US02: Is the bold face the correct style for the expansion of the abbreviations? • US03: The words “conforming MOF standards” in the following sentence is ambiguous. “The MFI Model Mapping registry model is specified using Administered Items as defined in the Metadata Registry (MDR), and conforming Meta Object Facility (MOF) standards.” Do you mean to exclude standards that are not conforming to MOF? Or something else?
Discussion Points on FCD (4) • ISO01: Documents listed in Clause 2 shall be referenced "normatively" elsewhere in the document, • ISO03: Document incorrectly references itself as "this standard". • ISO04: Abbreviated terms are not numbered in International Standards. Caps not necessary and used inconsistently. • ISO05: Clause 2 is the conformance clause in International Standards.
What is Model Mapping? • Framework for Metamodel Interoperability(MFI) • ISO/IEC DIS 19763-1 Reference model • ISO/IEC FCD 19763-2 Core model • ISO/IEC DIS 19763-3 Metamodel for ontology registration • ISO/IEC CD19763-4 Metamodel for model mapping (c) 2007 Masaharu Obayashi
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. (c) 2007 Masaharu Obayashi
Model Transformation • 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 MFI for Model Mapping that could be minimal set of metamodel for representing both mapping targets and mapping rules. (c) 2007 Masaharu Obayashi
Terminology on QVT • MOF QVT (Query, View and Transformation) a formal transformation language used to specify transformation rules • Mapping a mapping is a potentially directed transformation implementation • pattern a pattern describes the ’shape' of an object it will be matched against • pattern matching a process whereby parts of a model are matched against a pattern • Query a query takes as input a model and selects specific elements from that model • Relation, relationship a multi-directional transformation specification, relations are not executable in the sense that they are unable to create or alter a model; they can, however, check two or more models for consistency against one another. • transformation a process of automatic generation of a target model from a source model according to a transformation definition NOTE Transformation is the umbrella term for relation and mapping. • view a view is a model that is derived from another model (c) 2007 Masaharu Obayashi
Mapping Examples OWL RDF Common Logic UML Topic Map Mapping RDF to OWL Mapping OWL to CL Mapping UML to RDF Mapping Topic Map to OWL (c) 2007 Masaharu Obayashi
MFI-4 Package (c) 2007 Masaharu Obayashi
MFI model mapping Metamodel (c) 2007 Masaharu Obayashi
Kind of Transformation (c) 2007 Masaharu Obayashi
Translation Rule Type (c) 2007 Masaharu Obayashi
MM-M Transformation Kind (1) (c) 2007 Masaharu Obayashi
MM-M Transformation Kind (2) (c) 2007 Masaharu Obayashi
Transformation Kind (1) Example UML OWL Mapping UML to OWL (c) 2007 Masaharu Obayashi
M-V Transformation Kind (1) (c) 2007 Masaharu Obayashi
M-V Transformation Kind (2) (c) 2007 Masaharu Obayashi
Transformation on HL7 (1) (c) 2007 Masaharu Obayashi
Transformation on HL7 (2) (c) 2007 Masaharu Obayashi
Transformation on ebXML (2) (c) 2007 Masaharu Obayashi
Transformation on ebXML (1) (c) 2007 Masaharu Obayashi
Transformation on MDA (c) 2007 Masaharu Obayashi
Transformation on CWM (1) (c) 2007 Masaharu Obayashi
Transformation on XSLT (c) 2007 Masaharu Obayashi
Sample models (UML version) (original from Keith of UK)
B::UNIT Component with Classifier B::UNIT A::DEPOT B::SUPPLY UNIT A::DEPOT B::OTHER UNIT A::SUB DEPOT A::SUPPLY UNIT C::UNIT TYPE A::UNIT C::UNIT TYPE C::UNIT
C::UNIT TYPE Domain Profile C::UNIT TYPE Domain Profile::UNIT MODEL C::UNIT A::DEPOT A::DEPOT B::UNIT A::SUB DEPOT B::UNIT A::SUPPLY UNIT B::SUPPLY UNIT A::UNIT B::OTHER UNIT
C::UNIT TYPE Sign-Concept-Component Setand Selection Domain Profile::UNIT MODEL C::UNIT TYPE Sign::unit Concept::UNIT Sign::depot Sign::sub depot C::UNIT Sign::supply unit A::DEPOT A::DEPOT B::UNIT Component Set:: UNIT MODEL B::UNIT Selection::UNIT A::SUB DEPOT Selection::UNIT Selection::UNIT Selection::UNIT A::SUPPLY UNIT B::SUPPLY UNIT B::OTHER UNIT A::UNIT
C::UNIT TYPE Conceptualization by Abstract Syntax-Expression Domain Profile::UNIT MODEL C::UNIT TYPE Sign::unit Concept::UNIT Sign::depot Sign::sub depot C::UNIT Sign::supply unit A::DEPOT A::DEPOT B::UNIT Component Set:: UNIT MODEL B::UNIT Selection::UNIT A::SUB DEPOT Selection::UNIT Selection::UNIT Selection::UNIT A::SUPPLY UNIT B::SUPPLY UNIT B::OTHER UNIT A::UNIT
C::UNIT TYPE Model Mapping Domain Profile::UNIT MODEL C::UNIT TYPE Sign::unit Concept::UNIT Sign::depot Sign::sub depot C::UNIT MM-Level Sign::supply unit A::DEPOT M-Level A::DEPOT B::UNIT Component Set:: UNIT MODEL B::UNIT Selection::UNIT A::SUB DEPOT Selection::UNIT Selection::UNIT Selection::UNIT A::SUPPLY UNIT B::SUPPLY UNIT B::OTHER UNIT A::UNIT
Model Domain Profile Model Domain Profile Metamodel Level Rule Model Component Model Component Model Component Model Component Relationship Model Classifier Model Concept Model Concept Model Classifier Model Classifier Model Classifier Model Component Set Model Component Set ModelByMOF ModelByMOF ModelByMOF ModelByMOF Model Instances Model Instances Model Level Rule Source Target Mapping value value value value
Model DomainProfile Model DomainProfile Source ModelComponent Target ModelComponent RIM RIM Role Role Act Act Relationship Role1 Role2 DMIM Act2 Act1 Relationship RMIM Source ModelComponent Target ModelComponent Projection II Model ComponentSet Model ComponentSet
Model DomainProfile Model DomainProfile Source ModelComponent Target ModelComponent RIM RIM Role Role HDF Act Act Relationship RMIM DMIM Role2 Role3 HMD RMIM Act2 Act3 Mapping Source ModelComponent Target ModelComponent Compilation Model ComponentSet Model ComponentSet
Model DomainProfile Model DomainProfile Source ModelComponent Target ModelComponent CCLib CCLib CC3 cc2 CC4 cc1 Relationship BCC/ACC Bbie1 BCC/ACC Bcc1 Abie1 Acc1 Relationship BBIE/ABIE Source ModelComponent Transfer Target ModelComponent Model ComponentSet Model ComponentSet
Model DomainProfile Model DomainProfile Source ModelComponent Target ModelComponent CCLib CCLib Cc2 Cc2 UMM Cc1 Cc1 Relationship BBIE/ABIE BCC/ACC Instance of Instance of Bbie1 BPM Bbie1 BBIE/ABIE Abie1 Abie1 Relationship Source ModelComponent Target ModelComponent Transfer Model ComponentSet Model ComponentSet
Model ComponentSet Model ComponentSet Source ModelComponent Target ModelComponent SQL SQL table3 table1 table2 Mapping table4 Instance of Instance of value2 value3 Value1 Computation value4 Value2 value1 Source ModelComponent Target ModelComponent Projection I Compilation
Model DomainProfile Model DomainProfile Source ModelComponent Target ModelComponent CWM CWM MetaClass1 MetaClass2 MetaClass3 Relationship Instance of Instance of ER table3 table1 table4 table2 Relationship SQL Source ModelComponent Target ModelComponent Transfer Model ComponentSet Model ComponentSet
Model ComponentSet Model ComponentSet Source ModelComponent Target ModelComponent XML XML element3 element1 element2 Mapping element4 Instance of Instance of value2 value3 Value1 Computation value4 Value2 value1 Compilation