Last modified by Helena on 2025/09/10 11:19

From version 15.4
edited by Helena
on 2025/05/16 13:15
Change comment: There is no comment for this version
To version 8.2
edited by Helena
on 2025/05/14 13:39
Change comment: Update document after refactoring.

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -SDMX STANDARDS
1 +SDMX STANDARDS1
Content
... ... @@ -65,7 +65,7 @@
65 65  
66 66  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 67  
68 -== 2.1 Web Services API ==
68 +== //2.1 Web Services API// ==
69 69  
70 70  (% style="width:948.039px" %)
71 71  |**REST API**|(% style="width:818px" %)(((
... ... @@ -86,7 +86,7 @@
86 86  )))
87 87  |**SOAP API**|(% style="width:818px" %)The SOAP API has been deprecated.
88 88  
89 -== 2.2 Transmission Formats ==
89 +== //2.2 Transmission Formats// ==
90 90  
91 91  (((
92 92  (% style="width:952.039px" %)
... ... @@ -122,7 +122,7 @@
122 122  |(% style="width:130px" %)**SDMX-CSV**|(% style="width:820px" %)The CSV data and reference metadata messages are not backwardly compatible with those under 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.
123 123  )))
124 124  
125 -== 2.3 Information Model ==
125 +== //2.3 Information Model// ==
126 126  
127 127  (((
128 128  (% style="width:955.039px" %)
... ... @@ -177,7 +177,7 @@
177 177  
178 178  = 3 Information Model =
179 179  
180 -== 3.1 Version 3.0 Information Model ==
180 +== //3.1 Version 3.0 Information Model// ==
181 181  
182 182  [[image:SDMX 3-0-0 Major Changes FINAL-1.0_en_6fc573fe.png||height="404" width="718"]]
183 183  
... ... @@ -187,7 +187,7 @@
187 187  
188 188  A number of ancillary structures including organisation schemes, process and reporting taxonomy are unchanged and have not been shown. Similarly, Organisation Scheme Map and Reporting Taxonomy Map have been omitted for simplicity. A schematic of the 2.1 model is given in Appendix A for comparison purposes.
189 189  
190 -== 3.2 Key Changes from Version 2.1 ==
190 +== //3.2 Key Changes from Version 2.1// ==
191 191  
192 192  New Maintainable Artefacts
193 193  
... ... @@ -230,7 +230,7 @@
230 230  
231 231  * GeospatialInformation – a string type where the value is an expression defining a set of geographical features using a purpose-designed syntax
232 232  
233 -== 3.3 Areas Unchanged from Version 2.1 ==
233 +== //3.3 Areas Unchanged from Version 2.1// ==
234 234  
235 235  The following areas of the information model are unchanged from version 2.1:
236 236  
... ... @@ -243,7 +243,7 @@
243 243  * Reporting taxonomy
244 244  * Process
245 245  
246 -== 3.4 Reference Metadata ==
246 +== //3.4 Reference Metadata// ==
247 247  
248 248  Reference metadata has been substantially re-designed for version 3.0 to simplify the model and better support practical use cases.
249 249  
... ... @@ -271,47 +271,86 @@
271 271  * TITLE – a multi-lingual data attribute
272 272  * SOURCE_AGENCY – a multi-value data attribute
273 273  
274 -> <Obs xsi:type="dsd:ObsType" OBS_VALUE="112" OBS_STAUS=”A” TIME_PERIOD="2010-09">
275 -> <!—- complex multi-value and multi-lingual data attributes ~-~->
276 -> <Comp id="TITLE" xsi:type="ns1:TITLE_ATTRIBUTE">
277 -> <Value>
278 -> <common:Text xml:lang="en">Some English Text</common:Text>
279 -> <common:Text xml:lang="fr">Quelques textes en anglais</common:Text>
280 -> </Value>
281 -> </Comp>
282 -> <Comp id="SOURCE_AGENCY" xsi:type="ns1:SOURCE_AGENCY_ATTRIBUTE">
283 -> <Value>4F0</Value>
284 -> <Value>4D0</Value>
285 -> <Value>CZ2</Value>
286 -> </Comp>
287 -> <!—- metadata attributes are reported like in metadata messages ~-~->
288 -> <Metadata>
289 -> <Attribute id="COLLECTION">
290 -> <Attribute id="METHOD">
291 -> <Text lang="en">AAA</Text>
292 -> </Attribute>
293 -> </Attribute>
294 -> <Attribute id="CONTACT">
295 -> <Value>CONTACT 1</Value>
296 -> <Attribute id="NAME">
297 -> <Value>Contact 1 Name 1</Value>
298 -> </Attribute>
299 -> <Attribute id="NAME">
300 -> <Value>Contact 1 Name 2</Value>
301 -> </Attribute>
302 -> </Attribute>
303 -> <Attribute id="CONTACT">
304 -> <Value>CONTACT 2</Value>
305 -> <Attribute id="NAME">
306 -> <Value>Contact 2 Name 1</Value>
307 -> </Attribute>
308 -> <Attribute id="NAME">
309 -> <Value>Contact 2 Name 2</Value>
310 -> </Attribute>
311 -> </Attribute>
312 -> </Metadata>
313 -> </Obs>
274 +<Obs xsi:type="dsd:ObsType" OBS_VALUE="112" OBS_STAUS=”A” TIME_PERIOD="2010-09">
314 314  
276 +<!—- complex multi-value and multi-lingual data attributes ~-~->
277 +
278 +<Comp id="TITLE" xsi:type="ns1:TITLE_ATTRIBUTE">
279 +
280 +<Value>
281 +
282 +<common:Text xml:lang="en">Some English Text</common:Text>
283 +
284 +<common:Text xml:lang="fr">Quelques textes en anglais</common:Text>
285 +
286 +</Value>
287 +
288 +</Comp>
289 +
290 +<Comp id="SOURCE_AGENCY" xsi:type="ns1:SOURCE_AGENCY_ATTRIBUTE">
291 +
292 +<Value>4F0</Value>
293 +
294 +<Value>4D0</Value>
295 +
296 +<Value>CZ2</Value>
297 +
298 +</Comp>
299 +
300 +<!—- metadata attributes are reported like in metadata messages ~-~->
301 +
302 +<Metadata>
303 +
304 +<Attribute id="COLLECTION">
305 +
306 +<Attribute id="METHOD">
307 +
308 +<Text lang="en">AAA</Text>
309 +
310 +</Attribute>
311 +
312 +</Attribute>
313 +
314 +<Attribute id="CONTACT">
315 +
316 +<Value>CONTACT 1</Value>
317 +
318 +<Attribute id="NAME">
319 +
320 +<Value>Contact 1 Name 1</Value>
321 +
322 +</Attribute>
323 +
324 +<Attribute id="NAME">
325 +
326 +<Value>Contact 1 Name 2</Value>
327 +
328 +</Attribute>
329 +
330 +</Attribute>
331 +
332 +<Attribute id="CONTACT">
333 +
334 +<Value>CONTACT 2</Value>
335 +
336 +<Attribute id="NAME">
337 +
338 +<Value>Contact 2 Name 1</Value>
339 +
340 +</Attribute>
341 +
342 +<Attribute id="NAME">
343 +
344 +<Value>Contact 2 Name 2</Value>
345 +
346 +</Attribute>
347 +
348 +</Attribute>
349 +
350 +</Metadata>
351 +
352 +</Obs>
353 +
315 315  === New - Metadata Provision Agreement ===
316 316  
317 317  In version 2.1 a Provision Agreement could be used to report information against a Dataflow or Metadataflow. From version 3.0 this is managed by two separate structures, the Data Provision Agreement and the Metadata Provision Agreement.
... ... @@ -324,7 +324,7 @@
324 324  
325 325  A Metadataset now has mandatory identification information, (owner id, id, version) enabling metadata providers to uniquely identify their reports for create, update or delete maintenance operations.
326 326  
327 -== 3.5 Microdata Exchange ==
366 +== //3.5 Microdata Exchange// ==
328 328  
329 329  Several changes have been made the Data Structure Definition to support microdata use cases in addition to aggregated time series.
330 330  
... ... @@ -336,35 +336,54 @@
336 336  
337 337  MeasureDimension behaviour as illustrated in the SDMX-ML example below:
338 338  
339 -> <str:MeasureList id=”MeasureDescriptor”>
340 -> <str:Measure id=”OBS_VALUE” minOccurs=”1” maxOccurs=”1” usage=”mandatory” > <str:ConceptIdentity>
341 -> <Ref id=”OBS_VALUE” maintainableParentID=”CONCEPTS” agencyID=”SDMX” maintainableParentVersion=”1.0.0” />
342 -> </str:ConceptIdentity>
343 -> <str:LocalRepresentation>
344 -> <str:TextFormat textType=”String” isMultiLingual=”true” />
345 -> </str:LocalRepresentation>
346 -> <str:ConceptRole>
347 -> <Ref id=”MEASURE” maintainableParentID=”SDMX_CONCEPT_ROLES” agencyID=”SDMX” maintainableParentVersion=”1.0.0” />
348 -> </str:ConceptRole>
349 -> </str:Measure>
350 -> ...
351 -> <str:Measure>
352 -> </str:MeasureList>
378 +<str:MeasureList id=”MeasureDescriptor”>
353 353  
354 -(% class="wikigeneratedid" id="HMulti-valuemeasuresandattributes" %)
355 -**Multi-value measures and attributes**
356 -Both measures and attributes 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 or attribute is //mandatory// or optional. In the SDMX-ML measure 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.
380 +<str:Measure id=”OBS_VALUE” minOccurs=”1” maxOccurs=”1” usage=”mandatory” > <str:ConceptIdentity>
357 357  
358 -(% class="wikigeneratedid" id="HAttributesrelationshiptomeasures" %)
359 -**Attributes relationship to measures**
382 +<Ref id=”OBS_VALUE” maintainableParentID=”CONCEPTS” agencyID=”SDMX” maintainableParentVersion=”1.0.0” />
383 +
384 +</str:ConceptIdentity>
385 +
386 +<str:LocalRepresentation>
387 +
388 +<str:TextFormat textType=”String” isMultiLingual=”true” />
389 +
390 +</str:LocalRepresentation>
391 +
392 +<str:ConceptRole>
393 +
394 +<Ref id=”MEASURE” maintainableParentID=”SDMX_CONCEPT_ROLES” agencyID=”SDMX” maintainableParentVersion=”1.0.0” />
395 +
396 +</str:ConceptRole>
397 +
398 +</str:Measure>
399 +
400 +...
401 +
402 +<str:Measure>
403 +
404 +</str:MeasureList>
405 +
406 +=== Multi-value measures and attributes ===
407 +
408 +Both measures and attributes 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 or attribute is
409 +
410 +//mandatory// or optional. In the SDMX-ML measure example above, the properties
411 +
412 +//minOccurs=”1” maxOccurs=”1” usage=”mandatory”// specify that OBS_VALUE must be 198 reported, and can only consist of a single value.
413 +
414 +=== Attributes relationship to measures ===
415 +
360 360  In addition to attaching attributes to a specific level within the dataset, their relationship 202 to measures can also be defined.
361 361  
362 -(% class="wikigeneratedid" id="HValuelists" %)
363 -**Value lists**
364 -Value lists help in modelling microdata by providing an enumeration similar to code lists 206 but allowing any string values without being restricted to the rules of SDMX identifiers. That allows ValueItems (the equivalent to Code) to contain symbols like ‘¥’ and ‘€’, but also means they are not identifiable.
418 +=== Value lists ===
365 365  
366 -== 3.6 Geospatial Data Exchange ==
420 +Value lists help in modelling microdata by providing an enumeration similar to code lists 206 but allowing any string values without being restricted to the rules of SDMX identifiers.
367 367  
422 +That allows ValueItems (the equivalent to Code) to contain symbols like ‘¥’ and ‘€’, but 208 also means they are not identifiable.
423 +
424 +== //3.6 Geospatial Data Exchange// ==
425 +
368 368  The version 3.0 model has been extended to provide explicit support for geospatial data.
369 369  
370 370  === GeospatialInformation type ===
... ... @@ -378,14 +378,14 @@
378 378  * 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.
379 379  * GeoGridCodelist – A code list defining a geographical grid composed of cells representing regular squared portions of the Earth. Each item references a cell within the grid.
380 380  
381 -== 3.7 Structure Mapping ==
439 +=== //3.7 Structure Mapping// ===
382 382  
383 383  The Structure Set in version 2.1 is a container for many mapping structures including Data Structure Map, Codelist Map and Concept Map. For version 3.0 the Structure Set artefact has been deprecated and replaced with a number of new maintainables giving better flexibility and reusability, specifically: Structure Map, Concept Scheme Map, Representation Map, Reporting Taxonomy Map, Category Scheme Map and Organisation Scheme Map.
384 384  
385 385  The version 2.1 Codelist Map been replaced with Representation Map which allows mappings to be defined between any combination of Code Lists, Value Lists and noncoded representations such as text strings and numbers.
386 386  
387 -(% class="wikigeneratedid" id="HMany-to-manysourceandtargetcomponents" %)
388 -**Many-to-many source and target components**
445 +==== Many-to-many source and target components ====
446 +
389 389  Structure mapping rules may be defined with both multiple source components and multiple target components in contrast to 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. For instance:
390 390  
391 391  Set the output component INDICATOR=”DE_A” if the input components are FREQ=”A” and REF_AREA=”DE”.
... ... @@ -395,21 +395,22 @@
395 395  Set the output components FREQ=”A”, REF_AREA=”DE” if the input component INDICATOR=”DE_A”.
396 396  
397 397  **Fixed source and target**
456 +
398 398  The Structure Map may now define input or output components which have a fixed value.
399 399  
400 -(% class="wikigeneratedid" id="HTimerepresentationsmapping" %)
401 -**Time representations mapping**
459 +==== Time representations mapping ====
460 +
402 402  Non SDMX time representations may now be described in a Structure Map, allowing them to be mapped into SDMX time formats.
403 403  
404 -(% class="wikigeneratedid" id="HRegularexpressionandsubstringmappings" %)
405 -**Regular expression and substring mappings**
463 +==== Regular expression and substring mappings ====
464 +
406 406  All item maps allow the use of regular expressions and substrings to match source values, specifically: Concept Scheme Map, Reporting Taxonomy Map, Category Scheme Map and Organisation Scheme Map.
407 407  
408 -(% class="wikigeneratedid" id="HItemmapsvalidityperiod" %)
409 -**Item maps validity period**
467 +==== Item maps validity period ====
468 +
410 410  Item 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 mapped is within the period.
411 411  
412 -== 3.8 Constraints ==
471 +=== //3.8 Constraints// ===
413 413  
414 414  Constraints in version 3.0 are modelled using two separate artefacts which replace the version 2.1 content constraint:
415 415  
... ... @@ -424,17 +424,17 @@
424 424  
425 425  Attachment constraints have been deprecated due to a lack of use cases.
426 426  
427 -== 3.9 Code List Extension ==
486 +=== //3.9 Code List Extension// ===
428 428  
429 429  In addition to the two new specialised geospatial forms, the option has been added to define a code list as an extension of, or by inheriting codes from, other lists. An optional prefix can be added to inherited codes to disambiguate duplicates.
430 430  
431 431  This feature allows new code lists to be easily derived from existing lists without the need to make and manually maintain copies. When querying for extended code list structures using the REST API, the option has been added to retrieve either the definition or the materialised list. Traditional literal lists of codes continue to be supported.
432 432  
433 -== 3.10 Discriminated Union of Code Lists ==
492 +=== //3.10 Discriminated Union of Code Lists// ===
434 434  
435 435  Combining code list extension with wildcarded constraints solves the discriminated union of code lists problem where a classification or breakdown has multiple “variants” which are all valid but mutually exclusive. A common example is economic activity where several alternative classification schemes are in use including ISIC revisions 1 to 4 and NACE as used in the European Community.
436 436  
437 -== 3.11 Code Hierarchies ==
496 +=== //3.11 Code Hierarchies// ===
438 438  
439 439  Code hierarchies allow the definition of complex hierarchies of codes from potentially multiple lists for data discovery purposes. Hierarchical Codelist has been deprecated and replaced by two new artefacts: Hierarchy – the actual hierarchy of codes, and Hierarchy Association links hierarchies directly to any other identifiable object, a capability missing 312 from the version 2.1 model. Further, the linkage can be within a particular context, for instance linking a hierarchy to a dimension within the context of a specific Dataflow (dimension REF_AREA in the context of the ECB:EXR Dataflow).
440 440  
... ... @@ -482,7 +482,7 @@
482 482  
483 483  = 5 REST Web Services API =
484 484  
485 -== 5.1 Simplified list of resources ==
544 +== //5.1 Simplified list of resources// ==
486 486  
487 487  The version 3.0 REST API has just five main resources:
488 488  
... ... @@ -496,7 +496,7 @@
496 496  
497 497  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 version 3.0 API is not backwardly compatible.
498 498  
499 -== 5.2 Improved data queries ==
558 +== //5.2 Improved data queries// ==
500 500  
501 501  Data queries have been changed to provide more granular selections from contexts wider than just a Dataflow.
502 502  
... ... @@ -535,7 +535,7 @@
535 535  
536 536  /data/dataflow/ESTAT/ICP/1.0.0/M…A.ANR,M…A.INX,M…B.CTG
537 537  
538 -== 5.3 Improved reference metadata queries ==
597 +== //5.3 Improved reference metadata queries// ==
539 539  
540 540  Reference metadata queries have been improved with a number of new options to retrieve metadata reports.
541 541  
... ... @@ -551,7 +551,7 @@
551 551  
552 552  /metadata/structure/datastructure/BIS/BIS_CBS/1.0
553 553  
554 -== 5.4 Structural metadata maintenance ==
613 +== //5.4 Structural metadata maintenance// ==
555 555  
556 556  Support has been added for maintenance of structural metadata.
557 557  
... ... @@ -559,7 +559,7 @@
559 559  
560 560  = 6 XML, JSON, CSV and EDI Transmission formats =
561 561  
562 -== 6.1 SDMX-ML ==
621 +== //6.1 SDMX-ML// ==
563 563  
564 564  The SDMX-ML XML messages have been modified and updated for version 3.0. While they broadly follow the same principles, there have been significant changes which break backward compatibility.
565 565  
... ... @@ -645,7 +645,7 @@
645 645  
646 646  The option to reference structures using Agency, ID and Version has been removed. From SDMX version 3.0 URN is used for all referencing purposes with the exception of local references such as where groups reference dimensions within a DSD.
647 647  
648 -== 6.2 SDMX-JSON ==
707 +== //6.2 SDMX-JSON// ==
649 649  
650 650  Like SDMX-ML, the SDMX-JSON messages have been significantly modified and updated for version 3.0. They are not backwardly compatible with version 2.1.
651 651  
... ... @@ -665,7 +665,7 @@
665 665  
666 666  As for SDMX-ML, the option to reference structures using Agency, ID and Version has been removed with URN used for all non-local referencing purposes.
667 667  
668 -== 6.3 SDMX-CSV ==
727 +== //6.3 SDMX-CSV// ==
669 669  
670 670  CSV in SDMX is used transmission of data and reference metadata only.
671 671  
... ... @@ -683,7 +683,7 @@
683 683  
684 684  The SDMX-CSV metadata message is new for version 3.0 and, like the SDMX-ML and SDMX-JSON equivalents, is used for the transmission reference metadata sets.
685 685  
686 -=== 6.4 EDI deprecation ===
745 +=== //6.4 EDI deprecation// ===
687 687  
688 688  The EDI format for transmission of both structures and data has been deprecated. Version 3.0 is therefore not backwardly compatible with legacy EDI messages.
689 689  
SUZ.Methodology.Code.MethodologyClass[0]