Changes for page 12 Validation and Transformation Language (VTL)
Last modified by Helena K. on 2026/06/10 10:09
Summary
-
Page properties (1 modified, 0 added, 0 removed)
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