Version 27.2 by Artur on 2025/06/06 17:08

Hide last authors
Helena 7.2 1 {{box title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
Helena 2.1 5 **Revision History**
6
Helena 7.5 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
Helena 2.1 11
12 = 1 Overview =
13
Artur 23.1 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:
Helena 2.1 15
16 **Information Model**
17
Artur 22.1 18 * Simplification and improvement of the [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] model
Helena 2.1 19 * Support for microdata
20 * Support for geospatial data
Artur 22.1 21 * Support for [[code list>>doc:Glossary.Code list.WebHome]] extension and discriminated union of [[code>>doc:Glossary.Code.WebHome]] lists
Helena 2.1 22 * Improvements to structure mapping
Artur 22.1 23 * Improvements to [[code>>doc:Glossary.Code.WebHome]] [[hierarchies>>doc:Glossary.Hierarchy.WebHome]] for data discovery
Helena 2.1 24 * Improvements to constraints
25
26 **Versioning of Structural Metadata Artefacts**
27
Artur 22.1 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"]])
Helena 2.1 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
Artur 22.1 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
Helena 2.1 36
37 **SOAP Web Services API**
38
Artur 23.1 39 * The SOAP web services API has been deprecated with (% style="color:#e74c3c" %)version(%%) 3.0 standardising on REST**;**
Helena 2.1 40
41 **XML, JSON, CSV and EDI Transmission formats**
42
Artur 22.1 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
Artur 23.1 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
Helena 2.1 48
49 **Breaking Changes**
50
Artur 23.1 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.
Helena 2.1 52
53 A summary of the main breaking changes is given in chapter 2.
54
55 **Content of the Document**
56
Artur 22.1 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:
Helena 2.1 58
59 * Section 2 – Information Model
60 * Section 5 – Registry Specification
61 * Section 6 – Technical Notes
Artur 22.1 62 * [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-TWG GitHub for the REST API and the XML, JSON and CSV formats
Helena 2.1 63
64 = 2 Summary of Breaking Changes in 3.0 =
65
Artur 23.1 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.
Helena 2.1 67
Helena 11.1 68 == 2.1 Web Services API ==
Helena 2.1 69
Helena 7.4 70 (% style="width:948.039px" %)
71 |**REST API**|(% style="width:818px" %)(((
Helena 2.1 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 //Guidance for implementors//
81
Artur 23.1 82 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.
83 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.
Helena 2.1 84 )))
Helena 7.4 85 |**SOAP API**|(% style="width:818px" %)The SOAP API has been deprecated.
Helena 2.1 86
Helena 11.1 87 == 2.2 Transmission Formats ==
Helena 2.1 88
89 (((
Helena 7.4 90 (% style="width:952.039px" %)
91 |(% style="width:130px" %)**SDMX-ML**|(% style="width:820px" %)(((
Helena 2.1 92 The following legacy XML data messages have been deprecated:
93
Artur 22.1 94 [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Generic (time-series) data message
95 [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Compact (time-series) data message
96 [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Utility (time-series) data message
Helena 24.2 97 [[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)
Artur 23.1 98 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.
Artur 22.1 99 The [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] structure message is not backwardly compatible primarily due to:
Helena 2.1 100
101 * Changes to the information model
Helena 7.5 102 * Changes to the way the structures are organised into ‘collections’ within the message
Artur 23.1 103 * Deprecation of the Agency, ID, (% style="color:#e74c3c" %)Version(%%) option for referencing of structures in messages
Helena 2.1 104 )))
Helena 7.4 105 |(% style="width:130px" %)**SDMX-JSON**|(% style="width:820px" %)(((
Artur 23.1 106 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.
Helena 2.1 107 The JSON structure message is not backwardly compatible primarily due to:
108
109 * Changes to the information model
Helena 7.6 110 * Changes to the way the structures are organised into ‘collections’ within the message
Artur 23.1 111 * Deprecation of the Agency, ID, (% style="color:#e74c3c" %)Version(%%) option for referencing of structures in messages
Helena 2.1 112 )))
Helena 7.4 113 |(% style="width:130px" %)**SDMX-EDI**|(% style="width:820px" %)The EDI format for both structures and data has been deprecated.
Artur 23.1 114 |(% 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.
Helena 2.1 115 )))
116
Helena 11.1 117 == 2.3 Information Model ==
Helena 2.1 118
119 (((
Helena 7.4 120 (% style="width:955.039px" %)
121 |(% style="width:132px" %)**Data Structure Definition**|(% style="width:819px" %)(((
Artur 23.1 122 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.
Helena 2.1 123
124 //Conversion guidance for implementors//
125
Artur 23.1 126 (% 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.
127 (% 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]].
Helena 2.1 128 )))
Helena 7.4 129 |(% style="width:132px" %)**Structure mapping model**|(% style="width:819px" %)(((
Artur 23.1 130 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(%%).
Helena 2.1 131
132 //Conversion guidance for implementors//
133
Artur 23.1 134 (% 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.
135 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.
Helena 2.1 136 )))
Helena 7.4 137 |(% style="width:132px" %)**Reference metadata model**|(% style="width:819px" %)(((
Artur 23.1 138 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.
Helena 2.1 139
Artur 23.1 140 (% style="color:#e74c3c" %)Version(%%) 2.1 [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] models are not valid in (% style="color:#e74c3c" %)version(%%) 3.0.
Helena 2.1 141
142 //Conversion guidance for implementors//
143
Artur 23.1 144 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.
145 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]].
Helena 2.1 146 )))
Helena 7.4 147 |(% style="width:132px" %)**Constraint model**|(% style="width:819px" %)(((
Artur 23.1 148 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.
Helena 2.1 149
150 //Conversion guidance for implementors//
151
Artur 23.1 152 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.
Helena 2.1 153 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.
154 )))
Helena 7.4 155 |(% style="width:132px" %)**Hierarchical codelist structures**|(% style="width:819px" %)(((
Artur 23.1 156 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.
Helena 2.1 157
158 //Conversion guidance for implementors//
159
Artur 23.1 160 (% 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.
161 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
Helena 2.1 162 )))
163 )))
164
165 = 3 Information Model =
166
Helena 11.1 167 == 3.1 Version 3.0 Information Model ==
Helena 2.1 168
169 [[image:SDMX 3-0-0 Major Changes FINAL-1.0_en_6fc573fe.png||height="404" width="718"]]
170
171 //Figure 1 Version 3.0 simplified Information Model UML class diagram with ‘heat map’ illustrating the areas with most change//
172
Helena 25.1 173 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 map’. Darker colours indicate where new structures have been added in (% style="color:#e74c3c" %)version(%%) 3.0 or where structures have been significantly changed.
Helena 2.1 174
Artur 23.1 175 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.
Helena 2.1 176
Helena 11.1 177 == 3.2 Key Changes from Version 2.1 ==
Helena 2.1 178
179 New Maintainable Artefacts
180
Artur 23.1 181 * Structure (% style="color:#e74c3c" %)Map
182 * [[Representation>>doc:Glossary.Representation.WebHome]] (% style="color:#e74c3c" %)Map
183 * Organisation Scheme (% style="color:#e74c3c" %)Map
184 * (% style="color:#e74c3c" %)Concept(%%) Scheme (% style="color:#e74c3c" %)Map
185 * Category Scheme (% style="color:#e74c3c" %)Map
186 * Reporting Taxonomy (% style="color:#e74c3c" %)Map
Helena 2.1 187 * Value List
Artur 22.1 188 * [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]]
189 * [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] Association
Artur 23.1 190 * Metadata (% style="color:#e74c3c" %)Constraint
191 * Data (% style="color:#e74c3c" %)Constraint
Helena 2.1 192 * Metadata Provision Agreement
193 * Metadata Provider Scheme
194 * Metadataset
195
196 New Identifiable Artefacts
197
198 * GeoFeatureSetCode
199 * GeoGridCode
200 * Metadata Provider
201
202 Removed Maintainable Artefacts
203
Artur 23.1 204 * Structure Set – replaced by Structure (% style="color:#e74c3c" %)Map(%%) and the four [[item scheme>>doc:Glossary.Item scheme.WebHome]] maps
Artur 22.1 205 * Hierarchical Codelist – replaced by [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] and [[Hierarchy>>doc:Glossary.Hierarchy.WebHome]] Association
Artur 23.1 206 * (% style="color:#e74c3c" %)Constraint(%%) – replaced by Data (% style="color:#e74c3c" %)Constraint(%%) and Metadata (% style="color:#e74c3c" %)Constraint
Helena 2.1 207
208 Changed Maintainable Artefacts
209
Artur 22.1 210 * Data Structure Definition – support for microdatasets and [[reference metadata>>doc:Glossary.Reference metadata.WebHome]] linked to data
211 * Metadataflow – simplifies exchange of [[reference metadata>>doc:Glossary.Reference metadata.WebHome]], in particular those linked to structures
212 * Metadata Structure Definition – simplified model for [[reference metadata>>doc:Glossary.Reference metadata.WebHome]]
Helena 2.1 213 * Codelist – support for codelist extension and geospatial specialised codelists (GeographicCodelist, GeoGridCodelist)
Artur 23.1 214 * [[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
Helena 2.1 215
Artur 22.1 216 New [[Component>>doc:Glossary.Component.WebHome]] [[Representation>>doc:Glossary.Representation.WebHome]] Types
Helena 2.1 217
218 * GeospatialInformation – a string type where the value is an expression defining a set of geographical features using a purpose-designed syntax
219
Helena 10.2 220 == 3.3 Areas Unchanged from Version 2.1 ==
Helena 2.1 221
Artur 23.1 222 The following areas of the information model are unchanged from (% style="color:#e74c3c" %)version(%%) 2.1:
Helena 2.1 223
224 * Categories
225 * Concepts
226 * Data providers
227 * Agencies
228 * Data consumers
Artur 22.1 229 * [[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
Helena 2.1 230 * Reporting taxonomy
231 * Process
232
Helena 10.2 233 == 3.4 Reference Metadata ==
Helena 2.1 234
Artur 23.1 235 [[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.
Helena 2.1 236
Helena 16.2 237 (% class="wikigeneratedid" id="HSimplifyMetadataStructureDefinition" %)
238 **Simplify Metadata Structure Definition**
Artur 22.1 239 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.
Helena 2.1 240
241 [[image:SDMX 3-0-0 Major Changes FINAL-1.0_en_ad5f5c97.png||height="346" width="494"]]
242
243 //Figure 2 version 2.1 Metadata Structure Definition (MSD)//
244
245 [[image:SDMX 3-0-0 Major Changes FINAL-1.0_en_f2695ed5.png||height="172" width="374"]]
246
247 //Figure 3 the simplified version 3.0 MSD//
248
Helena 15.7 249 (% class="wikigeneratedid" id="HChangetoreferencemetadatareportedagainstdata" %)
250 **Change to reference metadata reported against data**
Helena 2.1 251
Helena 19.3 252 (% class="wikigeneratedid" id="HChangetoreferencemetadatareportedagainstdata" %)
Artur 23.1 253 [[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.
Helena 2.1 254
Artur 23.1 255 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(%%).
Helena 19.3 256
Helena 2.1 257 For completeness, the excerpt also shows:
258
Artur 23.1 259 * OBS_STATUS – a simple observation-(% style="color:#e74c3c" %)level(%%) data [[attribute>>doc:Glossary.Attribute.WebHome]]
Artur 22.1 260 * TITLE – a multi-lingual data [[attribute>>doc:Glossary.Attribute.WebHome]]
261 * SOURCE_AGENCY – a multi-value data [[attribute>>doc:Glossary.Attribute.WebHome]]
Helena 2.1 262
Helena 13.2 263 > <Obs xsi:type="dsd:ObsType" OBS_VALUE="112" OBS_STAUS=”A” TIME_PERIOD="2010-09">
Helena 13.3 264 > <!—- complex multi-value and multi-lingual data attributes ~-~->
265 > <Comp id="TITLE" xsi:type="ns1:TITLE_ATTRIBUTE">
266 > <Value>
267 > <common:Text xml:lang="en">Some English Text</common:Text>
268 > <common:Text xml:lang="fr">Quelques textes en anglais</common:Text>
269 > </Value>
270 > </Comp>
271 > <Comp id="SOURCE_AGENCY" xsi:type="ns1:SOURCE_AGENCY_ATTRIBUTE">
272 > <Value>4F0</Value>
273 > <Value>4D0</Value>
274 > <Value>CZ2</Value>
275 > </Comp>
276 > <!—- metadata attributes are reported like in metadata messages ~-~->
Helena 13.4 277 > <Metadata>
278 > <Attribute id="COLLECTION">
279 > <Attribute id="METHOD">
280 > <Text lang="en">AAA</Text>
Helena 14.1 281 > </Attribute>
Helena 13.4 282 > </Attribute>
Helena 14.1 283 > <Attribute id="CONTACT">
284 > <Value>CONTACT 1</Value>
285 > <Attribute id="NAME">
286 > <Value>Contact 1 Name 1</Value>
287 > </Attribute>
288 > <Attribute id="NAME">
289 > <Value>Contact 1 Name 2</Value>
290 > </Attribute>
Helena 13.4 291 > </Attribute>
292 > <Attribute id="CONTACT">
Helena 14.1 293 > <Value>CONTACT 2</Value>
Helena 13.4 294 > <Attribute id="NAME">
295 > <Value>Contact 2 Name 1</Value>
Helena 14.1 296 > </Attribute>
297 > <Attribute id="NAME">
298 > <Value>Contact 2 Name 2</Value>
299 > </Attribute>
300 > </Attribute>
301 > </Metadata>
Helena 13.3 302 > </Obs>
Helena 2.1 303
Helena 15.6 304 (% class="wikigeneratedid" id="HNew-MetadataProvisionAgreement" %)
305 **New - Metadata Provision Agreement**
Helena 2.1 306
Helena 19.3 307 (% class="wikigeneratedid" id="HNew-MetadataProvisionAgreement" %)
Artur 23.1 308 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]].
Helena 19.3 309
Helena 15.6 310 (% class="wikigeneratedid" id="HMovetargettoMetadataflowandMetadataProvisionAgreement" %)
311 **Move target to Metadataflow and Metadata Provision Agreement**
Artur 22.1 312 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]].
Helena 2.1 313
Helena 15.6 314 (% class="wikigeneratedid" id="HAddmaintainablepropertiestoreferencemetadata" %)
315 **Add maintainable properties to reference metadata**
Artur 23.1 316 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.
Helena 2.1 317
Helena 10.2 318 == 3.5 Microdata Exchange ==
Helena 2.1 319
Artur 22.1 320 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.
Helena 2.1 321
Helena 15.5 322 (% class="wikigeneratedid" id="HMultiplemeasures" %)
Artur 23.1 323 **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:
Helena 2.1 324
Helena 15.1 325 > <str:MeasureList id=”MeasureDescriptor”>
326 > <str:Measure id=”OBS_VALUE” minOccurs=”1” maxOccurs=”1” usage=”mandatory” > <str:ConceptIdentity>
327 > <Ref id=”OBS_VALUE” maintainableParentID=”CONCEPTS” agencyID=”SDMX” maintainableParentVersion=”1.0.0” />
328 > </str:ConceptIdentity>
329 > <str:LocalRepresentation>
330 > <str:TextFormat textType=”String” isMultiLingual=”true” />
331 > </str:LocalRepresentation>
332 > <str:ConceptRole>
333 > <Ref id=”MEASURE” maintainableParentID=”SDMX_CONCEPT_ROLES” agencyID=”SDMX” maintainableParentVersion=”1.0.0” />
334 > </str:ConceptRole>
335 > </str:Measure>
336 > ...
337 > <str:Measure>
338 > </str:MeasureList>
Helena 2.1 339
Helena 15.4 340 (% class="wikigeneratedid" id="HMulti-valuemeasuresandattributes" %)
341 **Multi-value measures and attributes**
Artur 22.1 342 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.
Helena 19.5 343
Helena 15.4 344 (% class="wikigeneratedid" id="HAttributesrelationshiptomeasures" %)
345 **Attributes relationship to measures**
Artur 23.1 346 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.
Helena 2.1 347
Helena 15.4 348 (% class="wikigeneratedid" id="HValuelists" %)
349 **Value lists**
Artur 22.1 350 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.
Helena 2.1 351
Helena 10.2 352 == 3.6 Geospatial Data Exchange ==
Helena 2.1 353
Artur 23.1 354 The (% style="color:#e74c3c" %)version(%%) 3.0 model has been extended to provide explicit support for geospatial data.
Helena 2.1 355
Helena 16.3 356 (% class="wikigeneratedid" id="HGeospatialInformationtype" %)
357 **GeospatialInformation type**
Artur 23.1 358 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.
Helena 2.1 359
Helena 16.3 360 (% class="wikigeneratedid" id="HGeospatialcodelists" %)
361 **Geospatial code lists**
Helena 2.1 362
Helena 19.5 363 (% class="wikigeneratedid" id="HGeospatialcodelists" %)
Artur 22.1 364 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:
Helena 19.5 365
Helena 2.1 366 * 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.
Artur 22.1 367 * 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.
Helena 2.1 368
Helena 11.2 369 == 3.7 Structure Mapping ==
Helena 2.1 370
Artur 23.1 371 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(%%).
Helena 2.1 372
Artur 23.1 373 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.
Helena 2.1 374
Helena 15.3 375 (% class="wikigeneratedid" id="HMany-to-manysourceandtargetcomponents" %)
376 **Many-to-many source and target components**
Artur 23.1 377 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:
Helena 2.1 378
Artur 22.1 379 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”.
Helena 2.1 380
Artur 22.1 381 Similarly, an n-n rule may also set the values of any number of output [[components>>doc:Glossary.Component.WebHome]]:
Helena 2.1 382
Artur 22.1 383 Set the output [[components>>doc:Glossary.Component.WebHome]] FREQ=”A”, REF_AREA=”DE” if the input [[component>>doc:Glossary.Component.WebHome]] INDICATOR=”DE_A”.
Helena 2.1 384
385 **Fixed source and target**
Artur 23.1 386 The Structure (% style="color:#e74c3c" %)Map(%%) may now define input or output [[components>>doc:Glossary.Component.WebHome]] which have a fixed value.
Helena 2.1 387
Helena 15.3 388 (% class="wikigeneratedid" id="HTimerepresentationsmapping" %)
389 **Time representations mapping**
Artur 23.1 390 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]].
Helena 2.1 391
Helena 15.3 392 (% class="wikigeneratedid" id="HRegularexpressionandsubstringmappings" %)
393 **Regular expression and substring mappings**
Artur 23.1 394 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(%%).
Helena 2.1 395
Helena 15.3 396 (% class="wikigeneratedid" id="HItemmapsvalidityperiod" %)
397 **Item maps validity period**
Artur 23.1 398 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.
Helena 2.1 399
Helena 11.2 400 == 3.8 Constraints ==
Helena 2.1 401
Artur 23.1 402 (% 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(%%):
Helena 2.1 403
Artur 23.1 404 * data (% style="color:#e74c3c" %)constraint(%%) for data; and
405 * metadata (% style="color:#e74c3c" %)constraint(%%) for [[reference metadata>>doc:Glossary.Reference metadata.WebHome]].
Helena 2.1 406
Artur 23.1 407 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.
Helena 2.1 408
Artur 23.1 409 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.
Helena 2.1 410
Artur 23.1 411 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.
Helena 2.1 412
Artur 23.1 413 Attachment (% style="color:#e74c3c" %)constraints(%%) have been deprecated due to a lack of use cases.
Helena 2.1 414
Helena 11.2 415 == 3.9 Code List Extension ==
Helena 2.1 416
Artur 22.1 417 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.
Helena 2.1 418
Artur 22.1 419 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.
Helena 2.1 420
Helena 11.2 421 == 3.10 Discriminated Union of Code Lists ==
Helena 2.1 422
Artur 23.1 423 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.
Helena 2.1 424
Helena 11.2 425 == 3.11 Code Hierarchies ==
Helena 2.1 426
Artur 23.1 427 [[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]]).
Helena 2.1 428
429 = 4 Versioning of Structural Metadata Artefacts =
430
Artur 23.1 431 (% 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.
Helena 2.1 432
Artur 23.1 433 Semantic (% style="color:#e74c3c" %)version(%%) numbers are three digits:
Helena 2.1 434
435 MAJOR.MINOR.PATCH
436
437 Where
438
439 * The first digit (major) indicates that changes (either new features or bug fixes) are not backward compatible.
440 * The second digit (minor) indicates that features have been added in a backward compatible manner.
441 * The third digit (patch) indicates that bugs have been fixed in a backward compatible manner.
442
443 Examples:
444
445 SDMX:CL_AREA(1.0.0)
446 SDMX:CL_AREA(2.3.2)
447
Helena 24.1 448 (% class="wikigeneratedid" id="HDependencymanagement" %)
449 **Dependency management**
Helena 2.1 450
451 Additional constructs are possible for dependency management when referencing structures. For instance:
452
Artur 23.1 453 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”).
454 2+.3.1  Means the currently latest available (% style="color:#e74c3c" %)version(%%) >= “2.3.1” (even if not backwards compatible).
Helena 2.1 455
Helena 24.1 456 (% class="wikigeneratedid" id="HDraftstructures" %)
457 **Draft structures**
Helena 2.1 458
Artur 23.1 459 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.
Helena 2.1 460
461 MAJOR.MINOR.PATCH-EXTENSION
462
Artur 23.1 463 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.
Helena 16.5 464 1.10.0-unstable  Alternative to -draft.
465 1.10.0-notfinal  Alternative to -draft.
Helena 2.1 466
Artur 22.1 467 The [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] 2.1 isFinal property is deprecated in 3.0.
Helena 2.1 468
469 = 5 REST Web Services API =
470
Helena 11.1 471 == 5.1 Simplified list of resources ==
Helena 2.1 472
Artur 23.1 473 The (% style="color:#e74c3c" %)version(%%) 3.0 REST API has just five main resources:
Helena 2.1 474
475 * structure
476 * data
477 * schema
478 * availability
479 * metadata
480
Artur 23.1 481 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.
Helena 2.1 482
Artur 23.1 483 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.
Helena 2.1 484
Helena 11.1 485 == 5.2 Improved data queries ==
Helena 2.1 486
Artur 22.1 487 Data queries have been changed to provide more granular selections from contexts wider than just a [[Dataflow>>doc:Glossary.Dataflow.WebHome]].
Helena 2.1 488
Helena 16.6 489 (% class="wikigeneratedid" id="HExtendthecontextofdataretrieval" %)
490 **Extend the context of data retrieval**
Artur 23.1 491 (% 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:
Helena 2.1 492
Artur 22.1 493 * [[Dataflow>>doc:Glossary.Dataflow.WebHome]];
494 * Data Structure Definition – i.e., all [[Dataflows>>doc:Glossary.Dataflow.WebHome]] that use it; or
495 * Provision Agreement – i.e., all [[Dataflows>>doc:Glossary.Dataflow.WebHome]] associated with it.
Helena 2.1 496
Artur 22.1 497 Data queries may also search across [[datasets>>doc:Glossary.Data set.WebHome]], for instance “retrieve all data about a country”.
Helena 2.1 498
Helena 16.6 499 (% class="wikigeneratedid" id="HComponent-basedfilters" %)
500 **Component-based filters**
Artur 22.1 501 Expressions filtering on individual [[components>>doc:Glossary.Component.WebHome]] can now be included as part of the data query URL.
Helena 2.1 502
503 /data/dataflow/ESTAT/ICP?c[REF_AREA]=CH&c[CONF_STATUS]=F
504
Helena 16.6 505 (% class="wikigeneratedid" id="HSupportforoperators" %)
506 **Support for operators**
Helena 2.1 507 Filter expressions can also include operators.
508
Helena 16.6 509 /data/dataflow/ESTAT/ICP?c[REF_AREA]=DE&c[ICP_ITEM]=sw:01&c[TIME_PERIOD]=ge:2015
Helena 2.1 510
Helena 16.6 511 Operators include:
512
Helena 7.4 513 (% style="width:531.039px" %)
514 |(% style="width:151px" %)eq|(% style="width:378px" %)Equals
515 |(% style="width:151px" %)ne|(% style="width:378px" %)Not equal to
516 |(% style="width:151px" %)le|(% style="width:378px" %)Less than
517 |(% style="width:151px" %)ge|(% style="width:378px" %)Greater than or equal to
518 |(% style="width:151px" %)sw|(% style="width:378px" %)Starts with
Helena 2.1 519
Helena 16.7 520 (% class="wikigeneratedid" id="HSupportformultiplekeys" %)
521 **Support for multiple keys**
Artur 22.1 522 Queries can now specify multiple [[series keys>>doc:Glossary.Series key.WebHome]].
Helena 2.1 523
Helena 16.7 524 (% class="wikigeneratedid" %)
Helena 2.1 525 /data/dataflow/ESTAT/ICP/1.0.0/M…A.ANR,M…A.INX,M…B.CTG
526
Helena 11.1 527 == 5.3 Improved reference metadata queries ==
Helena 2.1 528
Artur 22.1 529 [[Reference metadata>>doc:Glossary.Reference metadata.WebHome]] queries have been improved with a number of new options to retrieve metadata reports.
Helena 2.1 530
531 **Get metadata reports by ID**
532
533 /metadata/metadataset/ESTAT/QUALITY_REPORT/1.0.0
534
535 **Get metadata reports by Dataflow**
536
537 /metadata/metadataflow/ECB/METHODOLOGY/*/FR2
538
539 **Get metadata reports about a Data Structure Definition**
540
541 /metadata/structure/datastructure/BIS/BIS_CBS/1.0
542
Helena 11.1 543 == 5.4 Structural metadata maintenance ==
Helena 2.1 544
Artur 22.1 545 Support has been added for maintenance of [[structural metadata>>doc:Glossary.Structural metadata.WebHome]].
Helena 2.1 546
Artur 22.1 547 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]].
Helena 2.1 548
549 = 6 XML, JSON, CSV and EDI Transmission formats =
550
Helena 11.1 551 == 6.1 SDMX-ML ==
Helena 2.1 552
Artur 23.1 553 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.
Helena 2.1 554
Helena 16.8 555 (% class="wikigeneratedid" id="HStructuremessage" %)
556 **Structure message**
Artur 23.1 557 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.
Helena 2.1 558
Artur 22.1 559 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:
Helena 2.1 560
Helena 7.4 561 (% style="width:1102.04px" %)
562 |(% style="width:321px" %)**Artefact type**|(% style="width:351px" %)**Version 2.1 Collection**|(% style="width:426px" %)**Version 3.0 Collection**
563 |(% style="width:321px" %)AgencyScheme|(% style="width:351px" %)OrganisationSchemes|(% style="width:426px" %)AgencySchemes
564 |(% style="width:321px" %)DataConsumerScheme|(% style="width:351px" %)OrganisationSchemes|(% style="width:426px" %)DataConsumerSchemes
565 |(% style="width:321px" %)DataProviderScheme|(% style="width:351px" %)OrganisationSchemes|(% style="width:426px" %)DataProviderSchemes
566 |(% style="width:321px" %)MetadataProviderScheme|(% style="width:351px" %)OrganisationSchemes|(% style="width:426px" %)MetadataProviderSchemes
567 |(% style="width:321px" %)OrganisationUnitScheme|(% style="width:351px" %)OrganisationSchemes|(% style="width:426px" %)OrganisationUnitSchemes
568 |(% style="width:321px" %)GeographicCodelist|(% style="width:351px" %)Codelists|(% style="width:426px" %)GeographicCodelists
569 |(% style="width:321px" %)GeoGridCodelist|(% style="width:351px" %)Codelists|(% style="width:426px" %)GeoGridCodelists
570 |(% style="width:321px" %)ConceptScheme|(% style="width:351px" %)Concepts|(% style="width:426px" %)ConceptSchemes
571 |(% style="width:321px" %)ValueList|(% style="width:351px" %)Codelists|(% style="width:426px" %)ValueLists
572 |(% style="width:321px" %)StructureMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)StructureMaps
573 |(% style="width:321px" %)RepresentationMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)RepresentationMaps
574 |(% style="width:321px" %)ConceptSchemeMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)ConceptSchemeMaps
575 |(% style="width:321px" %)CategorySchemeMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)CategorySchemeMaps
576 |(% style="width:321px" %)OrganisationSchemeMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)OrganisationSchemeMaps
577 |(% style="width:321px" %)ReportingTaxonomyMap|(% style="width:351px" %)StructureMappings|(% style="width:426px" %)ReportingTaxonomyMaps
578 |(% style="width:321px" %)DataConstraint|(% style="width:351px" %)Constraints|(% style="width:426px" %)DataConstraints
579 |(% style="width:321px" %)MetadataConstraint|(% style="width:351px" %)Constraints|(% style="width:426px" %)MetadataConstraints
580 |(% style="width:321px" %)MetadataProvisionAgreement|(% style="width:351px" %)ProvisionAgreement|(% style="width:426px" %)MetadataProvisionAgreements
581 |(% style="width:321px" %)CustomTypeScheme|(% style="width:351px" %)CustomTypes|(% style="width:426px" %)CustomTypeSchemes
582 |(% style="width:321px" %)VtlMappingScheme|(% style="width:351px" %)VtlMappings|(% style="width:426px" %)VtlMappingSchemes
583 |(% style="width:321px" %)NamePersonalisationScheme|(% style="width:351px" %)NamePersonalisations|(% style="width:426px" %)NamePersonalisationSchemes
584 |(% style="width:321px" %)RulesetScheme|(% style="width:351px" %)Rulesets|(% style="width:426px" %)RulesetSchemes
585 |(% style="width:321px" %)TransformationScheme|(% style="width:351px" %)Transformations|(% style="width:426px" %)TransformationSchemes
586 |(% style="width:321px" %)UserDefinedOperatorScheme|(% style="width:351px" %)UserDefinedOperators|(% style="width:426px" %)UserDefinedOperatorSchemes
Helena 2.1 587
Artur 22.1 588 No changes have been made to the way the following [[artefacts>>doc:Glossary.Artefact.WebHome]] are organised in the structure message:
Helena 2.1 589
Helena 7.4 590 (% style="width:1106.04px" %)
591 |(% style="width:326px" %)**Artefact type**|(% style="width:776px" %)**Collection**
592 |(% style="width:326px" %)Dataflow|(% style="width:776px" %)Dataflows
593 |(% style="width:326px" %)Metadataflow|(% style="width:776px" %)Metadataflows
594 |(% style="width:326px" %)CategoryScheme|(% style="width:776px" %)CategorySchemes
595 |(% style="width:326px" %)Categorisation|(% style="width:776px" %)Categorisations
596 |(% style="width:326px" %)Codelist|(% style="width:776px" %)Codelists
597 |(% style="width:326px" %)Hierarchy|(% style="width:776px" %)Hierarchies
598 |(% style="width:326px" %)HierarchyAssociation|(% style="width:776px" %)HierarchyAssociations
599 |(% style="width:326px" %)MetadataStructure|(% style="width:776px" %)MetadataStructures
600 |(% style="width:326px" %)DataStructure|(% style="width:776px" %)DataStructures
601 |(% style="width:326px" %)ReportingTaxonomy|(% style="width:776px" %)ReportingTaxonomies
602 |(% style="width:326px" %)Process|(% style="width:776px" %)Processes
603 |(% style="width:326px" %)ProvisionAgreement|(% style="width:776px" %)ProvisionAgreements
Helena 2.1 604
Artur 23.1 605 From (% style="color:#e74c3c" %)version(%%) 3.0, collections can appear in any order within a structure message.
Helena 2.1 606
Helena 16.8 607 (% class="wikigeneratedid" id="HDatamessages" %)
608 **Data messages**
Helena 2.1 609
Helena 19.8 610 (% class="wikigeneratedid" id="HDatamessages" %)
Artur 23.1 611 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.
Helena 2.1 612
Artur 23.1 613 Specifically, the following data messages are not supported in (% style="color:#e74c3c" %)version(%%) 3.0:
Helena 2.1 614
Artur 22.1 615 * [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Generic (time-series) data message
616 * [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Compact (time-series) data message
617 * [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Utility (time-series) data message
618 * [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 1.0/2.0 Cross-Sectional data message
619 * [[SDMX-ML>>doc:Glossary.SDMX-ML.WebHome]] 2.1 Generic data messages (for observations, time-series and crosssectional data)
Helena 2.1 620
Artur 22.1 621 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]].
Helena 2.1 622
Artur 23.1 623 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.
Helena 19.8 624
Helena 2.1 625 The time series variant of the Structure Specific Data message is no longer used.
626
Helena 16.8 627 (% class="wikigeneratedid" id="HReferencemetadatamessage" %)
628 **Reference metadata message**
Artur 23.1 629 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.
Helena 2.1 630
Helena 16.8 631 (% class="wikigeneratedid" id="HRegistrystructuralmetadata2018query2019messages" %)
632 **Registry structural metadata ‘query’ messages**
Artur 23.1 633 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.
Helena 2.1 634
Helena 16.8 635 (% class="wikigeneratedid" id="HStructurereferencing" %)
636 **Structure referencing**
Artur 23.1 637 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]].
Helena 2.1 638
Helena 11.1 639 == 6.2 SDMX-JSON ==
Helena 2.1 640
Artur 23.1 641 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.
Helena 2.1 642
Helena 16.9 643 (% class="wikigeneratedid" id="HStructuremessage-1" %)
644 **Structure message**
Artur 23.1 645 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.
Helena 2.1 646
Helena 16.9 647 (% class="wikigeneratedid" id="HDatamessage" %)
648 **Data message**
Artur 23.1 649 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.
Helena 2.1 650
Helena 16.9 651 (% class="wikigeneratedid" id="HReferencemetadatamessage-1" %)
652 **Reference metadata message**
Artur 23.1 653 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.
Helena 2.1 654
Helena 16.9 655 (% class="wikigeneratedid" id="HStructurereferencing-1" %)
656 **Structure referencing**
Artur 23.1 657 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.
Helena 2.1 658
Helena 11.1 659 == 6.3 SDMX-CSV ==
Helena 2.1 660
Artur 22.1 661 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.
Helena 2.1 662
Helena 17.1 663 (% class="wikigeneratedid" id="HDatamessage-1" %)
664 **Data message**
Artur 23.1 665 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:
Helena 2.1 666
Artur 22.1 667 * 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”;
668 * A column for the structure [[artefact>>doc:Glossary.Artefact.WebHome]]’s identification of the form
Helena 2.1 669
Artur 23.1 670 ESTAT:NA_MAIN(1.6.0) which replaces the [[dataflow>>doc:Glossary.Dataflow.WebHome]] identifier in (% style="color:#e74c3c" %)version(%%) 2.1; and
Helena 2.1 671
Artur 22.1 672 * 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.
Helena 2.1 673
Helena 17.1 674 (% class="wikigeneratedid" id="HReferencemetadatamessage-2" %)
675 **Reference metadata message**
Artur 23.1 676 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.
Helena 2.1 677
Helena 18.1 678 == 6.4 EDI deprecation ==
Helena 2.1 679
Artur 23.1 680 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.
Helena 2.1 681
682 = Appendix A – Version 2.1 Information Model =
683
684 [[image:SDMX 3-0-0 Major Changes FINAL-1.0_en_5f21cdf9.png||height="319" width="718"]]