Changes for page SDMX 3.0 Standards. Summary of Major Changes and New Functionality
Last modified by Helena on 2025/09/10 11:19
Summary
-
Page properties (4 modified, 0 added, 0 removed)
-
Attachments (0 modified, 4 added, 0 removed)
-
Objects (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,0 +1,1 @@ 1 +SDMX 3.0 Standards. Summary of major changes and new functionality - Parent
-
... ... @@ -1,0 +1,1 @@ 1 +Methodology.WebHome - Tags
-
... ... @@ -1,0 +1,1 @@ 1 +Artefact|Code|Code list|Hierarchy|Reference metadata|SDMX-EDI|SDMX-JSON|SDMX-ML|Statistical data and metadata exchange|Structural metadata - Content
-
... ... @@ -1,0 +1,694 @@ 1 +{{box title="**Contents**"}} 2 +{{toc/}} 3 +{{/box}} 4 + 5 +**Revision History** 6 + 7 +(% style="width:738.039px" %) 8 +|(% style="width:187px" %)Revision|(% style="width:157px" %)Date|(% style="width:390px" %)Contents 9 +|(% style="width:187px" %)DRAFT 1.0|(% style="width:157px" %)May 2021|(% style="width:390px" %)Draft release updated for SDMX 3.0 for public consultation 10 +|(% style="width:187px" %)1.0|(% style="width:157px" %)October 2021|(% style="width:390px" %)Public Release for SDMX 3.0 11 + 12 += 1 Overview = 13 + 14 +[[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] (% style="color:#e74c3c" %)version(%%) 3.0 introduces new features, improvements and changes to the Standard in the following key areas: 15 + 16 +**Information Model** 17 + 18 +* Simplification and improvement of the [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] model 19 +* Support for microdata 20 +* Support for geospatial data 21 +* Support for [[code list>>doc:Glossary.Code list.WebHome]] extension and discriminated union of [[code>>doc:Glossary.Code.WebHome]] lists 22 +* Improvements to structure mapping 23 +* Improvements to [[code>>doc:Glossary.Code.WebHome]] [[hierarchies>>doc:Glossary.Hierarchy.WebHome]] for data discovery 24 +* Improvements to constraints 25 + 26 +**Versioning of Structural Metadata Artefacts** 27 + 28 +* Adoption of the three-number semantic versioning standard for [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] [[artefacts>>doc:Glossary.Artefact.WebHome]] ([[https:~~/~~/semver.org/>>https://semver.org/||rel="noopener noreferrer" target="_blank"]]) 29 + 30 +**REST Web Services Application Programming Interface (API)** 31 + 32 +* Change to a single ‘structure’ resource for structure queries simplifying the REST API specification by reducing the number of resources to five 33 +* Improvements to data queries 34 +* Improvements to [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] queries 35 +* Support for [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] maintenance using HTTP PUT, POST and DELETE verbs 36 + 37 +**SOAP Web Services API** 38 + 39 +* The SOAP web services API has been deprecated with (% style="color:#e74c3c" %)version(%%) 3.0 standardising on REST**;** 40 + 41 +**XML, JSON, CSV and EDI Transmission formats** 42 + 43 +* The [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]], [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] and [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-CSV specifications have been extended and modified where needed to support the new features and changes such as [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] and microdata 44 +* Obsolete [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] data message variants including Generic, Compact, Utility and Cross-sectional have been deprecated standardising on Structure Specific Data as the sole XML format for data exchange 45 +* The [[SDMX-EDI>>doc:Glossary.SDMX-EDI.WebHome]] transmission format for structures and data has been deprecated 46 +* The organisation of structures into ‘collections’ in [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] and [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] structure messages has been flattened and simplified 47 +* The option to reference structures in [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] and [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] messages using Agency, ID and (% style="color:#e74c3c" %)Version(%%) has been deprecated with URN now exclusively used for all non-local referencing purpose 48 + 49 +**Breaking Changes** 50 + 51 +Many of the changes made are ‘breaking’ meaning that, while conversion between (% style="color:#e74c3c" %)versions(%%) may be possible in certain circumstances, the 3.0 specification is not directly backwardly compatible with earlier (% style="color:#e74c3c" %)versions(%%) of the Standard. 52 + 53 +A summary of the main breaking changes is given in chapter 2. 54 + 55 +**Content of the Document** 56 + 57 +The remainder of the document provides a summary of the main changes. More detailed information can be found the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] 3.0 Technical Specifications, in particular: 58 + 59 +* Section 2 – Information Model 60 +* Section 5 – Registry Specification 61 +* Section 6 – Technical Notes 62 +* [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-TWG GitHub for the REST API and the XML, JSON and CSV formats 63 + 64 += 2 Summary of Breaking Changes in 3.0 = 65 + 66 +(% style="color:#e74c3c" %)Version(%%) 3.0 introduces breaking changes into the web services API, transmission formats and information model. A summary is given in the table below. 67 + 68 +== 2.1 Web Services API == 69 + 70 +(% style="width:948.039px" %) 71 +|**REST API**|(% style="width:818px" %)((( 72 +The REST API is not backwardly compatible due to modifications to the URLs and query parameters resulting in breaking changes in four of the five main resources: 73 + 74 +* Structure queries 75 +* Data queries 76 +* Metadata queries 77 +* Availability queries 78 + 79 +Schema queries are backwardly compatible. 80 + 81 +//Guidance for implementors// 82 + 83 +REST API implementors may provide partial backward compatibility by using web server URL rewriting rules to translate (% style="color:#e74c3c" %)version(%%) 2.1 structure queries to the 3.0 equivalent. 84 + 85 +Implementors are also recommended to (% style="color:#e74c3c" %)version(%%) their API services providing users with an explicit choice of which (% style="color:#e74c3c" %)version(%%) to use. 86 +))) 87 +|**SOAP API**|(% style="width:818px" %)The SOAP API has been deprecated. 88 + 89 +== 2.2 Transmission Formats == 90 + 91 +((( 92 +(% style="width:952.039px" %) 93 +|(% style="width:130px" %)**SDMX-ML**|(% style="width:820px" %)((( 94 +The following legacy XML data messages have been deprecated: 95 + 96 +[[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Generic (time-series) data message 97 +[[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Compact (time-series) data message 98 +[[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Utility (time-series) data message 99 +[[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Cross-Sectional data message [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 2.1 Generic data messages (for observations, time-series and cross-sectional data) 100 + 101 +Structure Specific is the only data message option in (% style="color:#e74c3c" %)version(%%) 3.0 but is not backwardly compatible with (% style="color:#e74c3c" %)version(%%) 2.1 due to several changes including deprecation of the option to reference structures like the [[DSD>>doc:Glossary.Data structure definition.WebHome]], [[Dataflow>>doc:Glossary.Dataflow.WebHome]] and [[Provision Agreement>>doc:Glossary.Provision agreement.WebHome]] using their Agency, ID and (% style="color:#e74c3c" %)Version(%%). The time series variant of the message has also been deprecated. 102 + 103 +The [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] structure message is not backwardly compatible primarily due to: 104 + 105 +* Changes to the information model 106 +* Changes to the way the structures are organised into ‘collections’ within the message 107 +* Deprecation of the Agency, ID, (% style="color:#e74c3c" %)Version(%%) option for referencing of structures in messages 108 +))) 109 +|(% style="width:130px" %)**SDMX-JSON**|(% style="width:820px" %)((( 110 +The JSON data message is not backwardly compatible with (% style="color:#e74c3c" %)version(%%) 2.1 primarily due to changes needed to support the improved REST API data queries, in particular the ability to retrieve in one operation data from multiple [[datasets>>doc:Glossary.Data set.WebHome]] with potentially different Data Structure Definitions. 111 + 112 +The JSON structure message is not backwardly compatible primarily due to: 113 + 114 +* Changes to the information model 115 +* Changes to the way the structures are organised into ‘collections’ within the message 116 +* Deprecation of the Agency, ID, (% style="color:#e74c3c" %)Version(%%) option for referencing of structures in messages 117 +))) 118 +|(% style="width:130px" %)**SDMX-EDI**|(% style="width:820px" %)The EDI format for both structures and data has been deprecated. 119 +|(% style="width:130px" %)**SDMX-CSV**|(% style="width:820px" %)The CSV data and [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] messages are not backwardly compatible with those under (% style="color:#e74c3c" %)version(%%) 2.1 due to changes to the structure of the messages needed to support new features such as the improved REST API data queries. 120 +))) 121 + 122 +== 2.3 Information Model == 123 + 124 +((( 125 +(% style="width:955.039px" %) 126 +|(% style="width:132px" %)**Data Structure Definition**|(% style="width:819px" %)((( 127 +The (% style="color:#e74c3c" %)version(%%) 3.0 [[Data Structure Definition>>doc:Glossary.Data structure definition.WebHome]] ([[DSD>>doc:Glossary.Data structure definition.WebHome]]) model is not directly backwardly compatible with 2.1 primarily due to the deprecation of the special MeasureDimension. 128 + 129 +//Conversion guidance for implementors// 130 + 131 +(% style="color:#e74c3c" %)Version(%%) 2.1 DSDs can be converted to the 3.0 model by creating a [[measure>>doc:Glossary.Measure.WebHome]] with the “[[MEASURE>>doc:Glossary.Measure.WebHome]]” (% style="color:#e74c3c" %)concept(%%) role applied as described in paragraph 3.5. 132 + 133 +(% style="color:#e74c3c" %)Version(%%) 3.0 DSDs cannot be reliably converted to the 2.1 model due to the introduction of new features such as multiple [[measures>>doc:Glossary.Measure.WebHome]] and value arrays for [[measures>>doc:Glossary.Measure.WebHome]] and [[attributes>>doc:Glossary.Attribute.WebHome]]. 134 +))) 135 +|(% style="width:132px" %)**Structure mapping model**|(% style="width:819px" %)((( 136 +The structure mapping model has changed significantly in (% style="color:#e74c3c" %)version(%%) 3.0 with deprecation of the [[Structure Set>>doc:Glossary.Structure set.WebHome]] [[maintainable artefact>>doc:Glossary.Maintainable artefact.WebHome]] and introduction of five new ones: [[Representation>>doc:Glossary.Representation.WebHome]] (% style="color:#e74c3c" %)Map(%%) and four variants of [[item scheme>>doc:Glossary.Item scheme.WebHome]] (% style="color:#e74c3c" %)map(%%). 137 + 138 +//Conversion guidance for implementors// 139 + 140 +(% style="color:#e74c3c" %)Version(%%) 2.1 [[structure sets>>doc:Glossary.Structure set.WebHome]] can be practically converted to the (% style="color:#e74c3c" %)version(%%) 3.0 structure mapping model. 141 + 142 +Conversion from the (% style="color:#e74c3c" %)version(%%) 3.0 structure mapping model to 2.1 is generally possible. However, when attempting to convert mapping rules from 2.1 to 3.0 and back to 2.1, the resulting [[Structure Set>>doc:Glossary.Structure set.WebHome]] will not be precisely the same as the original. In converting to (% style="color:#e74c3c" %)version(%%) 3.0, the system must generate IDs for each of the new [[maintainable artefacts>>doc:Glossary.Maintainable artefact.WebHome]], but details of the original [[Structure Set>>doc:Glossary.Structure set.WebHome]] [[artefacts>>doc:Glossary.Artefact.WebHome]] are lost. 143 +))) 144 +|(% style="width:132px" %)**Reference metadata model**|(% style="width:819px" %)((( 145 +The [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] model has changed in (% style="color:#e74c3c" %)version(%%) 3.0 with modifications to the role of the [[Data Structure Definition>>doc:Glossary.Data structure definition.WebHome]], [[Metadata Structure Definition>>doc:Glossary.Metadata structure definition.WebHome]] and [[Metadataflow>>doc:Glossary.Metadataflow.WebHome]] [[artefacts>>doc:Glossary.Artefact.WebHome]]. Metadata [[Provision Agreement>>doc:Glossary.Provision agreement.WebHome]] and Metadata Provider Scheme have been added. Metadatasets are now identifiable. 146 + 147 +(% style="color:#e74c3c" %)Version(%%) 2.1 [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] models are not valid in (% style="color:#e74c3c" %)version(%%) 3.0. 148 + 149 +//Conversion guidance for implementors// 150 + 151 +A (% style="color:#e74c3c" %)version(%%) 2.1 [[Metadata Structure Definition>>doc:Glossary.Metadata structure definition.WebHome]] can be converted to the (% style="color:#e74c3c" %)version(%%) 3.0 model under some circumstances, but target information is either lost or has to be translated into a [[metadataflow>>doc:Glossary.Metadataflow.WebHome]]. Further, conversion of a [[Data Structure Definition>>doc:Glossary.Data structure definition.WebHome]] for collecting [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] against a [[dataset>>doc:Glossary.Data set.WebHome]] would need to make changes to the [[dataset>>doc:Glossary.Data set.WebHome]]’s [[Data Structure Definition>>doc:Glossary.Data structure definition.WebHome]]. As the [[Data Structure Definition>>doc:Glossary.Data structure definition.WebHome]] may not actually be specified, judgement would need to be taken, perhaps determining the most likely candidate by examining which already have metadata reported against their [[datasets>>doc:Glossary.Data set.WebHome]]. A 2.1 metadata report could be converted to a (% style="color:#e74c3c" %)version(%%) 3.0 Metadataset if it is attached to a structure, but requires a Metadata [[Provision Agreement>>doc:Glossary.Provision agreement.WebHome]] which would need to be created if not already in existence. 152 + 153 +Conversion from the (% style="color:#e74c3c" %)version(%%) 3.0 model to (% style="color:#e74c3c" %)version(%%) 2.1 cannot be performed reliably. The process would need target information to be derived from analysis of the [[Metadataflows>>doc:Glossary.Metadataflow.WebHome]] and Metadata [[Provision Agreements>>doc:Glossary.Provision agreement.WebHome]]. Depending on the complexity it may not be possible to express that information in a (% style="color:#e74c3c" %)version(%%) 2.1 [[Data Structure Definition>>doc:Glossary.Data structure definition.WebHome]]. 154 +))) 155 +|(% style="width:132px" %)**Constraint model**|(% style="width:819px" %)((( 156 +The (% style="color:#e74c3c" %)version(%%) 2.1 Content (% style="color:#e74c3c" %)Constraint(%%) [[artefact>>doc:Glossary.Artefact.WebHome]] has been deprecated in (% style="color:#e74c3c" %)version(%%) 3.0 and replaced by the Data (% style="color:#e74c3c" %)Constraint(%%) for data, and the Metadata (% style="color:#e74c3c" %)Constraint(%%) for reference metadata. 157 + 158 +//Conversion guidance for implementors// 159 + 160 +2.1 Content (% style="color:#e74c3c" %)Constraints(%%) can be converted without loss to the equivalent (% style="color:#e74c3c" %)version(%%) 3.0 Data (% style="color:#e74c3c" %)Constraint(%%) model. 161 + 162 +Conversion from 3.0 to 2.1 presents challenges where wildcards have been used, in those cases requiring expansion of the wildcard into explicit values. 163 +))) 164 +|(% style="width:132px" %)**Hierarchical codelist structures**|(% style="width:819px" %)((( 165 +The (% style="color:#e74c3c" %)version(%%) 2.1 Hierarchical Codelist [[artefact>>doc:Glossary.Artefact.WebHome]] has been deprecated in (% style="color:#e74c3c" %)version(%%) 3.0 and replaced by two new [[artefacts>>doc:Glossary.Artefact.WebHome]], [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] and [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] Association. 166 + 167 +//Conversion guidance for implementors// 168 + 169 +(% style="color:#e74c3c" %)Version(%%) 2.1 Hierarchical Codelists can be successfully converted to the (% style="color:#e74c3c" %)version(%%) 3.0 [[hierarchy>>doc:Glossary.Hierarchy.WebHome]] model. Information on which [[artefacts>>doc:Glossary.Artefact.WebHome]] to link the [[hierarchies>>doc:Glossary.Hierarchy.WebHome]] to on what context would need to be added as a separate procedure. 170 + 171 +Conversion from the (% style="color:#e74c3c" %)version(%%) 3.0 model to (% style="color:#e74c3c" %)version(%%) 2.1 is possible, but with loss of the linking information 172 +))) 173 +))) 174 + 175 += 3 Information Model = 176 + 177 +== 3.1 Version 3.0 Information Model == 178 + 179 +[[image:SDMX 3-0-0 Major Changes FINAL-1.0_en_6fc573fe.png||height="404" width="718"]] 180 + 181 +//Figure 1 Version 3.0 simplified Information Model UML class diagram with ‘heat map’ illustrating the areas with most change// 182 + 183 +The schematic above is a simplified UML class diagram of the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] 3.0 information model illustrating the major areas of change as a ‘heat (% style="color:#e74c3c" %)map(%%)’. Darker colours indicate where new structures have been added in (% style="color:#e74c3c" %)version(%%) 3.0 or where structures have been significantly changed. 184 + 185 +A number of ancillary structures including organisation schemes, process and [[reporting taxonomy>>doc:Glossary.Reporting taxonomy.WebHome]] are unchanged and have not been shown. Similarly, Organisation Scheme (% style="color:#e74c3c" %)Map(%%) and [[Reporting Taxonomy>>doc:Glossary.Reporting taxonomy.WebHome]] (% style="color:#e74c3c" %)Map(%%) have been omitted for simplicity. A schematic of the 2.1 model is given in Appendix A for comparison purposes. 186 + 187 +== 3.2 Key Changes from Version 2.1 == 188 + 189 +New Maintainable Artefacts 190 + 191 +* Structure (% style="color:#e74c3c" %)Map 192 +* [[Representation>>doc:Glossary.Representation.WebHome]] (% style="color:#e74c3c" %)Map 193 +* Organisation Scheme (% style="color:#e74c3c" %)Map 194 +* (% style="color:#e74c3c" %)Concept(%%) Scheme (% style="color:#e74c3c" %)Map 195 +* Category Scheme (% style="color:#e74c3c" %)Map 196 +* Reporting Taxonomy (% style="color:#e74c3c" %)Map 197 +* Value List 198 +* [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] 199 +* [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] Association 200 +* Metadata (% style="color:#e74c3c" %)Constraint 201 +* Data (% style="color:#e74c3c" %)Constraint 202 +* Metadata Provision Agreement 203 +* Metadata Provider Scheme 204 +* Metadataset 205 + 206 +New Identifiable Artefacts 207 + 208 +* GeoFeatureSetCode 209 +* GeoGridCode 210 +* Metadata Provider 211 + 212 +Removed Maintainable Artefacts 213 + 214 +* Structure Set – replaced by Structure (% style="color:#e74c3c" %)Map(%%) and the four [[item scheme>>doc:Glossary.Item scheme.WebHome]] maps 215 +* Hierarchical Codelist – replaced by [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] and [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] Association 216 +* (% style="color:#e74c3c" %)Constraint(%%) – replaced by Data (% style="color:#e74c3c" %)Constraint(%%) and Metadata (% style="color:#e74c3c" %)Constraint 217 + 218 +Changed Maintainable Artefacts 219 + 220 +* Data Structure Definition – support for microdatasets and [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] linked to data 221 +* Metadataflow – simplifies exchange of [[reference metadata>>doc:Glossary.Reference metadata.WebHome]], in particular those linked to structures 222 +* Metadata Structure Definition – simplified model for [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] 223 +* Codelist – support for codelist extension and geospatial specialised codelists (GeographicCodelist, GeoGridCodelist) 224 +* [[VTL>>doc:Glossary.Validation and transformation language.WebHome]] Mapping Scheme – [[VTL>>doc:Glossary.Validation and transformation language.WebHome]] (% style="color:#e74c3c" %)Concept(%%) Mapping Scheme removed to align the [[VTL>>doc:Glossary.Validation and transformation language.WebHome]] / [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] interface with the 3.0 model 225 + 226 +New [[Component>>doc:Glossary.Component.WebHome]] [[Representation>>doc:Glossary.Representation.WebHome]] Types 227 + 228 +* GeospatialInformation – a string type where the value is an expression defining a set of geographical features using a purpose-designed syntax 229 + 230 +== 3.3 Areas Unchanged from Version 2.1 == 231 + 232 +The following areas of the information model are unchanged from (% style="color:#e74c3c" %)version(%%) 2.1: 233 + 234 +* Categories 235 +* Concepts 236 +* Data providers 237 +* Agencies 238 +* Data consumers 239 +* [[VTL>>doc:Glossary.Validation and transformation language.WebHome]] transformation and expressions – with the exception of [[VTL>>doc:Glossary.Validation and transformation language.WebHome]] mapping scheme as already noted 240 +* Reporting taxonomy 241 +* Process 242 + 243 +== 3.4 Reference Metadata == 244 + 245 +[[Reference metadata>>doc:Glossary.Reference metadata.WebHome]] has been substantially re-designed for (% style="color:#e74c3c" %)version(%%) 3.0 to simplify the model and better support practical use cases. 246 + 247 +(% class="wikigeneratedid" id="HSimplifyMetadataStructureDefinition" %) 248 +**Simplify Metadata Structure Definition** 249 +The [[Metadata Structure Definition>>doc:Glossary.Metadata structure definition.WebHome]] ([[MSD>>doc:Glossary.Metadata structure definition.WebHome]]) has been simplified to remove target information, and the support of multiple report structures. The [[MSD>>doc:Glossary.Metadata structure definition.WebHome]] now only contains Metadata [[Attributes>>doc:Glossary.Attribute.WebHome]] which are used to define the structure of a report. 250 + 251 +[[image:SDMX 3-0-0 Major Changes FINAL-1.0_en_ad5f5c97.png||height="346" width="494"]] 252 + 253 +//Figure 2 version 2.1 Metadata Structure Definition (MSD)// 254 + 255 +[[image:SDMX 3-0-0 Major Changes FINAL-1.0_en_f2695ed5.png||height="172" width="374"]] 256 + 257 +//Figure 3 the simplified version 3.0 MSD// 258 + 259 +(% class="wikigeneratedid" id="HChangetoreferencemetadatareportedagainstdata" %) 260 +**Change to reference metadata reported against data** 261 + 262 +(% class="wikigeneratedid" id="HChangetoreferencemetadatareportedagainstdata" %) 263 +[[Reference metadata>>doc:Glossary.Reference metadata.WebHome]] associated with [[datasets>>doc:Glossary.Data set.WebHome]], data series or observations are now reported with the data. The [[dataset>>doc:Glossary.Data set.WebHome]]’s [[DSD>>doc:Glossary.Data structure definition.WebHome]] must reference an [[MSD>>doc:Glossary.Metadata structure definition.WebHome]] to define the structure of its [[reference metadata>>doc:Glossary.Reference metadata.WebHome]]. In practice [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] for data are transmitted as part of the data message. The metadata [[attributes>>doc:Glossary.Attribute.WebHome]] are treated in a similar way to the data [[attributes>>doc:Glossary.Attribute.WebHome]] appearing in the message at the [[dataset>>doc:Glossary.Data set.WebHome]], data series or individual observation (% style="color:#e74c3c" %)level(%%) as appropriate. In contrast to simple data [[attributes>>doc:Glossary.Attribute.WebHome]], metadata [[attributes>>doc:Glossary.Attribute.WebHome]] defined by an [[MSD>>doc:Glossary.Metadata structure definition.WebHome]] can be organised into a hierarchical structure as illustrated in Figure 3 above. For this reason, metadata [[attributes>>doc:Glossary.Attribute.WebHome]] appear in data messages structured in the same way as metadata messages. 264 + 265 +The [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] example below is an excerpt from a structure specific data message illustrating reporting of [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] with a hierarchical structure at the observation (% style="color:#e74c3c" %)level(%%). 266 + 267 +For completeness, the excerpt also shows: 268 + 269 +* OBS_STATUS – a simple observation-(% style="color:#e74c3c" %)level(%%) data [[attribute>>doc:Glossary.Attribute.WebHome]] 270 +* TITLE – a multi-lingual data [[attribute>>doc:Glossary.Attribute.WebHome]] 271 +* SOURCE_AGENCY – a multi-value data [[attribute>>doc:Glossary.Attribute.WebHome]] 272 + 273 +> <Obs xsi:type="dsd:ObsType" OBS_VALUE="112" OBS_STAUS=”A” TIME_PERIOD="2010-09"> 274 +> <!—- complex multi-value and multi-lingual data attributes ~-~-> 275 +> <Comp id="TITLE" xsi:type="ns1:TITLE_ATTRIBUTE"> 276 +> <Value> 277 +> <common:Text xml:lang="en">Some English Text</common:Text> 278 +> <common:Text xml:lang="fr">Quelques textes en anglais</common:Text> 279 +> </Value> 280 +> </Comp> 281 +> <Comp id="SOURCE_AGENCY" xsi:type="ns1:SOURCE_AGENCY_ATTRIBUTE"> 282 +> <Value>4F0</Value> 283 +> <Value>4D0</Value> 284 +> <Value>CZ2</Value> 285 +> </Comp> 286 +> <!—- metadata attributes are reported like in metadata messages ~-~-> 287 +> <Metadata> 288 +> <Attribute id="COLLECTION"> 289 +> <Attribute id="METHOD"> 290 +> <Text lang="en">AAA</Text> 291 +> </Attribute> 292 +> </Attribute> 293 +> <Attribute id="CONTACT"> 294 +> <Value>CONTACT 1</Value> 295 +> <Attribute id="NAME"> 296 +> <Value>Contact 1 Name 1</Value> 297 +> </Attribute> 298 +> <Attribute id="NAME"> 299 +> <Value>Contact 1 Name 2</Value> 300 +> </Attribute> 301 +> </Attribute> 302 +> <Attribute id="CONTACT"> 303 +> <Value>CONTACT 2</Value> 304 +> <Attribute id="NAME"> 305 +> <Value>Contact 2 Name 1</Value> 306 +> </Attribute> 307 +> <Attribute id="NAME"> 308 +> <Value>Contact 2 Name 2</Value> 309 +> </Attribute> 310 +> </Attribute> 311 +> </Metadata> 312 +> </Obs> 313 + 314 +(% class="wikigeneratedid" id="HNew-MetadataProvisionAgreement" %) 315 +**New - Metadata Provision Agreement** 316 + 317 +(% class="wikigeneratedid" id="HNew-MetadataProvisionAgreement" %) 318 +In (% style="color:#e74c3c" %)version(%%) 2.1 a [[Provision Agreement>>doc:Glossary.Provision agreement.WebHome]] could be used to report information against a [[Dataflow>>doc:Glossary.Dataflow.WebHome]] or [[Metadataflow>>doc:Glossary.Metadataflow.WebHome]]. From (% style="color:#e74c3c" %)version(%%) 3.0 this is managed by two separate structures, the Data [[Provision Agreement>>doc:Glossary.Provision agreement.WebHome]] and the Metadata [[Provision Agreement>>doc:Glossary.Provision agreement.WebHome]]. 319 + 320 +(% class="wikigeneratedid" id="HMovetargettoMetadataflowandMetadataProvisionAgreement" %) 321 +**Move target to Metadataflow and Metadata Provision Agreement** 322 +For [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] that is reported against structures, the allowable targets information which is used to specify what structures the [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] can be reported against, has moved to the [[Metadataflow>>doc:Glossary.Metadataflow.WebHome]] and can be further refined in the Metadata [[Provision Agreement>>doc:Glossary.Provision agreement.WebHome]]. 323 + 324 +(% class="wikigeneratedid" id="HAddmaintainablepropertiestoreferencemetadata" %) 325 +**Add maintainable properties to reference metadata** 326 +A Metadataset now has mandatory identification information, (owner id, id, (% style="color:#e74c3c" %)version(%%)) enabling metadata providers to uniquely identify their reports for create, update or delete maintenance operations. 327 + 328 +== 3.5 Microdata Exchange == 329 + 330 +Several changes have been made the [[Data Structure Definition>>doc:Glossary.Data structure definition.WebHome]] to support microdata use cases in addition to aggregated time series. 331 + 332 +(% class="wikigeneratedid" id="HMultiplemeasures" %) 333 +**Multiple measures**Multiple [[measures>>doc:Glossary.Measure.WebHome]] are a common characteristic of microdatasets. To support this use case, the MeasureDimension has been deprecated and replaced with the option to define zero or more [[measures>>doc:Glossary.Measure.WebHome]]. [[Measures>>doc:Glossary.Measure.WebHome]] now act like any other [[component>>doc:Glossary.Component.WebHome]] in that they use (% style="color:#e74c3c" %)concepts(%%), can have their own local coded or uncoded [[representation>>doc:Glossary.Representation.WebHome]] defined within the [[Data Structure Definition>>doc:Glossary.Data structure definition.WebHome]], and can be either mandatory or conditional. Creating a [[measure>>doc:Glossary.Measure.WebHome]] with the “[[MEASURE>>doc:Glossary.Measure.WebHome]]” (% style="color:#e74c3c" %)concept(%%) role applied emulates the (% style="color:#e74c3c" %)version(%%) 2.1 MeasureDimension behaviour as illustrated in the [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] example below: 334 + 335 +> <str:MeasureList id=”MeasureDescriptor”> 336 +> <str:Measure id=”OBS_VALUE” minOccurs=”1” maxOccurs=”1” usage=”mandatory” > <str:ConceptIdentity> 337 +> <Ref id=”OBS_VALUE” maintainableParentID=”CONCEPTS” agencyID=”SDMX” maintainableParentVersion=”1.0.0” /> 338 +> </str:ConceptIdentity> 339 +> <str:LocalRepresentation> 340 +> <str:TextFormat textType=”String” isMultiLingual=”true” /> 341 +> </str:LocalRepresentation> 342 +> <str:ConceptRole> 343 +> <Ref id=”MEASURE” maintainableParentID=”SDMX_CONCEPT_ROLES” agencyID=”SDMX” maintainableParentVersion=”1.0.0” /> 344 +> </str:ConceptRole> 345 +> </str:Measure> 346 +> ... 347 +> <str:Measure> 348 +> </str:MeasureList> 349 + 350 +(% class="wikigeneratedid" id="HMulti-valuemeasuresandattributes" %) 351 +**Multi-value measures and attributes** 352 +Both [[measures>>doc:Glossary.Measure.WebHome]] and [[attributes>>doc:Glossary.Attribute.WebHome]] have been extended with the option to take ‘arrays’ of 193 multiple coded or uncoded values. This supports use cases like multiple observation 194 status flags. New //minOccurs// and //maxOccurs// properties define the valid number of 195 values. The //usage// property separately defines whether the [[measure>>doc:Glossary.Measure.WebHome]] or [[attribute>>doc:Glossary.Attribute.WebHome]] is //mandatory// or optional. In the [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] [[measure>>doc:Glossary.Measure.WebHome]] example above, the properties //minOccurs=”1” maxOccurs=”1” usage=”mandatory”// specify that OBS_VALUE must be 198 reported, and can only consist of a single value. 353 + 354 +(% class="wikigeneratedid" id="HAttributesrelationshiptomeasures" %) 355 +**Attributes relationship to measures** 356 +In addition to attaching [[attributes>>doc:Glossary.Attribute.WebHome]] to a specific (% style="color:#e74c3c" %)level(%%) within the [[dataset>>doc:Glossary.Data set.WebHome]], their relationship 202 to [[measures>>doc:Glossary.Measure.WebHome]] can also be defined. 357 + 358 +(% class="wikigeneratedid" id="HValuelists" %) 359 +**Value lists** 360 +Value lists help in modelling microdata by providing an enumeration similar to [[code lists>>doc:Glossary.Code list.WebHome]] 206 but allowing any string values without being restricted to the rules of [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] identifiers. That allows ValueItems (the equivalent to [[Code>>doc:Glossary.Code.WebHome]]) to contain symbols like ‘¥’ and ‘€’, but also means they are not identifiable. 361 + 362 +== 3.6 Geospatial Data Exchange == 363 + 364 +The (% style="color:#e74c3c" %)version(%%) 3.0 model has been extended to provide explicit support for geospatial data. 365 + 366 +(% class="wikigeneratedid" id="HGeospatialInformationtype" %) 367 +**GeospatialInformation type** 368 +A new GeospatialInformation string type has been added which can be used as the [[representation>>doc:Glossary.Representation.WebHome]] for any [[dimension>>doc:Glossary.Dimension.WebHome]], [[attribute>>doc:Glossary.Attribute.WebHome]] or measure [[component>>doc:Glossary.Component.WebHome]]. The value which is a string expression conforming to the syntax defined in Section 6 of the technical specifications precisely defines a ‘Geo Feature Set’ – a collection of geographical features like points, lines or polygons. Its use is recommended in conjunction with the “GEO_FEATURE_SET” (% style="color:#e74c3c" %)concept(%%) role. 369 + 370 +(% class="wikigeneratedid" id="HGeospatialcodelists" %) 371 +**Geospatial code lists** 372 + 373 +(% class="wikigeneratedid" id="HGeospatialcodelists" %) 374 +Two new specialised types of [[code list>>doc:Glossary.Code list.WebHome]] have been added where the definition of each [[code>>doc:Glossary.Code.WebHome]] includes additional geospatial information in addition to the standard ID, name and description: 375 + 376 +* GeographicCodelist – each item includes an element to represent a specific Geo Feature Set which is described using the same expression syntax as for GeospatialInformation type. 377 +* GeoGridCodelist – A [[code list>>doc:Glossary.Code list.WebHome]] defining a geographical grid composed of cells representing regular squared portions of the Earth. Each item references a cell within the grid. 378 + 379 +== 3.7 Structure Mapping == 380 + 381 +The [[Structure Set>>doc:Glossary.Structure set.WebHome]] in (% style="color:#e74c3c" %)version(%%) 2.1 is a container for many mapping structures including Data Structure (% style="color:#e74c3c" %)Map(%%), Codelist (% style="color:#e74c3c" %)Map(%%) and (% style="color:#e74c3c" %)Concept(%%) (% style="color:#e74c3c" %)Map(%%). For (% style="color:#e74c3c" %)version(%%) 3.0 the [[Structure Set>>doc:Glossary.Structure set.WebHome]] [[artefact>>doc:Glossary.Artefact.WebHome]] has been deprecated and replaced with a number of new maintainables giving better flexibility and reusability, specifically: Structure (% style="color:#e74c3c" %)Map(%%), [[Concept Scheme>>doc:Glossary.Concept scheme.WebHome]] (% style="color:#e74c3c" %)Map(%%), [[Representation>>doc:Glossary.Representation.WebHome]] (% style="color:#e74c3c" %)Map(%%), [[Reporting Taxonomy>>doc:Glossary.Reporting taxonomy.WebHome]] (% style="color:#e74c3c" %)Map(%%), [[Category Scheme>>doc:Glossary.Category scheme.WebHome]] (% style="color:#e74c3c" %)Map(%%) and Organisation Scheme (% style="color:#e74c3c" %)Map(%%). 382 + 383 +The (% style="color:#e74c3c" %)version(%%) 2.1 Codelist (% style="color:#e74c3c" %)Map(%%) been replaced with [[Representation>>doc:Glossary.Representation.WebHome]] (% style="color:#e74c3c" %)Map(%%) which allows mappings to be defined between any combination of [[Code Lists>>doc:Glossary.Code list.WebHome]], Value Lists and noncoded [[representations>>doc:Glossary.Representation.WebHome]] such as text strings and numbers. 384 + 385 +(% class="wikigeneratedid" id="HMany-to-manysourceandtargetcomponents" %) 386 +**Many-to-many source and target components** 387 +Structure mapping rules may be defined with both multiple source [[components>>doc:Glossary.Component.WebHome]] and multiple target [[components>>doc:Glossary.Component.WebHome]] in contrast to (% style="color:#e74c3c" %)version(%%) 2.1 where only one source and target was allowed. That supports many-to-many (n-n) mapping use cases where the output of a mapping rule may be dependent on the combination of a number of input [[components>>doc:Glossary.Component.WebHome]]. For instance: 388 + 389 +Set the output [[component>>doc:Glossary.Component.WebHome]] INDICATOR=”DE_A” if the input [[components>>doc:Glossary.Component.WebHome]] are FREQ=”A” and REF_AREA=”DE”. 390 + 391 +Similarly, an n-n rule may also set the values of any number of output [[components>>doc:Glossary.Component.WebHome]]: 392 + 393 +Set the output [[components>>doc:Glossary.Component.WebHome]] FREQ=”A”, REF_AREA=”DE” if the input [[component>>doc:Glossary.Component.WebHome]] INDICATOR=”DE_A”. 394 + 395 +**Fixed source and target** 396 +The Structure (% style="color:#e74c3c" %)Map(%%) may now define input or output [[components>>doc:Glossary.Component.WebHome]] which have a fixed value. 397 + 398 +(% class="wikigeneratedid" id="HTimerepresentationsmapping" %) 399 +**Time representations mapping** 400 +Non [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] time [[representations>>doc:Glossary.Representation.WebHome]] may now be described in a Structure (% style="color:#e74c3c" %)Map(%%), allowing them to be (% style="color:#e74c3c" %)mapped(%%) into [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] [[time formats>>doc:Glossary.Time format.WebHome]]. 401 + 402 +(% class="wikigeneratedid" id="HRegularexpressionandsubstringmappings" %) 403 +**Regular expression and substring mappings** 404 +All item (% style="color:#e74c3c" %)maps(%%) allow the use of regular expressions and substrings to match source values, specifically: [[Concept Scheme>>doc:Glossary.Concept scheme.WebHome]] (% style="color:#e74c3c" %)Map(%%), [[Reporting Taxonomy>>doc:Glossary.Reporting taxonomy.WebHome]] (% style="color:#e74c3c" %)Map(%%), [[Category Scheme>>doc:Glossary.Category scheme.WebHome]] (% style="color:#e74c3c" %)Map(%%) and Organisation Scheme (% style="color:#e74c3c" %)Map(%%). 405 + 406 +(% class="wikigeneratedid" id="HItemmapsvalidityperiod" %) 407 +**Item maps validity period** 408 +Item (% style="color:#e74c3c" %)maps(%%) may further define the period for which the mapping is valid, meaning the mapping rule will only be applied if the row of information being (% style="color:#e74c3c" %)mapped(%%) is within the period. 409 + 410 +== 3.8 Constraints == 411 + 412 +(% style="color:#e74c3c" %)Constraints(%%) in (% style="color:#e74c3c" %)version(%%) 3.0 are modelled using two separate [[artefacts>>doc:Glossary.Artefact.WebHome]] which replace the (% style="color:#e74c3c" %)version(%%) 2.1 content (% style="color:#e74c3c" %)constraint(%%): 413 + 414 +* data (% style="color:#e74c3c" %)constraint(%%) for data; and 415 +* metadata (% style="color:#e74c3c" %)constraint(%%) for [[reference metadata>>doc:Glossary.Reference metadata.WebHome]]. 416 + 417 +Metadata (% style="color:#e74c3c" %)constraint(%%) differs from its data counterpart in having a simplified cube region model better suited to [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] reporting use cases and not carrying details of the constrained targets – that information instead being defined directly within the [[metadataflow>>doc:Glossary.Metadataflow.WebHome]] and Metadata [[Provision Agreement>>doc:Glossary.Provision agreement.WebHome]]. Thus, metadata related (% style="color:#e74c3c" %)constraints(%%) only specify (% style="color:#e74c3c" %)constraints(%%) to the values of metadata attributes. 418 + 419 +The ‘%’ wildcard character can now be used when defining cube region (% style="color:#e74c3c" %)constraints(%%) to match multiple [[codes>>doc:Glossary.Code.WebHome]] with a single expression, for instance for [[economic activity>>doc:Glossary.Economic activity.WebHome]], ISIC4_% matches all [[codes>>doc:Glossary.Code.WebHome]] beginning with ‘ISIC4_’ avoiding the need to maintain an explicit list. 420 + 421 +The validity period definition has been moved from the (% style="color:#e74c3c" %)constraint(%%) to the individual constraining terms, specifically CubeRegion, DataKeySet and MetadataTargetRegion providing more granular control. 422 + 423 +Attachment (% style="color:#e74c3c" %)constraints(%%) have been deprecated due to a lack of use cases. 424 + 425 +== 3.9 Code List Extension == 426 + 427 +In addition to the two new specialised geospatial forms, the option has been added to define a [[code list>>doc:Glossary.Code list.WebHome]] as an extension of, or by inheriting [[codes>>doc:Glossary.Code.WebHome]] from, other lists. An optional prefix can be added to inherited [[codes>>doc:Glossary.Code.WebHome]] to disambiguate duplicates. 428 + 429 +This feature allows new [[code lists>>doc:Glossary.Code list.WebHome]] to be easily derived from existing lists without the need to make and manually maintain copies. When querying for extended [[code list>>doc:Glossary.Code list.WebHome]] structures using the REST API, the option has been added to retrieve either the definition or the materialised list. Traditional literal lists of [[codes>>doc:Glossary.Code.WebHome]] continue to be supported. 430 + 431 +== 3.10 Discriminated Union of Code Lists == 432 + 433 +Combining [[code list>>doc:Glossary.Code list.WebHome]] extension with wildcarded (% style="color:#e74c3c" %)constraints(%%) solves the discriminated union of [[code lists>>doc:Glossary.Code list.WebHome]] problem where a classification or breakdown has multiple “variants” which are all valid but mutually exclusive. A common example is [[economic activity>>doc:Glossary.Economic activity.WebHome]] where several alternative classification schemes are in use including ISIC revisions 1 to 4 and NACE as used in the European Community. 434 + 435 +== 3.11 Code Hierarchies == 436 + 437 +[[Code>>doc:Glossary.Code.WebHome]] [[hierarchies>>doc:Glossary.Hierarchy.WebHome]] allow the definition of complex [[hierarchies>>doc:Glossary.Hierarchy.WebHome]] of [[codes>>doc:Glossary.Code.WebHome]] from potentially multiple lists for data discovery purposes. Hierarchical Codelist has been deprecated and replaced by two new [[artefacts>>doc:Glossary.Artefact.WebHome]]: [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] – the actual [[hierarchy>>doc:Glossary.Hierarchy.WebHome]] of [[codes>>doc:Glossary.Code.WebHome]], and [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] Association links [[hierarchies>>doc:Glossary.Hierarchy.WebHome]] directly to any other identifiable object, a capability missing from the (% style="color:#e74c3c" %)version(%%) 2.1 model. Further, the linkage can be within a particular context, for instance linking a [[hierarchy>>doc:Glossary.Hierarchy.WebHome]] to a [[dimension>>doc:Glossary.Dimension.WebHome]] within the context of a specific [[Dataflow>>doc:Glossary.Dataflow.WebHome]] ([[dimension>>doc:Glossary.Dimension.WebHome]] REF_AREA in the context of the ECB:EXR [[Dataflow>>doc:Glossary.Dataflow.WebHome]]). 438 + 439 += 4 Versioning of Structural Metadata Artefacts = 440 + 441 +(% style="color:#e74c3c" %)Version(%%) 3.0 adopts semantic versioning principles for versioning of metadata [[artefacts>>doc:Glossary.Artefact.WebHome]] following the rules set out at __[[https:~~/~~/semver.org>>https://semver.org]] __However, this is not mandatory, and organisations may continue to use the pre-existing two-digit versioning strategy, or not to (% style="color:#e74c3c" %)version(%%) [[artefacts>>doc:Glossary.Artefact.WebHome]] by omitting the (% style="color:#e74c3c" %)//version//(%%) property. The (% style="color:#e74c3c" %)version(%%) number no longer defaults to 1.0 if not explicitly set. 442 + 443 +Semantic (% style="color:#e74c3c" %)version(%%) numbers are three digits: 444 + 445 +MAJOR.MINOR.PATCH 446 + 447 +Where 448 + 449 +* The first digit (major) indicates that changes (either new features or bug fixes) are not backward compatible. 450 +* The second digit (minor) indicates that features have been added in a backward compatible manner. 451 +* The third digit (patch) indicates that bugs have been fixed in a backward compatible manner. 452 + 453 +Examples: 454 + 455 +SDMX:CL_AREA(1.0.0) 456 +SDMX:CL_AREA(2.3.2) 457 + 458 +(% class="wikigeneratedid" id="HDependencymanagement" %) 459 +**Dependency management** 460 + 461 +Additional constructs are possible for dependency management when referencing structures. For instance: 462 + 463 +2.3+.1 Means the currently latest available (% style="color:#e74c3c" %)version(%%) >= “2.3.1” and < “3.0.0” (all backwards compatible (% style="color:#e74c3c" %)versions(%%) >= “2.3.1”). 464 +2+.3.1 Means the currently latest available (% style="color:#e74c3c" %)version(%%) >= “2.3.1” (even if not backwards compatible). 465 + 466 +(% class="wikigeneratedid" id="HDraftstructures" %) 467 +**Draft structures** 468 + 469 +A key principle is that semantically versioned structures are immutable and must not be changed without a corresponding change to the (% style="color:#e74c3c" %)version(%%) number, except where explicitly marked as draft using extensions to the (% style="color:#e74c3c" %)version(%%) number. 470 + 471 +MAJOR.MINOR.PATCH-EXTENSION 472 + 473 +1.10.0-draft Means that (% style="color:#e74c3c" %)version(%%) 1.10.0 is still being modified and may change – equivalent to setting isFinal=false in [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] 2.1. 474 +1.10.0-unstable Alternative to -draft. 475 +1.10.0-notfinal Alternative to -draft. 476 + 477 +The [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] 2.1 isFinal property is deprecated in 3.0. 478 + 479 += 5 REST Web Services API = 480 + 481 +== 5.1 Simplified list of resources == 482 + 483 +The (% style="color:#e74c3c" %)version(%%) 3.0 REST API has just five main resources: 484 + 485 +* structure 486 +* data 487 +* schema 488 +* availability 489 +* metadata 490 + 491 +All structure and item queries have been organised under the structure resource in contrast to the (% style="color:#e74c3c" %)version(%%) 2.1 API which specified a separate resource for each structure. 492 + 493 +This and changes in the URLs and query parameters on the data, availability and metadata resources means that, with the exception of schema queries, the (% style="color:#e74c3c" %)version(%%) 3.0 API is not backwardly compatible. 494 + 495 +== 5.2 Improved data queries == 496 + 497 +Data queries have been changed to provide more granular selections from contexts wider than just a [[Dataflow>>doc:Glossary.Dataflow.WebHome]]. 498 + 499 +(% class="wikigeneratedid" id="HExtendthecontextofdataretrieval" %) 500 +**Extend the context of data retrieval** 501 +(% style="color:#e74c3c" %)Version(%%) 2.1 data queries always retrieved data from a single specific [[Dataflow>>doc:Glossary.Dataflow.WebHome]]. In (% style="color:#e74c3c" %)version(%%) 3.0, the query context may be specified as: 502 + 503 +* [[Dataflow>>doc:Glossary.Dataflow.WebHome]]; 504 +* Data Structure Definition – i.e., all [[Dataflows>>doc:Glossary.Dataflow.WebHome]] that use it; or 505 +* Provision Agreement – i.e., all [[Dataflows>>doc:Glossary.Dataflow.WebHome]] associated with it. 506 + 507 +Data queries may also search across [[datasets>>doc:Glossary.Data set.WebHome]], for instance “retrieve all data about a country”. 508 + 509 +(% class="wikigeneratedid" id="HComponent-basedfilters" %) 510 +**Component-based filters** 511 +Expressions filtering on individual [[components>>doc:Glossary.Component.WebHome]] can now be included as part of the data query URL. 512 + 513 +/data/dataflow/ESTAT/ICP?c[REF_AREA]=CH&c[CONF_STATUS]=F 514 + 515 +(% class="wikigeneratedid" id="HSupportforoperators" %) 516 +**Support for operators** 517 +Filter expressions can also include operators. 518 + 519 +/data/dataflow/ESTAT/ICP?c[REF_AREA]=DE&c[ICP_ITEM]=sw:01&c[TIME_PERIOD]=ge:2015 520 + 521 +Operators include: 522 + 523 +(% style="width:531.039px" %) 524 +|(% style="width:151px" %)eq|(% style="width:378px" %)Equals 525 +|(% style="width:151px" %)ne|(% style="width:378px" %)Not equal to 526 +|(% style="width:151px" %)le|(% style="width:378px" %)Less than 527 +|(% style="width:151px" %)ge|(% style="width:378px" %)Greater than or equal to 528 +|(% style="width:151px" %)sw|(% style="width:378px" %)Starts with 529 + 530 +(% class="wikigeneratedid" id="HSupportformultiplekeys" %) 531 +**Support for multiple keys** 532 +Queries can now specify multiple [[series keys>>doc:Glossary.Series key.WebHome]]. 533 + 534 +(% class="wikigeneratedid" %) 535 +/data/dataflow/ESTAT/ICP/1.0.0/M…A.ANR,M…A.INX,M…B.CTG 536 + 537 +== 5.3 Improved reference metadata queries == 538 + 539 +[[Reference metadata>>doc:Glossary.Reference metadata.WebHome]] queries have been improved with a number of new options to retrieve metadata reports. 540 + 541 +**Get metadata reports by ID** 542 + 543 +/metadata/metadataset/ESTAT/QUALITY_REPORT/1.0.0 544 + 545 +**Get metadata reports by Dataflow** 546 + 547 +/metadata/metadataflow/ECB/METHODOLOGY/*/FR2 548 + 549 +**Get metadata reports about a Data Structure Definition** 550 + 551 +/metadata/structure/datastructure/BIS/BIS_CBS/1.0 552 + 553 +== 5.4 Structural metadata maintenance == 554 + 555 +Support has been added for maintenance of [[structural metadata>>doc:Glossary.Structural metadata.WebHome]]. 556 + 557 +HTTP verbs PUT, POST and DELETE may be used to submit [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] or [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] structure messages to an [[SDMX registry>>doc:Glossary.SDMX Registry.WebHome]] for the purposes of adding, updating or deleting [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] [[artefacts>>doc:Glossary.Artefact.WebHome]]. 558 + 559 += 6 XML, JSON, CSV and EDI Transmission formats = 560 + 561 +== 6.1 SDMX-ML == 562 + 563 +The [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] XML messages have been modified and updated for (% style="color:#e74c3c" %)version(%%) 3.0. While they broadly follow the same principles, there have been significant changes which break backward compatibility. 564 + 565 +(% class="wikigeneratedid" id="HStructuremessage" %) 566 +**Structure message** 567 +The [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] structure message is used for transmission of [[structural metadata>>doc:Glossary.Structural metadata.WebHome]]. It closely reflects the [[SDMX information model>>doc:Glossary.SDMX Information Model.WebHome]] and has therefore been significantly updated for (% style="color:#e74c3c" %)version(%%) 3.0 with the addition of new structures, modifications where structures have changed, and removal of deprecated structures like Structure Set. 568 + 569 +Additionally, the way the individual [[artefacts>>doc:Glossary.Artefact.WebHome]] are organised into ‘collections’ within the message has been significantly revised with a simpler flat structure adopted as set out in the following table: 570 + 571 +(% style="width:1102.04px" %) 572 +|(% style="width:321px" %)**Artefact type**|(% style="width:351px" %)**Version 2.1 Collection**|(% style="width:426px" %)**Version 3.0 Collection** 573 +|(% style="width:321px" %)AgencyScheme|(% style="width:351px" %)OrganisationSchemes|(% style="width:426px" %)AgencySchemes 574 +|(% style="width:321px" %)DataConsumerScheme|(% style="width:351px" %)OrganisationSchemes|(% style="width:426px" %)DataConsumerSchemes 575 +|(% style="width:321px" %)DataProviderScheme|(% style="width:351px" %)OrganisationSchemes|(% style="width:426px" %)DataProviderSchemes 576 +|(% style="width:321px" %)MetadataProviderScheme|(% style="width:351px" %)OrganisationSchemes|(% style="width:426px" %)MetadataProviderSchemes 577 +|(% style="width:321px" %)OrganisationUnitScheme|(% style="width:351px" %)OrganisationSchemes|(% style="width:426px" %)OrganisationUnitSchemes 578 +|(% style="width:321px" %)GeographicCodelist|(% style="width:351px" %)Codelists|(% style="width:426px" %)GeographicCodelists 579 +|(% style="width:321px" %)GeoGridCodelist|(% style="width:351px" %)Codelists|(% style="width:426px" %)GeoGridCodelists 580 +|(% style="width:321px" %)ConceptScheme|(% style="width:351px" %)Concepts|(% style="width:426px" %)ConceptSchemes 581 +|(% style="width:321px" %)ValueList|(% style="width:351px" %)Codelists|(% style="width:426px" %)ValueLists 582 +|(% style="width:321px" %)StructureMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)StructureMaps 583 +|(% style="width:321px" %)RepresentationMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)RepresentationMaps 584 +|(% style="width:321px" %)ConceptSchemeMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)ConceptSchemeMaps 585 +|(% style="width:321px" %)CategorySchemeMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)CategorySchemeMaps 586 +|(% style="width:321px" %)OrganisationSchemeMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)OrganisationSchemeMaps 587 +|(% style="width:321px" %)ReportingTaxonomyMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)ReportingTaxonomyMaps 588 +|(% style="width:321px" %)DataConstraint|(% style="width:351px" %)Constraints|(% style="width:426px" %)DataConstraints 589 +|(% style="width:321px" %)MetadataConstraint|(% style="width:351px" %)Constraints|(% style="width:426px" %)MetadataConstraints 590 +|(% style="width:321px" %)MetadataProvisionAgreement|(% style="width:351px" %)ProvisionAgreement|(% style="width:426px" %)MetadataProvisionAgreements 591 +|(% style="width:321px" %)CustomTypeScheme|(% style="width:351px" %)CustomTypes|(% style="width:426px" %)CustomTypeSchemes 592 +|(% style="width:321px" %)VtlMappingScheme|(% style="width:351px" %)VtlMappings|(% style="width:426px" %)VtlMappingSchemes 593 +|(% style="width:321px" %)NamePersonalisationScheme|(% style="width:351px" %)NamePersonalisations|(% style="width:426px" %)NamePersonalisationSchemes 594 +|(% style="width:321px" %)RulesetScheme|(% style="width:351px" %)Rulesets|(% style="width:426px" %)RulesetSchemes 595 +|(% style="width:321px" %)TransformationScheme|(% style="width:351px" %)Transformations|(% style="width:426px" %)TransformationSchemes 596 +|(% style="width:321px" %)UserDefinedOperatorScheme|(% style="width:351px" %)UserDefinedOperators|(% style="width:426px" %)UserDefinedOperatorSchemes 597 + 598 +No changes have been made to the way the following [[artefacts>>doc:Glossary.Artefact.WebHome]] are organised in the structure message: 599 + 600 +(% style="width:1106.04px" %) 601 +|(% style="width:326px" %)**Artefact type**|(% style="width:776px" %)**Collection** 602 +|(% style="width:326px" %)Dataflow|(% style="width:776px" %)Dataflows 603 +|(% style="width:326px" %)Metadataflow|(% style="width:776px" %)Metadataflows 604 +|(% style="width:326px" %)CategoryScheme|(% style="width:776px" %)CategorySchemes 605 +|(% style="width:326px" %)Categorisation|(% style="width:776px" %)Categorisations 606 +|(% style="width:326px" %)Codelist|(% style="width:776px" %)Codelists 607 +|(% style="width:326px" %)Hierarchy|(% style="width:776px" %)Hierarchies 608 +|(% style="width:326px" %)HierarchyAssociation|(% style="width:776px" %)HierarchyAssociations 609 +|(% style="width:326px" %)MetadataStructure|(% style="width:776px" %)MetadataStructures 610 +|(% style="width:326px" %)DataStructure|(% style="width:776px" %)DataStructures 611 +|(% style="width:326px" %)ReportingTaxonomy|(% style="width:776px" %)ReportingTaxonomies 612 +|(% style="width:326px" %)Process|(% style="width:776px" %)Processes 613 +|(% style="width:326px" %)ProvisionAgreement|(% style="width:776px" %)ProvisionAgreements 614 + 615 +From (% style="color:#e74c3c" %)version(%%) 3.0, collections can appear in any order within a structure message. 616 + 617 +(% class="wikigeneratedid" id="HDatamessages" %) 618 +**Data messages** 619 + 620 +(% class="wikigeneratedid" id="HDatamessages" %) 621 +All legacy [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] data messages have been deprecated with the exception of Structure Specific Data which becomes the sole standard format for transmission of [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] data in XML in (% style="color:#e74c3c" %)version(%%) 3.0. 622 + 623 +Specifically, the following data messages are not supported in (% style="color:#e74c3c" %)version(%%) 3.0: 624 + 625 +* [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Generic (time-series) data message 626 +* [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Compact (time-series) data message 627 +* [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Utility (time-series) data message 628 +* [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Cross-Sectional data message 629 +* [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 2.1 Generic data messages (for observations, time-series and crosssectional data) 630 + 631 +The Structure Specific Data message has been extended to support the transmission of microdata sets, in particular those with multiple [[measures>>doc:Glossary.Measure.WebHome]] and array values for [[measures>>doc:Glossary.Measure.WebHome]] and [[attributes>>doc:Glossary.Attribute.WebHome]]. 632 + 633 +As detailed in paragraph 3.4, the message now additionally allows data’s [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] to be reported as an integral part of the [[dataset>>doc:Glossary.Data set.WebHome]]. Like data [[attributes>>doc:Glossary.Attribute.WebHome]], these metadata [[attributes>>doc:Glossary.Attribute.WebHome]] are included in the data message at the [[dataset>>doc:Glossary.Data set.WebHome]], series or observation (% style="color:#e74c3c" %)level(%%) as appropriate. 634 + 635 +The time series variant of the Structure Specific Data message is no longer used. 636 + 637 +(% class="wikigeneratedid" id="HReferencemetadatamessage" %) 638 +**Reference metadata message** 639 +The Generic Metadata message remains the standard format for transmission of [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] sets in XML but has been modified to support the revised (% style="color:#e74c3c" %)version(%%) 3.0 [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] model. 640 + 641 +(% class="wikigeneratedid" id="HRegistrystructuralmetadata2018query2019messages" %) 642 +**Registry structural metadata ‘query’ messages** 643 +As a consequence of the deprecation of the SOAP API and standardisation on REST, the [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] ‘query’ messages have all been removed. In (% style="color:#e74c3c" %)version(%%) 3.0, querying an [[SDMX Registry>>doc:Glossary.SDMX Registry.WebHome]] for [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] is performed solely using REST GET. 644 + 645 +(% class="wikigeneratedid" id="HStructurereferencing" %) 646 +**Structure referencing** 647 +The option to reference structures using Agency, ID and (% style="color:#e74c3c" %)Version(%%) has been removed. From [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] (% style="color:#e74c3c" %)version(%%) 3.0 URN is used for all referencing purposes with the exception of local references such as where groups reference [[dimensions>>doc:Glossary.Dimension.WebHome]] within a [[DSD>>doc:Glossary.Data structure definition.WebHome]]. 648 + 649 +== 6.2 SDMX-JSON == 650 + 651 +Like [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]], the [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] messages have been significantly modified and updated for (% style="color:#e74c3c" %)version(%%) 3.0. They are not backwardly compatible with (% style="color:#e74c3c" %)version(%%) 2.1. 652 + 653 +(% class="wikigeneratedid" id="HStructuremessage-1" %) 654 +**Structure message** 655 +The [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] structure message closely replicates the [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] equivalent. Like that of [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] it has been updated to align it with the (% style="color:#e74c3c" %)version(%%) 3.0 information model with addition, deletion and modification of [[artefacts>>doc:Glossary.Artefact.WebHome]] as required. The organisation of the structure collections has also been revised as detailed in paragraph 6.1. 656 + 657 +(% class="wikigeneratedid" id="HDatamessage" %) 658 +**Data message** 659 +The [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] data message has similarly be updated. Additional changes have been made to allow a single message to carry data from multiple [[datasets>>doc:Glossary.Data set.WebHome]] with potentially different [[Data Structure Definitions>>doc:Glossary.Data structure definition.WebHome]] to support REST data queries of the form “retrieve all data about a country”. For this reason, the (% style="color:#e74c3c" %)version(%%) 3.0 [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] is not backwardly compatible with (% style="color:#e74c3c" %)version(%%) 2.1 data messages. Support has been added for the transmission of microdata and reporting of [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] on data as an integral part of the dataset. 660 + 661 +(% class="wikigeneratedid" id="HReferencemetadatamessage-1" %) 662 +**Reference metadata message** 663 +The [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] metadata message has also been updated to support the (% style="color:#e74c3c" %)version(%%) 3.0 [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] and Metadataset specifications. 664 + 665 +(% class="wikigeneratedid" id="HStructurereferencing-1" %) 666 +**Structure referencing** 667 +As for [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]], the option to reference structures using Agency, ID and (% style="color:#e74c3c" %)Version(%%) has been removed with URN used for all non-local referencing purposes. 668 + 669 +== 6.3 SDMX-CSV == 670 + 671 +CSV in [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] is used transmission of data and [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] only. 672 + 673 +(% class="wikigeneratedid" id="HDatamessage-1" %) 674 +**Data message** 675 +The [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-CSV data message has been modified to align with the (% style="color:#e74c3c" %)version(%%) 3.0 information model, support the enhanced REST API and ensure that data can be freely converted to and from the XML and JSON formats without loss. These changes include: 676 + 677 +* An additional column identifying the type if the [[artefact>>doc:Glossary.Artefact.WebHome]] defining the structure of the data: “[[dataflow>>doc:Glossary.Dataflow.WebHome]]”, “datastructure” or “dataprovision”; 678 +* A column for the structure [[artefact>>doc:Glossary.Artefact.WebHome]]’s identification of the form 679 + 680 +ESTAT:NA_MAIN(1.6.0) which replaces the [[dataflow>>doc:Glossary.Dataflow.WebHome]] identifier in (% style="color:#e74c3c" %)version(%%) 2.1; and 681 + 682 +* A column for the [[dataset>>doc:Glossary.Data set.WebHome]] action: information, append, replace or delete, which is consistent with both the the [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] and [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] data messages. 683 + 684 +(% class="wikigeneratedid" id="HReferencemetadatamessage-2" %) 685 +**Reference metadata message** 686 +The [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-CSV metadata message is new for (% style="color:#e74c3c" %)version(%%) 3.0 and, like the [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] and [[SDMX-JSON>>doc:Glossary.SDMX-JSON.WebHome]] equivalents, is used for the transmission [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] sets. 687 + 688 +== 6.4 EDI deprecation == 689 + 690 +The EDI format for transmission of both structures and data has been deprecated. (% style="color:#e74c3c" %)Version(%%) 3.0 is therefore not backwardly compatible with legacy EDI messages. 691 + 692 += Appendix A – Version 2.1 Information Model = 693 + 694 +[[image:SDMX 3-0-0 Major Changes FINAL-1.0_en_5f21cdf9.png||height="319" width="718"]]
- SDMX 3-0-0 Major Changes FINAL-1.0_en_5f21cdf9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +103.2 KB - Content
- SDMX 3-0-0 Major Changes FINAL-1.0_en_6fc573fe.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +148.8 KB - Content
- SDMX 3-0-0 Major Changes FINAL-1.0_en_ad5f5c97.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +22.0 KB - Content
- SDMX 3-0-0 Major Changes FINAL-1.0_en_f2695ed5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +5.7 KB - Content
- SUZ.Methodology.Code.MethodologyClass[0]
-