Mapping between CDIF and EXPRESS for a Study Period on Mapping Modelling Languages for Analysis & Design Hugh Davis (Windcrest Consultants) 31st July 1998 1. Summary This report is about work done on a mapping between CDIF and STEP/EXPRESS [CDIF-EXP] in a study period on Mapping Modelling Languages for Analysis & Design. The mapping between CDIF and EXPRESS has established a proof of concept for the feasibility of mapping between modelling languages by defining a general correspondence between CDIF and EXPRESS and specific transformations from CDIF to EXPRESS and from EXPRESS to CDIF. These mappings provide a format that can be followed by other mappings and thus have established the basic elements of this mapping process. 2. Background The problems that give rise to the subject of the study period are as follows. - There are many groups (formal standards, industry consortia) defining models (sometimes referred to as metadata). - Although there are signs of convergence on some of the modelling languages (e.g. CDIF-OMG), there will never be agreement on a single approach. - Therefore the ability to map between different modelling languages is a firm requirement, and a common (potentially standardized) mapping approach needs to be investigated and developed. - The ability to exchange models is a prerequisite for communication between system designers (and others), sharing and exchange of data and interoperability of system components. This problem was studied at a JTC1 workshop (reference [JWKS]) in September 1996. One of the workshop resolutions, later accepted by JTC1, was directed at SC7: JWS R2.3: The Joint Workshop requests that JTC1 recommend that JTC1/SC7 conduct a study period to establish the technical basis for a program of work leading to the standardization for the mapping of modelling languages. Given these terms of reference, SC7/WG11 proposed an initial study period focussed specifically on mapping the following modelling languages: - CDIF meta-meta-model, - STEP EXPRESS, and - OMG Unified Modeling Language (UML) The objectives of this study period were: - to establish a proof of concept for the feasibility of mapping between modelling languages; - to establish the basic elements of this mapping process; - to prepare the plan for follow-on work in the relevant JTC1 committees, e.g. SC7, SC32, SC33, TC184/SC4, and liaison groups, e.g. EIA CDIF, OMG. 3. Results This subsection describes the results of the work on the CDIF-EXPRESS mapping, particularly the general lessons for mapping of modelling languages that have been learned from the work on the CDIF-EXPRESS mapping, concerning e.g. the objectives of the exercise, the different types of mapping and whether there is a need for a reference model. 3.1.1 Scope and purpose of the mapping exercise Many of the results relate to topics discussed at the first study group meeting in London. Various judgements are coloured by the objectives of a mapping. The most important distinction is whether the work is intended - to be about modelling languages in general (or all modelling languages), and to aid understanding of the principles of modelling and modelling languages; or - to be centred on one modelling language and to aid harmonisation of one particular modelling language with others. The study period has taken the latter position, with CDIF as the particular modelling language, because: (a) there are insufficient resources and support for a general, long-term activity; (b) the results of such an activity would probably become just another modelling language and would be accepted as neither general nor global; (c) useful results can be achieved in the short term with specific CDIF mappings; (d) a few specific CDIF mappings will enable us to make statements about CDIF mappings in general and even about mappings between general pairs of modelling languages. In London we also noted the distinction between - a mapping as a correspondence or comparison of two systems - a mapping as a transformation from one system to another system Those taking a more general position on the aims of the exercise tended to prefer the former choice; those taking the CDIF-centred position preferred the latter. The work on the CDIF-EXPRESS mapping clarified the distinction and the respective strengths and weaknesses. This in turn shed light on the question of reference models. 3.1.2 Correspondence versus transformation It is clear from the work on mappings between CDIF and EXPRESS that both correspondences and transformations are required. - A correspondence, i.e. a symmetrical mapping of nearly equivalent systems, is useful for discussing where the equivalence is inexact or where one system lacks an equivalent feature of the other system. - A transformation, an asymmetrical mapping from a source system to a target system, is necessary for generating new features in the target system that are precisely equivalent in function and meaning to features in the source system. Definition of a transformation encourages more thorough work on difficult differences between the two systems. Clause 7 of [CDIF-EXP] gives detailed definitions of these terms. Disagreement over some technical details in Version 1 of the CDIF-EXPRESS mapping resulted in prolonged discussion of the design criteria for transformations. One criterion that was generally agreed is that the transformation can be automatically applied by a computer program. This may produce somewhat unfriendly results and so is in conflict with another criterion: that the results should be in the style of the target system and acceptable to its users. The conflict was resolved in defining a transformation (called mechanical) that meets the first criterion and defining differences for the transformation (called natural) to meet the second criterion. It was pointed out by EXPRESS experts that there are different views on what is good style and that it may depend on what the EXPRESS schema is to be used for. It has been left for subsequent review to determine such questions as whether it is worth making the mechanical/natural distinction, whether the mechanical transformation can be simplified to make it reasonably acceptable to EXPRESS users and so on. A further criterion that was recognised is that the mapping should be as simple and uniform as possible and omit unnecessary detail, including detail that can be included in separate general rules. The aim of this criterion is to simplify implementation by tools and use by people. . 3.1.3 Use of a reference model In London we discussed whether the mapping should be structured according to CDIF concepts or an independent reference model. There were strong reservations about the latter choice among those making the detailed investigation, because: (a) there is no such independent reference model already available; (b) a new reference model would be seen, judged and rejected as a proposal for the basis for a new, ultimate, general modelling language; (c) the reference model would simply add to the variety of alternative terms and concepts; (d) CDIF, intended as a neutral architecture and information model, should serve adequately as a reference model. In fact, most of the CDIF-EXPRESS mapping is structured as corresponding statements about CDIF and EXPRESS (or STEP) concepts, each using the native terms, in adjacent entries of a table. CDIF and EXPRESS terms are both used in clause headings. There are also places where general terms are used, such as "module", "type" and "subject area" - some of which may also be special CDIF or EXPRESS terms - e.g. in clause headings and preambles. All this was done to avoid "CDIF-centricity" and encourage acceptance and joint ownership by both CDIF and STEP communities. Whilst the mapping is specific it is not too specific to CDIF and the same approach could be used with other pairs of modelling languages. The correspondence between CDIF and EXPRESS may be said to use an implicit reference model: writing it required a lot of thought on the separation and classification of concepts. So the CDIF-EXPRESS mapping provides a format for mappings which can be used (possibly with extensions and modifications) as an implicit reference model. It would be nice to be able to write similarly that the format of the transformations from CDIF and from EXPRESS provide a suitable structure for defining other transformations from CDIF, EXPRESS and other modelling languages. It is left to subsequent review of [CDIF-EXP] to decide if the ordering of the material for the transformation from EXPRESS is too much influenced by the ordering for the transformation from CDIF. To some extent the ordering of such transformations should be based on the ordering of the source language, since the writers of that specification have already worked out an acceptable way to do this. In the study period the following mappings of CDIF and EXPRESS have been carried out: - a correspondence between the CDIF meta-meta-model and EXPRESS, which is the basis for - a transformation from the CDIF meta-meta-model and EXPRESS, and - a transformation from EXPRESS to the CDIF meta-meta-model. These mappings are all included in a draft British Standard [CDIF-EXP]. 4. Recommendations from study period 4.1 General applicability The study period has produced specific results that are expected to lead to useful international standards for mappings between CDIF and EXPRESS and between CDIF and UML. These results can also be applied in other mappings of CDIF and in the mapping of modelling languages more generally. Taken together, such mappings provide a basis for interoperability between a range of systems. R1. It is recommended that CDIF mappings be parts of a multi-part standard CDIF Mappings.. The correspondence between CDIF and EXPRESS provides a suitable basic format and style, or reference model, for defining correspondences between modelling languages. The transformations from CDIF and from EXPRESS provide a suitable basic format and style for defining transformations of modelling languages. R2. It is recommended that future mappings follow the format and style of the CDIF-EXPRESS mapping. The experience from this study period can be used to provide general guidelines for CDIF mappings. R3. It is recommended that Part 1 of CDIF Mappings be Guidelines for CDIF Mappings. Producing a CDIF-EXPRESS mapping structured like an earlier CDIF-PCTE mapping has not only provided a good starting point for the CDIF-EXPRESS mapping, but also shed light on both mappings. R4. It is recommended that future mappings be compared with existing mappings. 4.2 Future standards The CDIF-EXPRESS mapping is a complete draft of CD quality and has been received with interest in both CDIF and EXPRESS communities. R5. It is recommended that the CDIF-EXPRESS mapping be distributed informally to SC7 for comment and that the British Standard, when approved, should be submitted to JTC1 through the fast-track procedure. 4.3 Quality The use of compilers for the EXPRESS modelling language has made a vital contribution. It is regrettable that the primary format for the CDIF modelling language does not lend itself to automatic parsing of the CDIF standards. R6. It is recommended that proposals be solicited for a simple parsable syntax for the CDIF meta-meta- model that can be used in CDIF standards, so as to allow CDIF standards to be parsed and checked by software. The use of tools for one modelling language (EXPRESS) has shown up differences between the modelling languages. For complete validation of mappings and other interoperability specifications it is necessary to prototype the whole system. R7. It is recommended that complete prototyping of the mapping be encouraged. 5. References [CDIF-EXP] Mappings of CDIF and EXPRESS, version 3, BSI [EXPLRM] ISO 10303-11:1994, Industrial automation systems and integration - Product data representation and exchange - Part 11: Description methods: The EXPRESS language reference manual. [JWKS] Report of the Joint Workshop on Standards for the Use of Models that Define Data and Processes of Information Systems http://www.nist.gov/workshop/jtc1-96/report.htm [STEP] ISO 10303-1:1994, Industrial automation systems and integration - Product data representation and exchange - Part 1: Overview and fundamental principles.