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)
-
Objects (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - 1Overview1 +SDMX STANDARDS - Parent
-
... ... @@ -1,0 +1,1 @@ 1 +Methodology.WebHome - 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,10 +86,8 @@ 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 -: 92 - 93 93 ((( 94 94 (% style="width:952.039px" %) 95 95 |(% style="width:130px" %)**SDMX-ML**|(% style="width:820px" %)((( ... ... @@ -124,7 +124,7 @@ 124 124 |(% 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. 125 125 ))) 126 126 127 -== //2.3 Information Model//==125 +== 2.3 Information Model == 128 128 129 129 ((( 130 130 (% style="width:955.039px" %) ... ... @@ -153,10 +153,7 @@ 153 153 154 154 //Conversion guidance for implementors// 155 155 156 -A version 2.1 Metadata Structure Definition can be converted to the version 3.0 model under some circumstances, but target information is either lost or has to be translated into a metadataflow. Further, conversion of a Data Structure Definition for collecting reference metadata against a dataset would need to make changes to the dataset’s Data Structure Definition. As the Data Structure Definition may not actually be specified, judgement would need to be taken, perhaps determining the most likely candidate by examining which 157 -))) 158 -|(% style="width:132px" %) |(% style="width:819px" %)((( 159 -already have metadata reported against their datasets. A 2.1 metadata report could be converted to a version 3.0 Metadataset if it is attached to a structure, but requires a Metadata Provision Agreement which would need to be created if not already in existence. 154 +A version 2.1 Metadata Structure Definition can be converted to the version 3.0 model under some circumstances, but target information is either lost or has to be translated into a metadataflow. Further, conversion of a Data Structure Definition for collecting reference metadata against a dataset would need to make changes to the dataset’s Data Structure Definition. As the Data Structure Definition 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. A 2.1 metadata report could be converted to a version 3.0 Metadataset if it is attached to a structure, but requires a Metadata Provision Agreement which would need to be created if not already in existence. 160 160 161 161 Conversion from the version 3.0 model to version 2.1 cannot be performed reliably. The process would need target information to be derived from analysis of the Metadataflows and Metadata Provision Agreements. Depending on the complexity it may not be possible to express that information in a version 2.1 Data Structure Definition. 162 162 ))) ... ... @@ -182,7 +182,7 @@ 182 182 183 183 = 3 Information Model = 184 184 185 -== //3.1 Version 3.0 Information Model//==180 +== 3.1 Version 3.0 Information Model == 186 186 187 187 [[image:SDMX 3-0-0 Major Changes FINAL-1.0_en_6fc573fe.png||height="404" width="718"]] 188 188 ... ... @@ -192,7 +192,7 @@ 192 192 193 193 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. 194 194 195 -== //3.2 Key Changes from Version 2.1//==190 +== 3.2 Key Changes from Version 2.1 == 196 196 197 197 New Maintainable Artefacts 198 198 ... ... @@ -220,7 +220,8 @@ 220 220 Removed Maintainable Artefacts 221 221 222 222 * Structure Set – replaced by Structure Map and the four item scheme maps 223 -* Hierarchical Codelist – replaced by Hierarchy and Hierarchy Association • Constraint – replaced by Data Constraint and Metadata Constraint 218 +* Hierarchical Codelist – replaced by Hierarchy and Hierarchy Association 219 +* Constraint – replaced by Data Constraint and Metadata Constraint 224 224 225 225 Changed Maintainable Artefacts 226 226 ... ... @@ -234,7 +234,7 @@ 234 234 235 235 * GeospatialInformation – a string type where the value is an expression defining a set of geographical features using a purpose-designed syntax 236 236 237 -== //3.3 Areas Unchanged from Version 2.1//==233 +== 3.3 Areas Unchanged from Version 2.1 == 238 238 239 239 The following areas of the information model are unchanged from version 2.1: 240 240 ... ... @@ -247,7 +247,7 @@ 247 247 * Reporting taxonomy 248 248 * Process 249 249 250 -== //3.4 Reference Metadata//==246 +== 3.4 Reference Metadata == 251 251 252 252 Reference metadata has been substantially re-designed for version 3.0 to simplify the model and better support practical use cases. 253 253 ... ... @@ -275,158 +275,96 @@ 275 275 * TITLE – a multi-lingual data attribute 276 276 * SOURCE_AGENCY – a multi-value data attribute 277 277 278 -<Obs xsi:type="dsd:ObsType" OBS_VALUE="112" OBS_STAUS=”A” TIME_PERIOD="2010-09"> 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> 279 279 280 -<!—- complex multi-value and multi-lingual data attributes ~-~-> 281 - 282 -<Comp id="TITLE" xsi:type="ns1:TITLE_ATTRIBUTE"> 283 - 284 -<Value> 285 - 286 -<common:Text xml:lang="en">Some English Text</common:Text> 287 - 288 -<common:Text xml:lang="fr">Quelques textes en anglais</common:Text> 289 - 290 -</Value> 291 - 292 -</Comp> 293 - 294 -<Comp id="SOURCE_AGENCY" xsi:type="ns1:SOURCE_AGENCY_ATTRIBUTE"> 295 - 296 -<Value>4F0</Value> 297 - 298 -<Value>4D0</Value> 299 - 300 -<Value>CZ2</Value> 301 - 302 -</Comp> 303 - 304 -<!—- metadata attributes are reported like in metadata messages ~-~-> 305 - 306 -<Metadata> 307 - 308 -<Attribute id="COLLECTION"> 309 - 310 -<Attribute id="METHOD"> 311 - 312 -<Text lang="en">AAA</Text> 313 - 314 -</Attribute> 315 - 316 -</Attribute> 317 - 318 -<Attribute id="CONTACT"> 319 - 320 -<Value>CONTACT 1</Value> 321 - 322 -<Attribute id="NAME"> 323 - 324 -<Value>Contact 1 Name 1</Value> 325 - 326 -</Attribute> 327 - 328 -<Attribute id="NAME"> 329 - 330 -<Value>Contact 1 Name 2</Value> 331 - 332 -</Attribute> 333 - 334 -</Attribute> 335 - 336 -<Attribute id="CONTACT"> 337 - 338 -<Value>CONTACT 2</Value> 339 - 340 -<Attribute id="NAME"> 341 - 342 -<Value>Contact 2 Name 1</Value> 343 - 344 -</Attribute> 345 - 346 -<Attribute id="NAME"> 347 - 348 -<Value>Contact 2 Name 2</Value> 349 - 350 -</Attribute> 351 - 352 -</Attribute> 353 - 354 -</Metadata> 355 - 356 -</Obs> 357 - 358 -=== New - Metadata Provision Agreement === 359 - 315 +(% class="wikigeneratedid" id="HNew-MetadataProvisionAgreement" %) 316 +**New - Metadata Provision Agreement** 360 360 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. 361 361 362 -= ==MovetargettoMetadataflowandMetadataProvisionAgreement===363 - 319 +(% class="wikigeneratedid" id="HMovetargettoMetadataflowandMetadataProvisionAgreement" %) 320 +**Move target to Metadataflow and Metadata Provision Agreement** 364 364 For reference metadata that is reported against structures, the allowable targets information which is used to specify what structures the reference metadata can be reported against, has moved to the Metadataflow and can be further refined in the Metadata Provision Agreement. 365 365 366 -= ==Addmaintainablepropertiestoreferencemetadata===367 - 323 +(% class="wikigeneratedid" id="HAddmaintainablepropertiestoreferencemetadata" %) 324 +**Add maintainable properties to reference metadata** 368 368 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. 369 369 370 -== //3.5 Microdata Exchange//==327 +== 3.5 Microdata Exchange == 371 371 372 372 Several changes have been made the Data Structure Definition to support microdata use cases in addition to aggregated time series. 373 373 374 -=== Multiple measures === 331 +(% class="wikigeneratedid" id="HMultiplemeasures" %) 332 +**Multiple measures** 333 +Multiple measures 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. Measures now act like any other component in that they use concepts, can have their own local coded or uncoded representation defined within the Data Structure Definition, and can be either mandatory or conditional. Creating a measure with the “MEASURE” concept role applied emulates the version 2.1 MeasureDimension behaviour as illustrated in the SDMX-ML example below: 375 375 376 -Multiple measures 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. Measures now act like any other component in that they use concepts, can have their own local coded or uncoded representation defined within the 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> 377 377 378 -Data Structure Definition, and can be either mandatory or conditional. Creating a measure with the “MEASURE” concept role applied emulates the version 2.1 350 +(% class="wikigeneratedid" id="HMulti-valuemeasuresandattributes" %) 351 +**Multi-value measures and attributes** 352 +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. 379 379 380 -MeasureDimension behaviour as illustrated in the SDMX-ML example below: 381 - 382 -<str:MeasureList id=”MeasureDescriptor”> 383 - 384 -<str:Measure id=”OBS_VALUE” minOccurs=”1” maxOccurs=”1” usage=”mandatory” > <str:ConceptIdentity> 385 - 386 -<Ref id=”OBS_VALUE” maintainableParentID=”CONCEPTS” agencyID=”SDMX” maintainableParentVersion=”1.0.0” /> 387 - 388 -</str:ConceptIdentity> 389 - 390 -<str:LocalRepresentation> 391 - 392 -<str:TextFormat textType=”String” isMultiLingual=”true” /> 393 - 394 -</str:LocalRepresentation> 395 - 396 -<str:ConceptRole> 397 - 398 -<Ref id=”MEASURE” maintainableParentID=”SDMX_CONCEPT_ROLES” agencyID=”SDMX” maintainableParentVersion=”1.0.0” /> 399 - 400 -</str:ConceptRole> 401 - 402 -</str:Measure> 403 - 404 -... 405 - 406 -<str:Measure> 407 - 408 -</str:MeasureList> 409 - 410 -=== Multi-value measures and attributes === 411 - 412 -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 413 - 414 -//mandatory// or optional. In the SDMX-ML measure example above, the properties 415 - 416 -//minOccurs=”1” maxOccurs=”1” usage=”mandatory”// specify that OBS_VALUE must be 198 reported, and can only consist of a single value. 417 - 418 -=== Attributes relationship to measures === 419 - 354 +(% class="wikigeneratedid" id="HAttributesrelationshiptomeasures" %) 355 +**Attributes relationship to measures** 420 420 In addition to attaching attributes to a specific level within the dataset, their relationship 202 to measures can also be defined. 421 421 422 -=== Value lists === 358 +(% class="wikigeneratedid" id="HValuelists" %) 359 +**Value lists** 360 +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. 423 423 424 - Valuelistshelp in modelling microdata byprovidingan enumeration similar to codelists206 butallowing any string valueswithout beingrestrictedto the rules of SDMX identifiers.362 +== 3.6 Geospatial Data Exchange == 425 425 426 -That allows ValueItems (the equivalent to Code) to contain symbols like ‘¥’ and ‘€’, but 208 also means they are not identifiable. 427 - 428 -== //3.6 Geospatial Data Exchange// == 429 - 430 430 The version 3.0 model has been extended to provide explicit support for geospatial data. 431 431 432 432 === GeospatialInformation type === ... ... @@ -440,14 +440,14 @@ 440 440 * 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. 441 441 * 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. 442 442 443 -== =//3.7 Structure Mapping//===377 +== 3.7 Structure Mapping == 444 444 445 445 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. 446 446 447 447 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. 448 448 449 -= ===Many-to-manysourceandtargetcomponents====450 - 383 +(% class="wikigeneratedid" id="HMany-to-manysourceandtargetcomponents" %) 384 +**Many-to-many source and target components** 451 451 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: 452 452 453 453 Set the output component INDICATOR=”DE_A” if the input components are FREQ=”A” and REF_AREA=”DE”. ... ... @@ -457,22 +457,21 @@ 457 457 Set the output components FREQ=”A”, REF_AREA=”DE” if the input component INDICATOR=”DE_A”. 458 458 459 459 **Fixed source and target** 460 - 461 461 The Structure Map may now define input or output components which have a fixed value. 462 462 463 -= ===Timerepresentationsmapping====464 - 396 +(% class="wikigeneratedid" id="HTimerepresentationsmapping" %) 397 +**Time representations mapping** 465 465 Non SDMX time representations may now be described in a Structure Map, allowing them to be mapped into SDMX time formats. 466 466 467 -= ===Regularexpressionandsubstringmappings====468 - 400 +(% class="wikigeneratedid" id="HRegularexpressionandsubstringmappings" %) 401 +**Regular expression and substring mappings** 469 469 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. 470 470 471 -= ===Itemmapsvalidityperiod====472 - 404 +(% class="wikigeneratedid" id="HItemmapsvalidityperiod" %) 405 +**Item maps validity period** 473 473 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. 474 474 475 -== =//3.8 Constraints//===408 +== 3.8 Constraints == 476 476 477 477 Constraints in version 3.0 are modelled using two separate artefacts which replace the version 2.1 content constraint: 478 478 ... ... @@ -487,17 +487,17 @@ 487 487 488 488 Attachment constraints have been deprecated due to a lack of use cases. 489 489 490 -== =//3.9 Code List Extension//===423 +== 3.9 Code List Extension == 491 491 492 492 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. 493 493 494 494 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. 495 495 496 -== =//3.10 Discriminated Union of Code Lists//===429 +== 3.10 Discriminated Union of Code Lists == 497 497 498 498 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. 499 499 500 -== =//3.11 Code Hierarchies//===433 +== 3.11 Code Hierarchies == 501 501 502 502 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). 503 503 ... ... @@ -545,7 +545,7 @@ 545 545 546 546 = 5 REST Web Services API = 547 547 548 -== //5.1 Simplified list of resources//==481 +== 5.1 Simplified list of resources == 549 549 550 550 The version 3.0 REST API has just five main resources: 551 551 ... ... @@ -559,7 +559,7 @@ 559 559 560 560 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. 561 561 562 -== //5.2 Improved data queries//==495 +== 5.2 Improved data queries == 563 563 564 564 Data queries have been changed to provide more granular selections from contexts wider than just a Dataflow. 565 565 ... ... @@ -598,7 +598,7 @@ 598 598 599 599 /data/dataflow/ESTAT/ICP/1.0.0/M…A.ANR,M…A.INX,M…B.CTG 600 600 601 -== //5.3 Improved reference metadata queries//==534 +== 5.3 Improved reference metadata queries == 602 602 603 603 Reference metadata queries have been improved with a number of new options to retrieve metadata reports. 604 604 ... ... @@ -614,7 +614,7 @@ 614 614 615 615 /metadata/structure/datastructure/BIS/BIS_CBS/1.0 616 616 617 -== //5.4 Structural metadata maintenance//==550 +== 5.4 Structural metadata maintenance == 618 618 619 619 Support has been added for maintenance of structural metadata. 620 620 ... ... @@ -622,7 +622,7 @@ 622 622 623 623 = 6 XML, JSON, CSV and EDI Transmission formats = 624 624 625 -== //6.1 SDMX-ML//==558 +== 6.1 SDMX-ML == 626 626 627 627 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. 628 628 ... ... @@ -708,7 +708,7 @@ 708 708 709 709 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. 710 710 711 -== //6.2 SDMX-JSON//==644 +== 6.2 SDMX-JSON == 712 712 713 713 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. 714 714 ... ... @@ -728,7 +728,7 @@ 728 728 729 729 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. 730 730 731 -== //6.3 SDMX-CSV//==664 +== 6.3 SDMX-CSV == 732 732 733 733 CSV in SDMX is used transmission of data and reference metadata only. 734 734 ... ... @@ -746,7 +746,7 @@ 746 746 747 747 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. 748 748 749 -=== //6.4 EDI deprecation//===682 +=== 6.4 EDI deprecation === 750 750 751 751 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. 752 752
- SUZ.Methodology.Code.MethodologyClass[0]
-