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

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

Summary

Details

Page properties
Content
... ... @@ -311,22 +311,22 @@
311 311  
312 312  The **unpivot** mapping behaves like follows:
313 313  
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);
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);
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 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 (% 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);
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 mapping table of the **unpivot** mapping method is the following:
320 +The summary (% style="color:#e74c3c" %)mapping(%%) table of the **unpivot** (% style="color:#e74c3c" %)mapping(%%) method is the following:
321 321  
322 322  (% style="width:638.294px" %)
323 -|(% style="width:200px" %)**VTL**|(% style="width:435px" %)**SDMX**
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]]**
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 level:
329 +At observation / data point (% style="color:#e74c3c" %)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 [[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]].
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]].
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 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 (% 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”).
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 mapping table is the following:
347 +The (% style="color:#e74c3c" %)mapping(%%) table is the following:
348 348  
349 349  (% style="width:467.294px" %)
350 -|(% style="width:214px" %)VTL|(% style="width:250px" %)SDMX
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]]
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 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.
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.
362 362  
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.
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.
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 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 (% 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]].
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