Changes for page 12 Validation and Transformation Language (VTL)
Last modified by Helena on 2025/09/10 11:19
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -53,10 +53,8 @@ 53 53 54 54 The generic structure of the URN is the following: 55 55 56 -SDMXprefix.SDMX-IM-package-name.class-name=agency-id:maintainedobject-id 56 +SDMXprefix.SDMX-IM-package-name.class-name=agency-id:maintainedobject-id (maintainedobject-version).*container-object-id.object-id 57 57 58 -(maintainedobject-version).*container-object-id.object-id 59 - 60 60 The **SDMXprefix** is "urn:sdmx:org", always the same for all SDMX artefacts. 61 61 62 62 The SDMX-IM-package-name** **is the concatenation of the string** **"sdmx.infomodel." with the package-name, which the artefact belongs to. For example, for referencing a Dataflow the SDMX-IM-package-name is "sdmx.infomodel.datastructure", because the class Dataflow belongs to the package "datastructure". ... ... @@ -68,10 +68,7 @@ 68 68 The maintainedobject-id is the name of the maintained object which the artefact belongs to, and in case the artefact itself is maintainable{{footnote}}i.e., the artefact belongs to a maintainable class{{/footnote}}, coincides with the name of the artefact. Therefore the maintainedobject-id depends on the class of the artefact: 69 69 70 70 * if the artefact is a Dataflow, which is a maintainable class, the maintainedobject-id is the Dataflow name (dataflow-id); 71 -* if the artefact is a Dimension, Measure, TimeDimension or DataAttribute, which are not maintainable and belong to the 72 - 73 -DataStructure maintainable class, the maintainedobject-id is the name of the DataStructure (dataStructure-id) which the artefact belongs to; 74 - 69 +* if the artefact is a Dimension, Measure, TimeDimension or DataAttribute, which are not maintainable and belong to the DataStructure maintainable class, the maintainedobject-id is the name of the DataStructure (dataStructure-id) which the artefact belongs to; 75 75 * if the artefact is a Concept, which is not maintainable and belongs to the ConceptScheme maintainable class, the maintainedobject-id is the name of the ConceptScheme (conceptScheme-id) which the artefact belongs to; 76 76 * if the artefact is a Codelist, which is a maintainable class, the maintainedobject-id is the Codelist name (codelist-id). 77 77 ... ... @@ -98,7 +98,7 @@ 98 98 99 99 The URN can be abbreviated by omitting the parts that are not essential for the identification of the artefact or that can be deduced from other available information, including the context in which the invocation is made. The possible abbreviations are described below. 100 100 101 -* The SDMXprefix can be omitted for all the SDMX objects, because it is a prefixed string (urn:sdmx:org), always the same for SDMX objects. • The SDMX-IM-package-name** **can be omitted as well because it can be deduced from the class-name that follows it (the table of the SDMX-IM packages and classes that allows this deduction is in the SDMX 2.1 Standards - Section 5 - Registry Specifications, paragraph 6.2.3). In particular, considering the object classes of the artefacts that VTL can reference, the package is:96 +* The SDMXprefix can be omitted for all the SDMX objects, because it is a prefixed string (urn:sdmx:org), always the same for SDMX objects. • The SDMX-IM-package-name** **can be omitted as well because it can be deduced from the class-name that follows it (the table of the SDMX-IM packages and classes that allows this deduction is in the SDMX 2.1 Standards - Section 5 - Registry Specifications, paragraph 6.2.3). In particular, considering the object classes of the artefacts that VTL can reference, the package is: 102 102 ** "datastructure" for the classes Dataflow, Dimension, TimeDimension, Measure, DataAttribute, o "conceptscheme" for the class Concept, o "codelist" for the class Codelist. 103 103 * The class-name can be omitted as it can be deduced from the VTL invocation. In particular, starting from the VTL class of the invoked artefact (e.g. dataset, component, identifier, measure, attribute, variable, valuedomain), which is known given the syntax of the invoking VTL operator^^[[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^13^^>>path:#sdfootnote13sym||name="sdfootnote13anc"]](%%)^^, the SDMX class can be deduced from the mapping rules between VTL and SDMX (see the section "Mapping between VTL and SDMX" hereinafter)^^[[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^14^^>>path:#sdfootnote14sym||name="sdfootnote14anc"]](%%)^^. 104 104 * If the agency-id is not specified, it is assumed by default equal to the agency-id of the TransformationScheme, UserDefinedOperatorScheme or RulesetScheme from which the artefact is invoked. For example, the agencyid can be omitted if it is the same as the invoking TransformationScheme and cannot be omitted if the artefact comes from another agency^^[[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^15^^>>path:#sdfootnote15sym||name="sdfootnote15anc"]](%%)^^. Take also into account that, according to the VTL consistency rules, the agency of the result of a Transformation must be the same as its TransformationScheme, therefore the agency-id can be omitted for all the results (left part of Transformation statements).