Last modified by Helena K. on 2026/06/10 10:09

From version 10.6
edited by Helena K.
on 2026/06/10 09:54
Change comment: There is no comment for this version
To version 10.9
edited by Helena K.
on 2026/06/10 09:59
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -182,17 +182,17 @@
182 182  
183 183  === 12.3.1. When the mapping occurs ===
184 184  
185 -The (% style="color:#e74c3c" %)mapping(%%) methods between the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] and [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] object classes allow transforming a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition in a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] one and vice-versa for the [[artefacts>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]] to be manipulated. It should be remembered that [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] programs (i.e. Transformation Schemes) are represented in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] through the TransformationScheme maintainable class which is composed of Transformations ([[nameable artefacts>>doc:sdmx:Glossary 2\.1.Nameable artefact.WebHome]]). Each Transformation assigns the outcome of the evaluation of a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] expression to a result: the input operands of the expression and the result can be [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[artefacts>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]]. Every time a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] object is referenced in a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Transformation as an input operand, there is the need to generate a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] definition of the object, so that the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] operations can take place. This can be made starting from the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition and applying a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]-[[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (% style="color:#e74c3c" %)mapping(%%) method in the direction from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]. The possible (% style="color:#e74c3c" %)mapping(%%) methods from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] are described in the following paragraphs and are conceived to allow the automatic deduction of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] definition of the object from the knowledge of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition.
185 +The mapping methods between the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] and [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] object classes allow transforming a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition in a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] one and vice-versa for the [[artefacts>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]] to be manipulated. It should be remembered that [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] programs (i.e. Transformation Schemes) are represented in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] through the TransformationScheme maintainable class which is composed of Transformations ([[nameable artefacts>>doc:sdmx:Glossary 2\.1.Nameable artefact.WebHome]]). Each Transformation assigns the outcome of the evaluation of a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] expression to a result: the input operands of the expression and the result can be [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[artefacts>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]]. Every time a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] object is referenced in a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Transformation as an input operand, there is the need to generate a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] definition of the object, so that the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] operations can take place. This can be made starting from the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition and applying a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]-[[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] mapping method in the direction from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]. The possible mapping methods from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] are described in the following paragraphs and are conceived to allow the automatic deduction of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] definition of the object from the knowledge of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition.
186 186  
187 187  In the opposite direction, every time an object calculated by means of [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] must be treated as a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] object (for example for exchanging it through [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]), there is the need of a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition of the object, so that the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] operations can take place. The [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition is needed for the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] objects for which a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] use is envisaged{{footnote}}If a calculated artefact is persistent, it needs a persistent definition, i.e. a SDMX definition in a SDMX environment. In addition, possible calculated artefact that are not persistent may require a SDMX definition, for example when the result of a nonpersistent calculation is disseminated through SDMX tools (like an inquiry tool).{{/footnote}}.
188 188  
189 -The (% style="color:#e74c3c" %)mapping(%%) methods from [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] are described in the following paragraphs as well, however they do not allow the complete [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition to be automatically deduced from the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] definition, more than all because the former typically contains additional information in respect to the latter. For example, the definition of a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[DSD>>doc:sdmx:Glossary 2\.1.Data structure definition.WebHome]] includes also some mandatory information not available in [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (like the [[concept scheme>>doc:sdmx:Glossary 2\.1.Concept scheme.WebHome]] to which the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] refer, the ‘usage’ and ‘attributeRelationship’ for the DataAttributes and so on). Therefore the (% style="color:#e74c3c" %)mapping(%%) methods from [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] provide only a general guidance for generating [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definitions properly starting from the information available in [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]], independently of how the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition it is actually generated (manually, automatically or part and part).
189 +The mapping methods from [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] are described in the following paragraphs as well, however they do not allow the complete [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition to be automatically deduced from the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] definition, more than all because the former typically contains additional information in respect to the latter. For example, the definition of a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[DSD>>doc:sdmx:Glossary 2\.1.Data structure definition.WebHome]] includes also some mandatory information not available in [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (like the [[concept scheme>>doc:sdmx:Glossary 2\.1.Concept scheme.WebHome]] to which the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] refer, the ‘usage’ and ‘attributeRelationship’ for the DataAttributes and so on). Therefore the mapping methods from [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] provide only a general guidance for generating [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definitions properly starting from the information available in [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]], independently of how the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definition it is actually generated (manually, automatically or part and part).
190 190  
191 191  === 12.3.2 General mapping of VTL and SDMX data structures ===
192 192  
193 193  This section makes reference to the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] "Model for data and their structure"{{footnote}}See the VTL 2.0 User Manual{{/footnote}} and the correspondent [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] "[[Data Structure Definition>>doc:sdmx:Glossary 2\.1.Data structure definition.WebHome]]"{{footnote}}See the SDMX Standards Section 2 – Information Model{{/footnote}}.
194 194  
195 -The main type of [[artefact>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]] that the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] can manipulate is the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Data Set>>doc:sdmx:Glossary 2\.1.Data set.WebHome]], which in general is (% style="color:#e74c3c" %)mapped(%%) to the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]]. This means that a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Transformation, in the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] context, expresses the algorithm for calculating a derived [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] starting from some already existing [[Dataflows>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] (either collected or derived).{{footnote}}Besides the mapping between one SDMX Dataflow and one VTL Data Set, it is also possible to map distinct parts of a SDMX Dataflow to different VTL Data Set, as explained in a following paragraph.{{/footnote}}
195 +The main type of [[artefact>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]] that the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] can manipulate is the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Data Set>>doc:sdmx:Glossary 2\.1.Data set.WebHome]], which in general is mapped to the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]]. This means that a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Transformation, in the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] context, expresses the algorithm for calculating a derived [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] starting from some already existing [[Dataflows>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] (either collected or derived).{{footnote}}Besides the mapping between one SDMX Dataflow and one VTL Data Set, it is also possible to map distinct parts of a SDMX Dataflow to different VTL Data Set, as explained in a following paragraph.{{/footnote}}
196 196  
197 197  While the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Transformations are defined in term of [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] definitions, they are assumed to be executed on instances of such [[Dataflows>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]], provided at runtime to the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] engine (the mechanism for identifying the instances to be processed are not part of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] specifications and depend on the implementation of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]-based systems). As already said, the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Datasets>>doc:sdmx:Glossary 2\.1.Data set.WebHome]] are instances of [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Dataflows>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]], therefore a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Transformation defined on some [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Dataflows>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] can be applied on some corresponding [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Datasets>>doc:sdmx:Glossary 2\.1.Data set.WebHome]].
198 198  
... ... @@ -202,18 +202,18 @@
202 202  
203 203  Correspondingly, in the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] implementation of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]], the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Identifiers can be (optionally) distinguished in similar sub-classes (Simple Identifier, Time Identifier) even if such a distinction is not evidenced in the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] IM.
204 204  
205 -The possible (% style="color:#e74c3c" %)mapping(%%) options are described in more detail in the following sections.
205 +The possible mapping options are described in more detail in the following sections.
206 206  
207 207  === 12.3.3 Mapping from SDMX to VTL data structures ===
208 208  
209 209  ==== 12.3.3.1 Basic Mapping ====
210 210  
211 -The main (% style="color:#e74c3c" %)mapping(%%) method from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] is called **Basic **(% style="color:#e74c3c" %)mapping(%%). This is considered as the default (% style="color:#e74c3c" %)mapping(%%) method and is applied unless a different method is specified through the VtlMappingScheme and VtlDataflowMapping classes.
211 +The main mapping method from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] is called **Basic **mapping. This is considered as the default mapping method and is applied unless a different method is specified through the VtlMappingScheme and VtlDataflowMapping classes.
212 212  
213 213  When transforming **from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]**, this method consists in leaving the [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] unchanged and maintaining their names and roles, according to the following table:
214 214  
215 215  (% style="width:468.294px" %)
216 -|(% style="width:196px" %)**[[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]**|(% style="width:269px" %)**[[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]**
216 +|(% style="width:196px" %)**SDMX**|(% style="width:269px" %)**VTL**
217 217  |(% style="width:196px" %)[[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]]|(% style="width:269px" %)(Simple) Identifier
218 218  |(% style="width:196px" %)TimeDimension|(% style="width:269px" %)(Time) Identifier
219 219  |(% style="width:196px" %)[[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]|(% style="width:269px" %)[[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]
... ... @@ -221,33 +221,33 @@
221 221  
222 222  The [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttributes, in [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] they are all considered "at data point / observation (% style="color:#e74c3c" %)level(%%)" (i.e. dependent on all the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Identifiers), because [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] does not have the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] AttributeRelationships, which defines the construct to which the DataAttribute is related (e.g. observation, [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] or set or group of [[dimensions>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]], whole [[data set>>doc:sdmx:Glossary 2\.1.Data set.WebHome]]).
223 223  
224 -With the Basic (% style="color:#e74c3c" %)mapping(%%), one [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] observation^^27^^ generates one [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] data point.
224 +With the Basic mapping, one [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] observation^^27^^ generates one [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] data point.
225 225  
226 226  ==== 12.3.3.2 Pivot Mapping ====
227 227  
228 -An alternative (% style="color:#e74c3c" %)mapping(%%) method from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] is the **Pivot **(% style="color:#e74c3c" %)mapping(%%), which makes sense and is different from the Basic method only for the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] data structures that contain a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] that plays the role of [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] (like in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 2.1) and just one [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]. Through this method, these structures can be (% style="color:#e74c3c" %)mapped(%%) to multimeasure [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] data structures. Besides that, a user may choose to use any [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] acting as a list of [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] (e.g., a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] with [[indicators>>doc:sdmx:Glossary 2\.1.Statistical indicator.WebHome]]), either by considering the “[[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]” role of a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]], or at will using any coded [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]]. Of course, in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 3.0, this can only work when only one [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] is defined in the [[DSD>>doc:sdmx:Glossary 2\.1.Data structure definition.WebHome]].
228 +An alternative mapping method from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] is the **Pivot **mapping, which makes sense and is different from the Basic method only for the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] data structures that contain a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] that plays the role of [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] (like in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 2.1) and just one [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]. Through this method, these structures can be mapped to multimeasure [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] data structures. Besides that, a user may choose to use any [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] acting as a list of [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] (e.g., a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] with [[indicators>>doc:sdmx:Glossary 2\.1.Statistical indicator.WebHome]]), either by considering the “[[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]” role of a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]], or at will using any coded [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]]. Of course, in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 3.0, this can only work when only one [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] is defined in the [[DSD>>doc:sdmx:Glossary 2\.1.Data structure definition.WebHome]].
229 229  
230 -In [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 2.1 the MeasureDimension was a subclass of DimensionComponent like [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] and TimeDimension. In the current [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] (% style="color:#e74c3c" %)version(%%), this subclass does not exist anymore, however a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] can have the role of [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] (i.e. a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] that contributes to the identification of the [[measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]). In [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 2.1 a DataStructure could have zero or one MeasureDimensions, in the current (% style="color:#e74c3c" %)version(%%) of the standard, from zero to many [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] may have the role of [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]]. Hereinafter a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] that plays the role of [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] is referenced for simplicity as “MeasureDimension“, i.e. maintaining the capital letters and the courier font even if the MeasureDimension is not anymore a class in the [[SDMX Information Model>>doc:sdmx:Glossary 2\.1.SDMX Information Model.WebHome]] of the current [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] (% style="color:#e74c3c" %)version(%%). For the sake of simplicity, the description below considers just one [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] having the role of MeasureDimension (i.e., the more simple and common case). Nevertheless, it maintains its validity also if in the DataStructure there are more [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] with the role of MeasureDimensions: in this case what is said about the MeasureDimension must be applied to the combination of all the MeasureDimensions considered as a joint [[variable>>doc:sdmx:Glossary 2\.1.Statistical variable.WebHome]]{{footnote}}E.g., if in the data structure there exist 3 Dimensions C,D,E having the role of MeasureDimension, they should be considered as a joint MeasureDimension Z=(C,D,E); therefore when the description says “each possible value Cj of the MeasureDimension …” it means “each possible combination of values (Cj, Dk, Ew) of the joint MeasureDimension Z=(C,D,E)”.{{/footnote}}.
230 +In [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 2.1 the MeasureDimension was a subclass of DimensionComponent like [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] and TimeDimension. In the current [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] version, this subclass does not exist anymore, however a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] can have the role of [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] (i.e. a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] that contributes to the identification of the [[measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]). In [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 2.1 a DataStructure could have zero or one MeasureDimensions, in the current version of the standard, from zero to many [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] may have the role of [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]]. Hereinafter a [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] that plays the role of [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] is referenced for simplicity as “MeasureDimension“, i.e. maintaining the capital letters and the courier font even if the MeasureDimension is not anymore a class in the [[SDMX Information Model>>doc:sdmx:Glossary 2\.1.SDMX Information Model.WebHome]] of the current [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] version. For the sake of simplicity, the description below considers just one [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] having the role of MeasureDimension (i.e., the more simple and common case). Nevertheless, it maintains its validity also if in the DataStructure there are more [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] with the role of MeasureDimensions: in this case what is said about the MeasureDimension must be applied to the combination of all the MeasureDimensions considered as a joint [[variable>>doc:sdmx:Glossary 2\.1.Statistical variable.WebHome]]{{footnote}}E.g., if in the data structure there exist 3 Dimensions C,D,E having the role of MeasureDimension, they should be considered as a joint MeasureDimension Z=(C,D,E); therefore when the description says “each possible value Cj of the MeasureDimension …” it means “each possible combination of values (Cj, Dk, Ew) of the joint MeasureDimension Z=(C,D,E)”.{{/footnote}}.
231 231  
232 232  Among other things, the Pivot method provides also backward compatibility with the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 2.1 data structures that contained a MeasureDimension.
233 233  
234 -If applied to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] structures that do not contain any MeasureDimension, this method behaves like the Basic (% style="color:#e74c3c" %)mapping(%%) (see the previous paragraph).
234 +If applied to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] structures that do not contain any MeasureDimension, this method behaves like the Basic mapping (see the previous paragraph).
235 235  
236 -The [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] structures that contain a MeasureDimension are (% style="color:#e74c3c" %)mapped(%%) as described below (this (% style="color:#e74c3c" %)mapping(%%) is equivalent to a pivoting operation):
236 +The [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] structures that contain a MeasureDimension are mapped as described below (this mapping is equivalent to a pivoting operation):
237 237  
238 238  * A [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] simple [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] becomes a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (simple) identifier and a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] TimeDimension becomes a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (time) identifier;
239 -* Each possible [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] Cj of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension is (% style="color:#e74c3c" %)mapped(%%) to a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]], having the same name as the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] (i.e. Cj); the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] Cj is a new [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] even if the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] data structure has not such a [[Component>>doc:sdmx:Glossary 2\.1.Component.WebHome]];
240 -* The [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension is not (% style="color:#e74c3c" %)mapped(%%) to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (it disappears in the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Data Structure);
241 -* The [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] is not (% style="color:#e74c3c" %)mapped(%%) to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] as well (it disappears in the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Data Structure);
242 -* An [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute is (% style="color:#e74c3c" %)mapped(%%) in different ways according to its AttributeRelationship:
243 -** If, according to the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] AttributeRelationship, the values of the DataAttribute do not depend on the values of the MeasureDimension, the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute becomes a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attribute>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] having the same name. This happens if the AttributeRelationship is not specified (i.e. the DataAttribute does not depend on any DimensionComponent and therefore is at [[data set>>doc:sdmx:Glossary 2\.1.Data set.WebHome]] (% style="color:#e74c3c" %)level(%%)), or if it refers to a set (or a group) of [[dimensions>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] which does not include the MeasureDimension;
244 -** Otherwise, if, according to the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] AttributeRelationship, the values of the DataAttribute depend on the MeasureDimension, the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute is (% style="color:#e74c3c" %)mapped(%%) to one [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attribute>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] for each possible [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension. By default, the names of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] are obtained by concatenating the name of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute and the names of the correspondent [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the MeasureDimension separated by underscore. For example, if the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute is named DA and the possible [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension are named C1, C2, …, Cn, then the corresponding [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] will be named DA_C1, DA_C2, …, DA_Cn (if different names are desired, they can be achieved afterwards by renaming the [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] through [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] operators).
245 -** Like in the Basic (% style="color:#e74c3c" %)mapping(%%), the resulting [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] are considered as dependent on all the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] identifiers (i.e. "at data point / observation (% style="color:#e74c3c" %)level(%%)"), because [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] does not have the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] notion of [[Attribute Relationship>>doc:sdmx:Glossary 2\.1.Attribute relationship.WebHome]].
239 +* Each possible [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] Cj of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension is mapped to a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]], having the same name as the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] (i.e. Cj); the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] Cj is a new [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] even if the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] data structure has not such a [[Component>>doc:sdmx:Glossary 2\.1.Component.WebHome]];
240 +* The [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension is not mapped to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (it disappears in the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Data Structure);
241 +* The [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] is not mapped to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] as well (it disappears in the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Data Structure);
242 +* An [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute is mapped in different ways according to its AttributeRelationship:
243 +** If, according to the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] AttributeRelationship, the values of the DataAttribute do not depend on the values of the MeasureDimension, the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute becomes a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attribute>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] having the same name. This happens if the AttributeRelationship is not specified (i.e. the DataAttribute does not depend on any DimensionComponent and therefore is at [[data set>>doc:sdmx:Glossary 2\.1.Data set.WebHome]] level), or if it refers to a set (or a group) of [[dimensions>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] which does not include the MeasureDimension;
244 +** Otherwise, if, according to the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] AttributeRelationship, the values of the DataAttribute depend on the MeasureDimension, the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute is mapped to one [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attribute>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] for each possible [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension. By default, the names of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] are obtained by concatenating the name of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute and the names of the correspondent [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the MeasureDimension separated by underscore. For example, if the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute is named DA and the possible [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension are named C1, C2, …, Cn, then the corresponding [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] will be named DA_C1, DA_C2, …, DA_Cn (if different names are desired, they can be achieved afterwards by renaming the [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] through [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] operators).
245 +** Like in the Basic mapping, the resulting [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] are considered as dependent on all the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] identifiers (i.e. "at data point / observation level"), because [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] does not have the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] notion of [[Attribute Relationship>>doc:sdmx:Glossary 2\.1.Attribute relationship.WebHome]].
246 246  
247 -The summary (% style="color:#e74c3c" %)mapping(%%) table of the "pivot" (% style="color:#e74c3c" %)mapping(%%) from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] for the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] data structures that contain a MeasureDimension is the following:
247 +The summary mapping table of the "pivot" mapping from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] for the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] data structures that contain a MeasureDimension is the following:
248 248  
249 249  (% style="width:739.294px" %)
250 -|(% style="width:335px" %)**[[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]**|(% style="width:400px" %)**[[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]**
250 +|(% style="width:335px" %)**SDMX**|(% style="width:400px" %)**VTL**
251 251  |(% style="width:335px" %)[[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]]|(% style="width:400px" %)(Simple) Identifier
252 252  |(% style="width:335px" %)TimeDimension|(% style="width:400px" %)(Time) Identifier
253 253  |(% style="width:335px" %)MeasureDimension & one [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]|(% style="width:400px" %)One [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] for each [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension
... ... @@ -257,9 +257,9 @@
257 257  [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension
258 258  )))
259 259  
260 -Using this (% style="color:#e74c3c" %)mapping(%%) method, the [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] of the data structure can change in the conversion from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] and it must be taken into account that the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] statements can reference only the [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] of the resulting [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] data structure.
260 +Using this mapping method, the [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] of the data structure can change in the conversion from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] and it must be taken into account that the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] statements can reference only the [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] of the resulting [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] data structure.
261 261  
262 -At observation / data point (% style="color:#e74c3c" %)level(%%), calling Cj (j=1, … n) the j^^th^^ [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the MeasureDimension:
262 +At observation / data point level, calling Cj (j=1, … n) the j^^th^^ [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the MeasureDimension:
263 263  
264 264  * The set of [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] observations having the same values for all the [[Dimensions>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] except than the MeasureDimension become one multi-[[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Data Point, having one [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] for each [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] Cj of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension;
265 265  * The values of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] simple [[Dimensions>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]], TimeDimension and DataAttributes not depending on the MeasureDimension (these [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] by definition have always the same values for all the observations of the set above) become the values of the corresponding [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (simple) Identifiers, (time) Identifier and [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]].
... ... @@ -272,22 +272,22 @@
272 272  
273 273  The Basic_A2M and Pivot_A2M behaves respectively like the Basic and Pivot methods, except that the final [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]], which according to the Basic and Pivot methods would have had the role of [[Attribute>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]], assume instead the role of [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]].
274 274  
275 -Proper [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] features allow changing the role of specific [[attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] even after the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (% style="color:#e74c3c" %)mapping(%%): they can be useful when only some of the DataAttributes need to be managed as [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]].
275 +Proper [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] features allow changing the role of specific [[attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] even after the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] mapping: they can be useful when only some of the DataAttributes need to be managed as [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]].
276 276  
277 277  === 12.3.4 Mapping from VTL to SDMX data structures ===
278 278  
279 279  ==== 12.3.4.1 Basic Mapping ====
280 280  
281 -The main (% style="color:#e74c3c" %)mapping(%%) method **from [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]** is called **Basic **(% style="color:#e74c3c" %)mapping(%%) as well.
281 +The main mapping method **from [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]** is called **Basic **mapping as well.
282 282  
283 283  This is considered as the default (% style="color:#e74c3c" %)mapping(%%) method and is applied unless a different method is specified through the VtlMappingScheme and VtlDataflowMapping classes.
284 284  
285 -The method consists in leaving the [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] unchanged and maintaining their names and roles in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]], according to the following (% style="color:#e74c3c" %)mapping(%%) table, which is the same as the basic (% style="color:#e74c3c" %)mapping(%%) from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]], only seen in the opposite direction.
285 +The method consists in leaving the [[components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] unchanged and maintaining their names and roles in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]], according to the following mapping table, which is the same as the basic mapping from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]], only seen in the opposite direction.
286 286  
287 -(% style="color:#e74c3c" %)Mapping(%%) table:
287 +Mapping table:
288 288  
289 289  (% style="width:470.294px" %)
290 -|(% style="width:262px" %)**[[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]**|(% style="width:205px" %)**[[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]**
290 +|(% style="width:262px" %)**VTL**|(% style="width:205px" %)**SDMX**
291 291  |(% style="width:262px" %)(Simple) Identifier|(% style="width:205px" %)[[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]]
292 292  |(% style="width:262px" %)(Time) Identifier|(% style="width:205px" %)TimeDimension
293 293  |(% style="width:262px" %)[[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]|(% style="width:205px" %)[[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]
... ... @@ -295,38 +295,38 @@
295 295  
296 296  If the distinction between simple identifier and time identifier is not maintained in the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] environment, the [[classification>>doc:sdmx:Glossary 2\.1.Statistical Classification.WebHome]] between [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] and TimeDimension exists only in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]], as declared in the relevant DataStructureDefinition.
297 297  
298 -Regarding the [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]], because [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] considers all of them "at observation (% style="color:#e74c3c" %)level(%%)", the corresponding [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttributes should be put "at observation (% style="color:#e74c3c" %)level(%%)" as well, unless some different information about their AttributeRelationship is otherwise available.
298 +Regarding the [[Attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]], because [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] considers all of them "at observation level", the corresponding [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttributes should be put "at observation level" as well, unless some different information about their AttributeRelationship is otherwise available.
299 299  
300 -Note that the basic mappings in the two directions (from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] and vice-versa) are (almost completely) reversible. In fact, if a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] structure is (% style="color:#e74c3c" %)mapped(%%) to a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structure and then the latter is (% style="color:#e74c3c" %)mapped(%%) back to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]], the resulting data structure is like the original one (apart for the AttributeRelationship, that can be different if the original [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] structure contains DataAttributes that are not at observation (% style="color:#e74c3c" %)level(%%)). In reverse order, if a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structure is (% style="color:#e74c3c" %)mapped(%%) to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] and then the latter is (% style="color:#e74c3c" %)mapped(%%) back to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]], the original data structure is obtained.
300 +Note that the basic mappings in the two directions (from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] and vice-versa) are (almost completely) reversible. In fact, if a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] structure is mapped to a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structure and then the latter is mapped back to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]], the resulting data structure is like the original one (apart for the AttributeRelationship, that can be different if the original [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] structure contains DataAttributes that are not at observation level). In reverse order, if a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structure is mapped to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] and then the latter is mapped back to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]], the original data structure is obtained.
301 301  
302 302  As said, the resulting [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definitions must be compliant with the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] consistency rules. For example, the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[DSD>>doc:sdmx:Glossary 2\.1.Data structure definition.WebHome]] must have the AttributeRelationship for the DataAttributes, which does not exist in [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]].
303 303  
304 304  ==== 12.3.4.2 Unpivot Mapping ====
305 305  
306 -An alternative (% style="color:#e74c3c" %)mapping(%%) method from [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] is the **Unpivot **(% style="color:#e74c3c" %)mapping(%%).
306 +An alternative mapping method from [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] is the **Unpivot **mapping.
307 307  
308 -Although this (% style="color:#e74c3c" %)mapping(%%) method can be used in any case, it makes major sense in case the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] data structure has more than one [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] (multi-[[measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structure). This is used to support the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 2.1 case of a MeasureDimension or any other [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] acting as a list of [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]], under the assumptions explained in section “Pivot (% style="color:#e74c3c" %)Mapping(%%)”.
308 +Although this mapping method can be used in any case, it makes major sense in case the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] data structure has more than one [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] (multi-[[measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structure). This is used to support the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] 2.1 case of a MeasureDimension or any other [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] acting as a list of [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]], under the assumptions explained in section “Pivot Mapping”.
309 309  
310 310  The multi-[[measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structures are converted to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Dataflows>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] having an added MeasureDimension, which disambiguates the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] multiple [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]], and a new [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] in place of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] ones, containing the values of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]].
311 311  
312 -The **unpivot** (% style="color:#e74c3c" %)mapping(%%) behaves like follows:
312 +The **unpivot** mapping behaves like follows:
313 313  
314 -* like in the basic (% style="color:#e74c3c" %)mapping(%%), a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (simple) identifier becomes a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] and a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (time) identifier becomes a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] TimeDimension (as said, a [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] identifier cannot exist in multi-[[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structures);
314 +* like in the basic mapping, a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (simple) identifier becomes a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] and a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (time) identifier becomes a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] TimeDimension (as said, a [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] identifier cannot exist in multi-[[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structures);
315 315  * a MeasureDimension [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] called "measure_name" is added to the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataStructure;
316 316  * a [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] called "obs_value" is added to the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataStructure;
317 -* each [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] is (% style="color:#e74c3c" %)mapped(%%) to a [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension having the same name as the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] (therefore all the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[Components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] do not originate [[Components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] in the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataStructure);
317 +* each [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] is mapped to a [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension having the same name as the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] (therefore all the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[Components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] do not originate [[Components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] in the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataStructure);
318 318  * a [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Attribute>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]] becomes a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttribute having AttributeRelationship referred to all the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DimensionComponents including the TimeDimension and except the MeasureDimension.
319 319  
320 -The summary (% style="color:#e74c3c" %)mapping(%%) table of the **unpivot** (% style="color:#e74c3c" %)mapping(%%) method is the following:
320 +The summary mapping table of the **unpivot** mapping method is the following:
321 321  
322 322  (% style="width:638.294px" %)
323 -|(% style="width:200px" %)**[[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]**|(% style="width:435px" %)**[[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]**
323 +|(% style="width:200px" %)**VTL**|(% style="width:435px" %)**SDMX**
324 324  |(% style="width:200px" %)(Simple) Identifier|(% style="width:435px" %)[[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]]
325 325  |(% style="width:200px" %)(Time) Identifier|(% style="width:435px" %)TimeDimension
326 326  |(% style="width:200px" %)All [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[Components>>doc:sdmx:Glossary 2\.1.Component.WebHome]]|(% style="width:435px" %)MeasureDimension (having one [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] for each [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]]) & one [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]
327 327  |(% style="width:200px" %)[[Attribute>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]]|(% style="width:435px" %)DataAttribute depending on all [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Dimensions>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] including the TimeDimension and except the MeasureDimension
328 328  
329 -At observation / data point (% style="color:#e74c3c" %)level(%%):
329 +At observation / data point level:
330 330  
331 331  * a multi-[[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Data Point becomes a set of [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] observations, one for each [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]];
332 332  * the values of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Identifiers become the values of the corresponding [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DimensionComponents, for all the observations of the set above;
... ... @@ -336,18 +336,18 @@
336 336  
337 337  If desired, this method can be applied also to mono-[[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structures, provided that none of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] has already the role of [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] Identifier. Like in the general case, a MeasureDimension [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] called “measure_name” is added to the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataStructure, in this case it has just one possible [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]], corresponding to the name of the unique [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]. The original [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] would not become a [[Component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] in the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] data structure. The value of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] would be assigned to the unique [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] called “obs_value”.
338 338  
339 -In any case, the resulting [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definitions must be compliant with the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] consistency rules. For example, the possible [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension need to be listed in a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]], with proper id, agency and (% style="color:#e74c3c" %)version(%%); moreover, the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[DSD>>doc:sdmx:Glossary 2\.1.Data structure definition.WebHome]] must have the AttributeRelationship for the DataAttributes, which does not exist in [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]].
339 +In any case, the resulting [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] definitions must be compliant with the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] consistency rules. For example, the possible [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] MeasureDimension need to be listed in a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]], with proper id, agency and [[version>>doc:sdmx:Glossary 2\.1.Version.WebHome]]; moreover, the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[DSD>>doc:sdmx:Glossary 2\.1.Data structure definition.WebHome]] must have the AttributeRelationship for the DataAttributes, which does not exist in [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]].
340 340  
341 341  ==== 12.3.4.3 From VTL Measures to SDMX Data Attributes ====
342 342  
343 -More than all for the multi-[[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structures (having more than one [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[Component>>doc:sdmx:Glossary 2\.1.Component.WebHome]]), it may happen that the [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Data Structure need to be managed as DataAttributes in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]. Therefore, a third (% style="color:#e74c3c" %)mapping(%%) method consists in transforming some [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] in a corresponding [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] and all the other [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttributes. This method is called M2A (“M2A” stands for “[[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] to DataAttributes”).
343 +More than all for the multi-[[measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] structures (having more than one [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[Component>>doc:sdmx:Glossary 2\.1.Component.WebHome]]), it may happen that the [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] of the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Data Structure need to be managed as DataAttributes in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]. Therefore, a third mapping method consists in transforming some [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] in a corresponding [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] and all the other [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttributes. This method is called M2A (“M2A” stands for “[[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] to DataAttributes”).
344 344  
345 345  All [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] maintain their names in [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]. The [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] [[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]] [[Components>>doc:sdmx:Glossary 2\.1.Component.WebHome]] that become [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] DataAttributes are the ones declared as DataAttributes in the target [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[data structure definition>>doc:sdmx:Glossary 2\.1.Data structure definition.WebHome]].
346 346  
347 -The (% style="color:#e74c3c" %)mapping(%%) table is the following:
347 +The mapping table is the following:
348 348  
349 349  (% style="width:467.294px" %)
350 -|(% style="width:214px" %)[[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]|(% style="width:250px" %)[[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]]
350 +|(% style="width:214px" %)VTL|(% style="width:250px" %)SDMX
351 351  |(% style="width:214px" %)(Simple) Identifier|(% style="width:250px" %)[[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]]
352 352  |(% style="width:214px" %)(Time) Identifier|(% style="width:250px" %)TimeDimension
353 353  |(% style="width:214px" %)Some [[Measures>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]|(% style="width:250px" %)[[Measure>>doc:sdmx:Glossary 2\.1.Measure.WebHome]]
... ... @@ -358,11 +358,11 @@
358 358  
359 359  === 12.3.5 Declaration of the mapping methods between data structures ===
360 360  
361 -In order to define and understand properly [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Transformations, the applied (% style="color:#e74c3c" %)mapping(%%) methods must be specified in the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[structural metadata>>doc:sdmx:Glossary 2\.1.Structural metadata.WebHome]]. If the default (% style="color:#e74c3c" %)mapping(%%) method (Basic) is applied, no specification is needed.
361 +In order to define and understand properly [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] Transformations, the applied mapping methods must be specified in the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[structural metadata>>doc:sdmx:Glossary 2\.1.Structural metadata.WebHome]]. If the default mapping method (Basic) is applied, no specification is needed.
362 362  
363 -A customized (% style="color:#e74c3c" %)mapping(%%) can be defined through the VtlMappingScheme and VtlDataflowMapping classes (see the section of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] IM relevant to the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]). A VtlDataflowMapping allows specifying the (% style="color:#e74c3c" %)mapping(%%) methods to be used for a specific [[dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]], both in the direction from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (toVtlMappingMethod) and from [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] (fromVtlMappingMethod); in fact a VtlDataflowMapping associates the structured URN that identifies a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] to its [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] alias and its (% style="color:#e74c3c" %)mapping(%%) methods.
363 +A customized mapping can be defined through the VtlMappingScheme and VtlDataflowMapping classes (see the section of the [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] IM relevant to the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]]). A VtlDataflowMapping allows specifying the mapping methods to be used for a specific [[dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]], both in the direction from [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] to [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] (toVtlMappingMethod) and from [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] to [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] (fromVtlMappingMethod); in fact a VtlDataflowMapping associates the structured URN that identifies a [[SDMX>>doc:sdmx:Glossary 2\.1.Statistical data and metadata exchange.WebHome]] [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] to its [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] alias and its mapping methods.
364 364  
365 -It is possible to specify the toVtlMappingMethod and fromVtlMappingMethod also for the conventional [[dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] called "generic_dataflow": in this case the specified (% style="color:#e74c3c" %)mapping(%%) methods are intended to become the default ones, overriding the "Basic" methods. In turn, the toVtlMappingMethod and fromVtlMappingMethod declared for a specific [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] are intended to override the default ones for such a [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]].
365 +It is possible to specify the toVtlMappingMethod and fromVtlMappingMethod also for the conventional [[dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] called "generic_dataflow": in this case the specified mapping methods are intended to become the default ones, overriding the "Basic" methods. In turn, the toVtlMappingMethod and fromVtlMappingMethod declared for a specific [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] are intended to override the default ones for such a [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]].
366 366  
367 367  The VtlMappingScheme is a container for zero or more VtlDataflowMapping (it may contain also mappings towards [[artefacts>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]] other than [[dataflows>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]]).
368 368  
© Semantic R&D Group, 2026