This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

Difference between revisions of "Types of Mapping Notation"

From HL7Wiki
Jump to navigation Jump to search
(New page: There are three types of mapping: Model-to-Model (M2M), Structure-to-Model (S2M) and Structure-to-Structure (S2S). ‘Model’ refers to a semantic model (e.g. a UML model), and ‘Structu...)
 
Line 3: Line 3:
 
*The primary use case of M2M mappings is to transform one model to another (often uni-directionally).  
 
*The primary use case of M2M mappings is to transform one model to another (often uni-directionally).  
 
*S2M mappings have multiple uses: asserting and testing conformance to models, and making transformations between structures.  They can also support model-to-model transforms.  
 
*S2M mappings have multiple uses: asserting and testing conformance to models, and making transformations between structures.  They can also support model-to-model transforms.  
 +
  
 
Any of these types of mapping can be declarative or procedural.  A <b>declarative</b> mapping language makes statements of the form ‘the parts of formalism F1 and the parts of formalism F2 are related in these ways’; the order of statements does not matter. A <b>procedural</b> (or imperative) mapping language says: ‘To get from F1 to F2 , do this sequence of steps’; the sequence and interactions of the statements matter.  Declarative languages are generally easier to write, understand and analyse. A declarative mapping language says what is the relationship between two formalisms, rather than how you get from one to the other.
 
Any of these types of mapping can be declarative or procedural.  A <b>declarative</b> mapping language makes statements of the form ‘the parts of formalism F1 and the parts of formalism F2 are related in these ways’; the order of statements does not matter. A <b>procedural</b> (or imperative) mapping language says: ‘To get from F1 to F2 , do this sequence of steps’; the sequence and interactions of the statements matter.  Declarative languages are generally easier to write, understand and analyse. A declarative mapping language says what is the relationship between two formalisms, rather than how you get from one to the other.
 +
 +
[[Neutral Mapping|Return to top page on mapping notations]]

Revision as of 12:28, 6 June 2010

There are three types of mapping: Model-to-Model (M2M), Structure-to-Model (S2M) and Structure-to-Structure (S2S). ‘Model’ refers to a semantic model (e.g. a UML model), and ‘Structure’ means a physical data structure (e.g. defined by an XML schema or a relational database schema).

  • Commercial S2S mapping notations have been developed with the aim of transforming data instances from one structure to another, sometimes bi-directionally, or in ETL tools.
  • The primary use case of M2M mappings is to transform one model to another (often uni-directionally).
  • S2M mappings have multiple uses: asserting and testing conformance to models, and making transformations between structures. They can also support model-to-model transforms.


Any of these types of mapping can be declarative or procedural. A declarative mapping language makes statements of the form ‘the parts of formalism F1 and the parts of formalism F2 are related in these ways’; the order of statements does not matter. A procedural (or imperative) mapping language says: ‘To get from F1 to F2 , do this sequence of steps’; the sequence and interactions of the statements matter. Declarative languages are generally easier to write, understand and analyse. A declarative mapping language says what is the relationship between two formalisms, rather than how you get from one to the other.

Return to top page on mapping notations