Changes for page Part IV. Data and Reference Metadata Namespaces
Last modified by Helena K. on 2026/06/09 17:04
Summary
-
Page properties (3 modified, 0 added, 0 removed)
-
Objects (0 modified, 1 added, 1 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -Part IV. Data 1 +Part IV. Data and Reference Metadata Namespaces - Tags
-
... ... @@ -1,0 +1,1 @@ 1 +Annotation|Artefact|Attachment level|Attribute|Attribute relationship|Code|Code list|Component|Concept scheme|Data consumer|Data set|Data structure definition|Dataflow|Dimension|Facet|Hierarchy|Incremental update|Item scheme|Maintenance agency|Measure|Metadata set|Metadataflow|Provision agreement|Reference metadata|Representation|SDMX Registry|SDMX-ML|Series key|Statistical data and metadata exchange|Structural metadata|isExternalReference - Content
-
... ... @@ -6,11 +6,11 @@ 6 6 7 7 The first change in the data and metadata message is one of terminology. In order to foster consistency in the standard, the names and namespaces of the data and metadata message have been changed. The namespaces now have a uniform format of /data/format and /metadata/format. This also applies to the message names as well, where the names follow the pattern of FormatData (e.g. StructuredData and GenericMetadata). 8 8 9 -For data messages, since (% style="color:#e74c3c" %)version(%%)3.0 only the (data-)structure-specific format is maintained, the generic format being deprecated. The structure-specific data message combines the principles of the former compact and cross-sectional formats into one more generalised format. All data can be exchanged as either an un-grouped collection of observations, each specifying a full key, or it can be exchanged as data grouped into series with any single[[dimension>>doc:sdmx:Glossary.Dimension.WebHome]]placed at the observation level.9 +For data messages, since version 3.0 only the (data-)structure-specific format is maintained, the generic format being deprecated. The structure-specific data message combines the principles of the former compact and cross-sectional formats into one more generalised format. All data can be exchanged as either an un-grouped collection of observations, each specifying a full key, or it can be exchanged as data grouped into series with any single dimension placed at the observation level. 10 10 11 11 A base schema now imposes a strict format for the generated structure-specific schemas. This not only allows performing the required validations, but the messages will also be much simpler to process as the format will always use the same element names. 12 12 13 -For metadata messages, since (% style="color:#e74c3c" %)version(%%)3.0, in opposite, only the generic format is maintained, the (metadata-)structure-specific format being deprecated.13 +For metadata messages, since version 3.0, in opposite, only the generic format is maintained, the (metadata-)structure-specific format being deprecated. 14 14 15 15 = 2 Schema Documentation = 16 16 ... ... @@ -38,7 +38,7 @@ 38 38 Derivation: 39 39 40 40 AnnotableType (extension) 41 - DataSetType 41 + DataSetType 42 42 43 43 Attributes: 44 44 structureRef, setID?, action?, reportingBeginDate?, reportingEndDate?, validFromDate?, validToDate?, publicationYear?, publicationPeriod? ... ... @@ -66,10 +66,10 @@ 66 66 |**Name**|**Type**|**Documentation** 67 67 |Annotations|AnnotationsType|Annotations is a reusable element the provides for a collection of annotations. It has been made global so that restrictions of types that extend AnnotatableType may reference it. 68 68 |DataProvider|DataProviderReferenceType|DataProvider contains a reference to the provider for the data set. 69 -|Atts| *AttsType*|Atts contains a set of data or metadata attribute values with an attachment level of none (i.e. data set level) or reported against a partial set of dimension values.70 -|Group| *GroupType*|Group contains a reference to a defined group in the data structure definition along with its key (if necessary) and values for the attributes which are associated with the group. An attribute is associated to a group by either an explicit group relationship or by a group attachment when the attribute has a relationship with a dimension which is a member of this group.71 -|Series| *SeriesType*|Series contains a collection of observations that share a common key (set of dimension values). The key of a series is every dimension defined in the data structure definition, save the dimension at the observation level. In addition to the key and observations, the series contains values for data and metadata attributes which have a relationship with any dimension that is part of the series key, so long as the attribute does not specify an attachment group or also has a relationship with the dimension declared to be at the observation level.72 -|Obs| *ObsType*|Obs is an un-grouped observation. This observation has a key which is a set of values for all dimensions declared in the data structure definition. In addition to the key, the value of the observation can be provided along with values for all data and metadata attributes which have an association with the observation or any dimension (so long as it does not specify a group attachment).69 +|Atts|//AttsType//|Atts contains a set of data or metadata attribute values with an attachment level of none (i.e. data set level) or reported against a partial set of dimension values. 70 +|Group|//GroupType//|Group contains a reference to a defined group in the data structure definition along with its key (if necessary) and values for the attributes which are associated with the group. An attribute is associated to a group by either an explicit group relationship or by a group attachment when the attribute has a relationship with a dimension which is a member of this group. 71 +|Series|//SeriesType//|Series contains a collection of observations that share a common key (set of dimension values). The key of a series is every dimension defined in the data structure definition, save the dimension at the observation level. In addition to the key and observations, the series contains values for data and metadata attributes which have a relationship with any dimension that is part of the series key, so long as the attribute does not specify an attachment group or also has a relationship with the dimension declared to be at the observation level. 72 +|Obs|//ObsType//|Obs is an un-grouped observation. This observation has a key which is a set of values for all dimensions declared in the data structure definition. In addition to the key, the value of the observation can be provided along with values for all data and metadata attributes which have an association with the observation or any dimension (so long as it does not specify a group attachment). 73 73 |Metadata|MetadataSetType|Allows for attachment of reference metadata against to the data set. 74 74 75 75 //**GroupType:**// GroupType is the abstract type which defines a structure which is used to communicate attribute values for a group defined in a data structure definition. The group can consist of either a subset of the dimensions defined by the data structure definition, or an association to an attachment constraint, which in turn defines key sets to which attributes can be attached. In the case that the group is based on an attachment constraint, only the identification of group is provided. It is expected that a system which is processing this will relate that identifier to the key sets defined in the constraint and apply the values provided for the attributes appropriately. Data structure definition schemas will drive types based on this for each group defined in the data structure definition. Both the dimension values which make up the key (if applicable) and the attribute values associated with the group will be represented with XML attributes. This is specified in the content model with the declaration of anyAttributes in the "local" namespace. The derived group type will refine this structure so that the attributes are explicit. The XML attributes will be given a name based on the attribute's identifier. These XML attributes will be unqualified (meaning they do not have a namespace associated with them). The dimension XML attributes will be required while the attribute XML attributes will be optional. To allow for generic processing, it is required that the only unqualified XML attributes in the derived group type be for the group dimensions and data or metadata attributes declared in the data structure definition. If additional attributes are required, these should be qualified with a namespace so that a generic application can easily distinguish them as not being meant to represent a data structure definition dimension or attribute. ... ... @@ -181,7 +181,7 @@ 181 181 |Comp|//CompType//|Comp contains the details of observation measures or attributes that have complex representation and cannot be expressed as XML attributes. 182 182 |Metadata|MetadataSetType|Allows for attachment of reference metadata against to the observation. 183 183 184 -** *AttsType*:** AttsType is the abstract type which defines a structure which is used to group a collection of data or metadata attributes which have a key in common. The key for a attribute collection is a subset of the dimension defined in the data structure definition. This is also used for data set level attributes (i.e. those with an attribute relationship of none). In this case, the subset of dimensions is empty. Data structure definition schemas will derive a type based on this that is specific to the data structure definition. The dimension values which make up the key will be represented with local (non-namespace qualified) XML attributes. The metadata attribute values associated with the key dimensions will be expressed as XML local (non-namespace qualified) attributes if they are simple values (e.g. enumerated, dates, numbers) and are not repeatable. Metadata attributes that are repeatable, or do not have simple values (e.g. text) will be expressed using the Comp element. These dimensions and simple attributes are specified in the content model with the declaration of anyAttributes in the "local" namespace. The derived series type will refine this structure so that the attributes are explicit. The XML attributes will be given a name based on the attribute's identifier. These XML attributes will be unqualified (meaning they do not have a namespace associated with them). The dimension XML attributes will be required while the attribute XML attributes will be optional. To allow for generic processing, it is required that the only unqualified XML attributes in the derived group type be for the series dimensions and attributes declared in the data structure definition. If additional attributes are required, these should be qualified with a namespace so that a generic application can easily distinguish them as not being meant to represent a data structure definition dimension or attribute.184 +//**AttsType:**// AttsType is the abstract type which defines a structure which is used to group a collection of data or metadata attributes which have a key in common. The key for a attribute collection is a subset of the dimension defined in the data structure definition. This is also used for data set level attributes (i.e. those with an attribute relationship of none). In this case, the subset of dimensions is empty. Data structure definition schemas will derive a type based on this that is specific to the data structure definition. The dimension values which make up the key will be represented with local (non-namespace qualified) XML attributes. The metadata attribute values associated with the key dimensions will be expressed as XML local (non-namespace qualified) attributes if they are simple values (e.g. enumerated, dates, numbers) and are not repeatable. Metadata attributes that are repeatable, or do not have simple values (e.g. text) will be expressed using the Comp element. These dimensions and simple attributes are specified in the content model with the declaration of anyAttributes in the "local" namespace. The derived series type will refine this structure so that the attributes are explicit. The XML attributes will be given a name based on the attribute's identifier. These XML attributes will be unqualified (meaning they do not have a namespace associated with them). The dimension XML attributes will be required while the attribute XML attributes will be optional. To allow for generic processing, it is required that the only unqualified XML attributes in the derived group type be for the series dimensions and attributes declared in the data structure definition. If additional attributes are required, these should be qualified with a namespace so that a generic application can easily distinguish them as not being meant to represent a data structure definition dimension or attribute. 185 185 186 186 Derivation: 187 187 ... ... @@ -230,7 +230,7 @@ 230 230 231 231 === 2.2.3 Complex Types === 232 232 233 -** *MetadataSetBaseType*:** MetadataSetBaseType defines the base refinement of the MetadataSetType. Its purpose is to restrict the urn attribute.233 +//**MetadataSetBaseType:**// MetadataSetBaseType defines the base refinement of the MetadataSetType. Its purpose is to restrict the urn attribute. 234 234 235 235 Derivation: 236 236 ... ... @@ -320,8 +320,11 @@ 320 320 |Link|(% style="width:185px" %)LinkType|(% style="width:412px" %)Allows for the linking of other resources to identifiable objects. For example, if there is reference metadata associated with a structure, a link to the metadata report can be dynamically inserted in the structure metadata. 321 321 |Name|(% style="width:185px" %)TextType|(% style="width:412px" %)Name provides for a human-readable name for the object. This may be provided in multiple, parallel language-equivalent forms. 322 322 |Description|(% style="width:185px" %)TextType|(% style="width:412px" %)Description provides for a longer human-readable description of the object. This may be provided in multiple, parallel language-equivalent forms. 323 -|MetadataProvision<br/>Agreement|(% style="width:185px" %)MetadataProvisionAgree<br/>mentReferenceType|(% style="width:412px" %)Metadataflow provides a reference to the metadata provision agreement the metadata set is being reported against. 324 -|Metadataflow|(% style="width:185px" %)MetadataflowReference<br/>Type|(% style="width:412px" %)Metadataflow provides a reference to the metadataflow the metadata set is being reported against. 323 +|MetadataProvision 324 +Agreement|(% style="width:185px" %)MetadataProvisionAgree 325 +mentReferenceType|(% style="width:412px" %)Metadataflow provides a reference to the metadata provision agreement the metadata set is being reported against. 326 +|Metadataflow|(% style="width:185px" %)MetadataflowReference 327 +Type|(% style="width:412px" %)Metadataflow provides a reference to the metadataflow the metadata set is being reported against. 325 325 |Target|(% style="width:185px" %)WildcardUrnType|(% style="width:412px" %)Target references the target structures for which metadata is being reported. These must conform with the constraints defined by the metadata provision agreement and/or the metadataflow. 326 326 |Attribute|(% style="width:185px" %)AttributeType|(% style="width:412px" %)Att elements hold the reported metadata attribute values being reported in the metadata set. These conform to the metadata structure definition. 327 327 ... ... @@ -340,17 +340,19 @@ 340 340 341 341 Attribute Documentation: 342 342 343 -|**Name**|**Type**|**Documentation**| 344 -|id|IDType|The id attribute identifies the metadata attribute that the value is being reported for.| 346 +(% style="width:1037.29px" %) 347 +|(% style="width:113px" %)**Name**|(% style="width:162px" %)**Type**|(% style="width:760px" %)**Documentation** 348 +|(% style="width:113px" %)id|(% style="width:162px" %)IDType|(% style="width:760px" %)The id attribute identifies the metadata attribute that the value is being reported for. 345 345 346 346 Element Documentation: 347 347 348 -|**Name**|**Type**|**Documentation**| 349 -|Annotations|AnnotationsType|Annotations is a reusable element the provides for a collection of annotations. It has been made global so that restrictions of types that extend AnnotatableType may reference it.| 350 -|Value|xs:anySimpleType|Value holds any simple value (enumerated or not) for the metadata attribute. It can be repeated if this metadata attribute allows for multiple values.| 351 -|Text|TextType|Text is used to supply parallel multi-lingual textual values for the reported metadata attribute. This will be used if the text format of the metadata attribute has a type of string, and the multi-lingual value is set to true.| 352 -|StructuredText|XHTMLType|StructuredText is used to supply parallel multi-lingual structured (as XHTML) textual values for the reported metadata attribute. This will be used if the text format of the metadata attribute has a type of XHTML, and the multi-lingual value is set to true.| 353 -|Attribute|AttributeType|Att contains the reported metadata attribute values for the child metadata attributes.| 352 +(% style="width:1095.29px" %) 353 +|**Name**|**Type**|(% style="width:821px" %)**Documentation** 354 +|Annotations|AnnotationsType|(% style="width:821px" %)Annotations is a reusable element the provides for a collection of annotations. It has been made global so that restrictions of types that extend AnnotatableType may reference it. 355 +|Value|xs:anySimpleType|(% style="width:821px" %)Value holds any simple value (enumerated or not) for the metadata attribute. It can be repeated if this metadata attribute allows for multiple values. 356 +|Text|TextType|(% style="width:821px" %)Text is used to supply parallel multi-lingual textual values for the reported metadata attribute. This will be used if the text format of the metadata attribute has a type of string, and the multi-lingual value is set to true. 357 +|StructuredText|XHTMLType|(% style="width:821px" %)StructuredText is used to supply parallel multi-lingual structured (as XHTML) textual values for the reported metadata attribute. This will be used if the text format of the metadata attribute has a type of XHTML, and the multi-lingual value is set to true. 358 +|Attribute|AttributeType|(% style="width:821px" %)Att contains the reported metadata attribute values for the child metadata attributes. 354 354 355 355 = 3 Mapping to Structure-Specific Schemas = 356 356 ... ... @@ -365,10 +365,10 @@ 365 365 In the subsequent sections, the following namespace prefixes are used: 366 366 367 367 |**Namespace**|**Prefix**| 368 -|http://www.w3.org/2001/XMLSchema|xs| 369 -|http://www.sdmx.org/resources/sdmxml/schemas/v3_1/common|common| 370 -|http://www.sdmx.org/resources/sdmxml/schemas/v3_1/data/structurespecific|dsd| 371 -|<http://www.sdmx.org/resources/sdmxml/schemas/v3_1/metadata/generic>|metadata| 373 +|http:~/~/www.w3.org/2001/XMLSchema|xs| 374 +|http:~/~/www.sdmx.org/resources/sdmxml/schemas/v3_1/common|common| 375 +|http:~/~/www.sdmx.org/resources/sdmxml/schemas/v3_1/data/structurespecific|dsd| 376 +|<http:~/~/www.sdmx.org/resources/sdmxml/schemas/v3_1/metadata/generic>|metadata| 372 372 373 373 It is assumed that in order to use this guide, the reader is familiar with schema terminology. However, for convenience the following is list of the terminology used here: 374 374 ... ... @@ -432,8 +432,8 @@ 432 432 The representation of a component is determined by the following precedence: 433 433 434 434 1. The local representation defined by the component 435 - 2. The core representation defined in the concept from which the component takes its semantic436 - 3. A default representation of an un-faceted text format with a data type of String.440 +1. The core representation defined in the concept from which the component takes its semantic 441 +1. A default representation of an un-faceted text format with a data type of String. 437 437 438 438 The representation will either define a text format, an enumeration with an enumeration format, or a union of the former with the value of a irrelevant representation ‘’ (tilde). 439 439 ... ... @@ -449,16 +449,14 @@ 449 449 450 450 A representation which defines an enumeration from a codelist or hierarchy will result in a simple type that is a restriction of the common:IDType. The simple type will define enumerations for each code in the codelist or hierarchy, accounting for extensions. The value for these enumerations will be identifier of the item. If desired, the names of the item may be placed in the documentation of the enumeration, but this is not required. Example: 451 451 452 -xml 453 - <xs:simpleType name="ESTAT.CL\_COUNTRY.1.0"> 454 - <xs:restriction base="common:IDType"> 455 - <xs:enumeration value="BE"> 456 - <xs:annotation> 457 - <xs:documentation xml:lang="en">Belgium</xs:documentation> 458 - </xs:annotation> 459 - </xs:enumeration> 457 +> <xs:simpleType name="ESTAT.CL\_COUNTRY.1.0"> 458 +> <xs:restriction base="common:IDType"> 459 +> <xs:enumeration value="BE"> 460 +> <xs:annotation> 461 +> <xs:documentation xml:lang="en">Belgium</xs:documentation> 462 +> </xs:annotation> 463 +> </xs:enumeration> 460 460 461 - 462 462 === 3.3.5 Representation with Value List Enumeration === 463 463 464 464 A representation which defines an enumeration from a value list will result in a simple type that is a restriction of the xs:string data type. The simple type will define enumerations for each value item in the value list. The value for these enumerations will be identifier of the item. If desired, the names of the item may be placed in the documentation of the enumeration, but this is not required. ... ... @@ -473,61 +473,61 @@ 473 473 474 474 If the representation is not simple, see the rules in the following section for complex text formats. If the representation is simple, the first step is to determine the base type from the text format data type: 475 475 476 -|**SDMX Data Type**|**XML Schema Data Type**| 477 -|String|xs:string| 478 -|AlphaNumeric|common:AlphaNumericType| 479 -|Alpha|common:AlphaType| 480 -|Numeric|common:NumericType| 481 -|BigInteger|xs:integer| 482 -|Integer|xs:int| 483 -|Long|xs:long| 484 -|Short|xs:short| 485 -|Decimal|xs:decimal| 486 -|Float|xs:float| 487 -|Double|xs:double| 488 -|Boolean|xs:Boolean| 489 -|URI|xs:anyURI| 490 -|Count|xs:integer| 491 -|InclusiveValueRange|xs:decimal| 492 -|ExclusiveValueRange|xs: decimal| 493 -|Incremental|xs: decimal| 494 -|ObservationalTimePeriod|common:ObservationalTimePeriodType| 495 -|StandardTimePeriod|common:StandardTimePeriodType| 496 -|BasicTimePeriod|common:BasicTimePeriodType| 497 -|GregorianTimePeriod|common:GregorianTimePeriodType| 498 -|GregorianYear|xs:gYear| 499 -|GregorianYearMonth|xs:gYearMonth| 500 -|GregorianDay|xs:date| 501 -|ReportingTimePeriod|common:ReportingTimePeriodType| 502 -|ReportingYear|common:ReportingYearType| 503 -|ReportingSemester|common:ReportingSemesterType| 504 -|ReportingTrimester|common:ReportingTrimesterType| 505 -|ReportingQuarter|common:ReportingQuarterType| 506 -|ReportingMonth|common:ReportingMonthType| 507 -|ReportingWeek|common:ReportingWeekType| 508 -|ReportingDay|common:ReportingDayType| 509 -|DateTime|xs:dateTime| 510 -|TimeRange|common:TimeRangeType| 511 -|Month|xs:gMonth| 512 -|MonthDay|xs:gMonthDay| 513 -|Day|xs:gDay| 514 -|Time|xs:time| 515 -|Duration|xs:duration| 516 -|GeospatialInformation|xs:string| 517 -|XHTML|See the following section for complex representations| 479 +(% style="width:679.294px" %) 480 +|(% style="width:286px" %)**SDMX Data Type**|(% style="width:390px" %)**XML Schema Data Type** 481 +|(% style="width:286px" %)String|(% style="width:390px" %)xs:string 482 +|(% style="width:286px" %)AlphaNumeric|(% style="width:390px" %)common:AlphaNumericType 483 +|(% style="width:286px" %)Alpha|(% style="width:390px" %)common:AlphaType 484 +|(% style="width:286px" %)Numeric|(% style="width:390px" %)common:NumericType 485 +|(% style="width:286px" %)BigInteger|(% style="width:390px" %)xs:integer 486 +|(% style="width:286px" %)Integer|(% style="width:390px" %)xs:int 487 +|(% style="width:286px" %)Long|(% style="width:390px" %)xs:long 488 +|(% style="width:286px" %)Short|(% style="width:390px" %)xs:short 489 +|(% style="width:286px" %)Decimal|(% style="width:390px" %)xs:decimal 490 +|(% style="width:286px" %)Float|(% style="width:390px" %)xs:float 491 +|(% style="width:286px" %)Double|(% style="width:390px" %)xs:double 492 +|(% style="width:286px" %)Boolean|(% style="width:390px" %)xs:Boolean 493 +|(% style="width:286px" %)URI|(% style="width:390px" %)xs:anyURI 494 +|(% style="width:286px" %)Count|(% style="width:390px" %)xs:integer 495 +|(% style="width:286px" %)InclusiveValueRange|(% style="width:390px" %)xs:decimal 496 +|(% style="width:286px" %)ExclusiveValueRange|(% style="width:390px" %)xs: decimal 497 +|(% style="width:286px" %)Incremental|(% style="width:390px" %)xs: decimal 498 +|(% style="width:286px" %)ObservationalTimePeriod|(% style="width:390px" %)common:ObservationalTimePeriodType 499 +|(% style="width:286px" %)StandardTimePeriod|(% style="width:390px" %)common:StandardTimePeriodType 500 +|(% style="width:286px" %)BasicTimePeriod|(% style="width:390px" %)common:BasicTimePeriodType 501 +|(% style="width:286px" %)GregorianTimePeriod|(% style="width:390px" %)common:GregorianTimePeriodType 502 +|(% style="width:286px" %)GregorianYear|(% style="width:390px" %)xs:gYear 503 +|(% style="width:286px" %)GregorianYearMonth|(% style="width:390px" %)xs:gYearMonth 504 +|(% style="width:286px" %)GregorianDay|(% style="width:390px" %)xs:date 505 +|(% style="width:286px" %)ReportingTimePeriod|(% style="width:390px" %)common:ReportingTimePeriodType 506 +|(% style="width:286px" %)ReportingYear|(% style="width:390px" %)common:ReportingYearType 507 +|(% style="width:286px" %)ReportingSemester|(% style="width:390px" %)common:ReportingSemesterType 508 +|(% style="width:286px" %)ReportingTrimester|(% style="width:390px" %)common:ReportingTrimesterType 509 +|(% style="width:286px" %)ReportingQuarter|(% style="width:390px" %)common:ReportingQuarterType 510 +|(% style="width:286px" %)ReportingMonth|(% style="width:390px" %)common:ReportingMonthType 511 +|(% style="width:286px" %)ReportingWeek|(% style="width:390px" %)common:ReportingWeekType 512 +|(% style="width:286px" %)ReportingDay|(% style="width:390px" %)common:ReportingDayType 513 +|(% style="width:286px" %)DateTime|(% style="width:390px" %)xs:dateTime 514 +|(% style="width:286px" %)TimeRange|(% style="width:390px" %)common:TimeRangeType 515 +|(% style="width:286px" %)Month|(% style="width:390px" %)xs:gMonth 516 +|(% style="width:286px" %)MonthDay|(% style="width:390px" %)xs:gMonthDay 517 +|(% style="width:286px" %)Day|(% style="width:390px" %)xs:gDay 518 +|(% style="width:286px" %)Time|(% style="width:390px" %)xs:time 519 +|(% style="width:286px" %)Duration|(% style="width:390px" %)xs:duration 520 +|(% style="width:286px" %)GeospatialInformation|(% style="width:390px" %)xs:string 521 +|(% style="width:286px" %)XHTML|(% style="width:390px" %)See the following section for complex representations 518 518 519 519 If the text format does not specify any further facets, then the determined type is the listed type or a type which derives from the listed type without placing any addition restrictions on it. However, if one or more facets are specified, then a simple type based on the listed type is necessary. The simple type derives via restriction from the listed type and adds facets according to the following table (the values are mapped as is): 520 520 521 -|**SDMX Facet**|**XML Schema Facet**| 522 -|minLength|xs:minLength| 523 -|maxLength|xs:maxLength| 524 -|minValue[^1]|if ExclusiveValueRange: xs:minExclusives, else: xs:minInclusive| 525 -|maxValue[^1]|if ExclusiveValueRange: xs:maxExclusives, else: xs:maxInclusive| 526 -|decimals[^1]|xs:fractionDigits| 527 -|pattern|xs:pattern| 525 +(% style="width:1007.29px" %) 526 +|(% style="width:267px" %)**SDMX Facet**|(% style="width:729px" %)**XML Schema Facet** 527 +|(% style="width:267px" %)minLength|(% style="width:729px" %)xs:minLength 528 +|(% style="width:267px" %)maxLength|(% style="width:729px" %)xs:maxLength 529 +|(% style="width:267px" %)minValue{{footnote}}Note that these options only apply to numeric representations and should be ignored if the data type is non-numeric.{{/footnote}}|(% style="width:729px" %)if ExclusiveValueRange: xs:minExclusives, else: xs:minInclusive 530 +|(% style="width:267px" %)maxValue^^1^^|(% style="width:729px" %)if ExclusiveValueRange: xs:maxExclusives, else: xs:maxInclusive 531 +|(% style="width:267px" %)decimals^^1^^|(% style="width:729px" %)xs:fractionDigits 532 +|(% style="width:267px" %)pattern|(% style="width:729px" %)xs:pattern 528 528 529 -[^1]: Note that these options only apply to numeric representations and should be ignored if the data type is non-numeric. 530 - 531 531 Any other facets are informational only and will not affect the determined type. 532 532 533 533 === 3.3.7 Representation for Not Applicable Dimensions === ... ... @@ -536,61 +536,59 @@ 536 536 537 537 To support a specific type and allow for a not applicable dimension value, the structure-specific schema must union the type with the common:NotApplicableType, which enumerates the tilde ‘’ character. This is as shown in the following example: 538 538 539 -xml 540 - <xs:simpleType name="DecimalOrNotApplicableType"> 541 - <xs:union memberTypes="xs:decimal common:NotApplicableType"/> 542 - </xs:simpleType> 542 +> <xs:simpleType name="DecimalOrNotApplicableType"> 543 +> <xs:union memberTypes="xs:decimal common:NotApplicableType"/> 544 +> </xs:simpleType> 543 543 544 544 For enumerated types, the generated structure-specific schema can include the special value in the enumeration or create a union between the enumerated type and the common:NotApplicableType. 545 545 546 546 Option 1: Augmenting the enumeration with the special value 547 547 548 -xml 549 - <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE"> 550 - <xs:union memberTypes="CL\_SUBINDICATOR common:NotApplicableType"/> 551 - </xs:simpleType> 550 +> <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE"> 551 +> <xs:union memberTypes="CL\_SUBINDICATOR common:NotApplicableType"/> 552 +> </xs:simpleType> 552 552 553 553 Option 2: Extending the enumeration with the special value 554 554 555 -xml 556 - <xs:simpleType name="CL\_ SUBINDICATOR "> 557 - <xs:restriction base="xs:string"> 558 - <xs:enumeration value="A"/> 559 - <xs:enumeration value=""/> 560 - <xs:restriction> 561 - </xs:simpleType> 556 +> <xs:simpleType name="CL\_ SUBINDICATOR "> 557 +> <xs:restriction base="xs:string"> 558 +> <xs:enumeration value="A"/> 559 +> <xs:enumeration value=""/> 560 +> <xs:restriction> 561 +> </xs:simpleType> 562 562 563 563 For convenience the common schema provides the union types for the following data types. 564 564 565 -|**SDMX Data Type**|**XML Schema Data Type**| 566 -|AlphaNumeric|common:AlphaNumericOrNotApplicableType| 567 -|Alpha|common:AlphaOrNotApplicableType| 568 -|Numeric|common:NumericOrNotApplicableType| 569 -|BigInteger|common:IntegerOrNotApplicableType| 570 -|Integer|common:IntOrNotApplicableType| 571 -|Long|common:LongOrNotApplicableType| 572 -|Short|common:ShortOrNotApplicableType| 573 -|Decimal|common:DecimalOrNotApplicableType| 574 -|Float|common:FloatOrNotApplicableType| 575 -|Double|common:DoubleOrNotApplicableType| 576 -|Boolean|common:BooleanOrNotApplicableType| 577 -|Count|common:IntegerOrNotApplicableType| 578 -|InclusiveValueRange|common:DecimalOrNotApplicableType| 579 -|ExclusiveValueRange|common:DecimalOrNotApplicableType| 580 -|Incremental|common:DecimalOrNotApplicableType| 581 -|ObservationalTimePeriod|common:ObservationalTimePeriodOrNotApplicableType| 582 -|StandardTimePeriod|common:StandardTimePeriodOrNotApplicableType| 583 -|BasicTimePeriod|common:BasicTimePeriodType| 584 -|GregorianTimePeriod|common:GregorianTimePeriodOrNotApplicableType| 585 -|ReportingTimePeriod|common:ReportingTimePeriodOrNotApplicableType| 586 -|ReportingYear|common:ReportingYearOrNotApplicableType| 587 -|ReportingSemester|common:ReportingSemesterOrNotApplicableType| 588 -|ReportingTrimester|common:ReportingTrimesterOrNotApplicableType| 589 -|ReportingQuarter|common:ReportingQuarterOrNotApplicableType| 590 -|ReportingMonth|common:ReportingMonthOrNotApplicableType| 591 -|ReportingWeek|common:ReportingWeekOrNotApplicableType| 592 -|ReportingDay|common:ReportingDayOrNotApplicableType| 593 -|TimeRange|common:TimeRangeOrNotApplicableType| 565 +(% style="width:747.294px" %) 566 +|**SDMX Data Type**|(% style="width:418px" %)**XML Schema Data Type** 567 +|AlphaNumeric|(% style="width:418px" %)common:AlphaNumericOrNotApplicableType 568 +|Alpha|(% style="width:418px" %)common:AlphaOrNotApplicableType 569 +|Numeric|(% style="width:418px" %)common:NumericOrNotApplicableType 570 +|BigInteger|(% style="width:418px" %)common:IntegerOrNotApplicableType 571 +|Integer|(% style="width:418px" %)common:IntOrNotApplicableType 572 +|Long|(% style="width:418px" %)common:LongOrNotApplicableType 573 +|Short|(% style="width:418px" %)common:ShortOrNotApplicableType 574 +|Decimal|(% style="width:418px" %)common:DecimalOrNotApplicableType 575 +|Float|(% style="width:418px" %)common:FloatOrNotApplicableType 576 +|Double|(% style="width:418px" %)common:DoubleOrNotApplicableType 577 +|Boolean|(% style="width:418px" %)common:BooleanOrNotApplicableType 578 +|Count|(% style="width:418px" %)common:IntegerOrNotApplicableType 579 +|InclusiveValueRange|(% style="width:418px" %)common:DecimalOrNotApplicableType 580 +|ExclusiveValueRange|(% style="width:418px" %)common:DecimalOrNotApplicableType 581 +|Incremental|(% style="width:418px" %)common:DecimalOrNotApplicableType 582 +|ObservationalTimePeriod|(% style="width:418px" %)common:ObservationalTimePeriodOrNotApplicableType 583 +|StandardTimePeriod|(% style="width:418px" %)common:StandardTimePeriodOrNotApplicableType 584 +|BasicTimePeriod|(% style="width:418px" %)common:BasicTimePeriodType 585 +|GregorianTimePeriod|(% style="width:418px" %)common:GregorianTimePeriodOrNotApplicableType 586 +|ReportingTimePeriod|(% style="width:418px" %)common:ReportingTimePeriodOrNotApplicableType 587 +|ReportingYear|(% style="width:418px" %)common:ReportingYearOrNotApplicableType 588 +|ReportingSemester|(% style="width:418px" %)common:ReportingSemesterOrNotApplicableType 589 +|ReportingTrimester|(% style="width:418px" %)common:ReportingTrimesterOrNotApplicableType 590 +|ReportingQuarter|(% style="width:418px" %)common:ReportingQuarterOrNotApplicableType 591 +|ReportingMonth|(% style="width:418px" %)common:ReportingMonthOrNotApplicableType 592 +|ReportingWeek|(% style="width:418px" %)common:ReportingWeekOrNotApplicableType 593 +|ReportingDay|(% style="width:418px" %)common:ReportingDayOrNotApplicableType 594 +|TimeRange|(% style="width:418px" %)common:TimeRangeOrNotApplicableType 594 594 595 595 === 3.3.8 Representation for Intentionally Missing Measure and Attribute Values === 596 596 ... ... @@ -603,61 +603,59 @@ 603 603 604 604 This union is as shown in the following example: 605 605 606 -xml 607 - <xs:simpleType name="DecimalOrMissingType"> 608 - <xs:union memberTypes="xs:decimal common:MissingType"/> 609 - </xs:simpleType> 607 +> <xs:simpleType name="DecimalOrMissingType"> 608 +> <xs:union memberTypes="xs:decimal common:MissingType"/> 609 +> </xs:simpleType> 610 610 611 611 For enumerated types, the generated structure-specific schema can include the special value in the enumeration or create a union between the enumerated type and the common:MissingType. 612 612 613 613 Option 1: Augmenting the enumeration with the special value 614 614 615 -xml 616 - <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE"> 617 - <xs:union memberTypes="CL\_SUBINDICATOR common:MissingType"/> 618 - </xs:simpleType> 615 + > <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE"> 616 + > <xs:union memberTypes="CL\_SUBINDICATOR common:MissingType"/> 617 + > </xs:simpleType> 619 619 620 620 Option 2: Extending the enumeration with the special value 621 621 622 -xml 623 - <xs:simpleType name="CL\_ SUBINDICATOR "> 624 - <xs:restriction base="xs:string"> 625 - <xs:enumeration value="A"/> 626 - <xs:enumeration value="#N/A"/> 627 - <xs:restriction> 628 - </xs:simpleType> 621 +> <xs:simpleType name="CL\_ SUBINDICATOR "> 622 +> <xs:restriction base="xs:string"> 623 +> <xs:enumeration value="A"/> 624 +> <xs:enumeration value="#N/A"/> 625 +> <xs:restriction> 626 +> </xs:simpleType> 629 629 630 630 For convenience the common schema provides the union types for the following data types. 631 631 632 -|**SDMX Data Type**|**XML Schema Data Type**| 633 -|AlphaNumeric|common:AlphaNumericOrMissingType| 634 -|Alpha|common:AlphaOrMissingType| 635 -|Numeric|common:NumericOrMissingType| 636 -|BigInteger|common:IntegerOrMissingType| 637 -|Integer|common:IntOrMissingType| 638 -|Long|common:LongOrMissingType| 639 -|Short|common:ShortOrMissingType| 640 -|Decimal|common:DecimalOrMissingType| 641 -|Float|common:FloatOrMissingType| 642 -|Double|common:DoubleOrMissingType| 643 -|Boolean|common:BooleanOrMissingType| 644 -|Count|common:IntegerOrMissingType| 645 -|InclusiveValueRange|common:DecimalOrMissingType| 646 -|ExclusiveValueRange|common:DecimalOrMissingType| 647 -|Incremental|common:DecimalOrMissingType| 648 -|ObservationalTimePeriod|common:ObservationalTimePeriodOrMissingType| 649 -|StandardTimePeriod|common:StandardTimePeriodOrMissingType| 650 -|BasicTimePeriod|common:BasicTimePeriodType| 651 -|GregorianTimePeriod|common:GregorianTimePeriodOrMissingType| 652 -|ReportingTimePeriod|common:ReportingTimePeriodOrMissingType| 653 -|ReportingYear|common:ReportingYearOrMissingType| 654 -|ReportingSemester|common:ReportingSemesterOrMissingType| 655 -|ReportingTrimester|common:ReportingTrimesterOrMissingType| 656 -|ReportingQuarter|common:ReportingQuarterOrMissingType| 657 -|ReportingMonth|common:ReportingMonthOrMissingType| 658 -|ReportingWeek|common:ReportingWeekOrMissingType| 659 -|ReportingDay|common:ReportingDayOrMissingType| 660 -|TimeRange|common:TimeRangeOrMissingType| 630 +(% style="width:804.294px" %) 631 +|(% style="width:279px" %)**SDMX Data Type**|(% style="width:522px" %)**XML Schema Data Type** 632 +|(% style="width:279px" %)AlphaNumeric|(% style="width:522px" %)common:AlphaNumericOrMissingType 633 +|(% style="width:279px" %)Alpha|(% style="width:522px" %)common:AlphaOrMissingType 634 +|(% style="width:279px" %)Numeric|(% style="width:522px" %)common:NumericOrMissingType 635 +|(% style="width:279px" %)BigInteger|(% style="width:522px" %)common:IntegerOrMissingType 636 +|(% style="width:279px" %)Integer|(% style="width:522px" %)common:IntOrMissingType 637 +|(% style="width:279px" %)Long|(% style="width:522px" %)common:LongOrMissingType 638 +|(% style="width:279px" %)Short|(% style="width:522px" %)common:ShortOrMissingType 639 +|(% style="width:279px" %)Decimal|(% style="width:522px" %)common:DecimalOrMissingType 640 +|(% style="width:279px" %)Float|(% style="width:522px" %)common:FloatOrMissingType 641 +|(% style="width:279px" %)Double|(% style="width:522px" %)common:DoubleOrMissingType 642 +|(% style="width:279px" %)Boolean|(% style="width:522px" %)common:BooleanOrMissingType 643 +|(% style="width:279px" %)Count|(% style="width:522px" %)common:IntegerOrMissingType 644 +|(% style="width:279px" %)InclusiveValueRange|(% style="width:522px" %)common:DecimalOrMissingType 645 +|(% style="width:279px" %)ExclusiveValueRange|(% style="width:522px" %)common:DecimalOrMissingType 646 +|(% style="width:279px" %)Incremental|(% style="width:522px" %)common:DecimalOrMissingType 647 +|(% style="width:279px" %)ObservationalTimePeriod|(% style="width:522px" %)common:ObservationalTimePeriodOrMissingType 648 +|(% style="width:279px" %)StandardTimePeriod|(% style="width:522px" %)common:StandardTimePeriodOrMissingType 649 +|(% style="width:279px" %)BasicTimePeriod|(% style="width:522px" %)common:BasicTimePeriodType 650 +|(% style="width:279px" %)GregorianTimePeriod|(% style="width:522px" %)common:GregorianTimePeriodOrMissingType 651 +|(% style="width:279px" %)ReportingTimePeriod|(% style="width:522px" %)common:ReportingTimePeriodOrMissingType 652 +|(% style="width:279px" %)ReportingYear|(% style="width:522px" %)common:ReportingYearOrMissingType 653 +|(% style="width:279px" %)ReportingSemester|(% style="width:522px" %)common:ReportingSemesterOrMissingType 654 +|(% style="width:279px" %)ReportingTrimester|(% style="width:522px" %)common:ReportingTrimesterOrMissingType 655 +|(% style="width:279px" %)ReportingQuarter|(% style="width:522px" %)common:ReportingQuarterOrMissingType 656 +|(% style="width:279px" %)ReportingMonth|(% style="width:522px" %)common:ReportingMonthOrMissingType 657 +|(% style="width:279px" %)ReportingWeek|(% style="width:522px" %)common:ReportingWeekOrMissingType 658 +|(% style="width:279px" %)ReportingDay|(% style="width:522px" %)common:ReportingDayOrMissingType 659 +|(% style="width:279px" %)TimeRange|(% style="width:522px" %)common:TimeRangeOrMissingType 661 661 662 662 === 3.3.9 Representation with Complex Text Format === 663 663 ... ... @@ -672,11 +672,11 @@ 672 672 * if the text format data type is XHTML, common:StructuredTextValueType can be used; note that this type cannot be further restricted – all other facets are ignored 673 673 * if the text format is multi-lingual, common:TextValueType can be used; note that this type cannot be further restricted – all other facets are ignored 674 674 * if the text format has no additional facets and the data type is: 675 - +Boolean, common:BooleanValueType can be used676 - +String, common:StringValueType can be used677 - +Integer, common:IntValueType can be used678 - +Double, common:DoubleValueType can be used679 - +ObservationalTimePeriod, common:ObservationalTimePeriodValueType can be used674 +** Boolean, common:BooleanValueType can be used 675 +** String, common:StringValueType can be used 676 +** Integer, common:IntValueType can be used 677 +** Double, common:DoubleValueType can be used 678 +** ObservationalTimePeriod, common:ObservationalTimePeriodValueType can be used 680 680 681 681 If a pre-defined type cannot be used, one will have to be created. The complex type must define a simple content restriction of the common:ValueType. The restriction should define an anonymous simple type based on the text format data type and facets as described in the previous section. 682 682 ... ... @@ -686,9 +686,10 @@ 686 686 687 687 * It the type is an enumeration from an item scheme, the recommended name is [Item Scheme Class].[Maintenance Agency].[Item Scheme ID].[Item Scheme Version] 688 688 * If the type is based on a text format of a concept core representation, the recommended name is Concept.[Maintenance Agency].[Concept Scheme ID].[Concept Scheme Version].[Concept ID] 689 -* If the type is based on a text format of a component local representation, and; 690 - + The component id is required to be unique for all components within the scope of the structure which defines it (e.g. a dimension), the recommended name is [Component ID] 691 - + The component id is only required to be unique within the component list and which defines it (e.g. a metadata attribute), the recommend name is [Component List ID].[Parent Component ID]\*.[Component ID] 688 +* If the type is 689 +* based on a text format of a component local representation, and; 690 +** The component id is required to be unique for all components within the scope of the structure which defines it (e.g. a dimension), the recommended name is [Component ID] 691 +** The component id is only required to be unique within the component list and which defines it (e.g. a metadata attribute), the recommend name is [Component List ID].[Parent Component ID]*.[Component ID] 692 692 693 693 === 3.3.11 Type Reuse === 694 694 ... ... @@ -714,34 +714,39 @@ 714 714 715 715 A complex type named DataSetType must be created. Its content model will be derived via restriction. The base type of the restriction is dsd:DataSetType. The complex type content model will be as follows: 716 716 717 -1. A sequence consisting of: 718 -1. An element reference to common:Annotations, with a minimum occurrence of 0 719 - 2. A local element named DataProvider with the type common:DataProviderReferenceType, a form of unqualified and a minimum occurrence of 0 720 - 3. A choice with a minimum occurrence of 0 and a maximum occurrence of unbounded consisting of: 721 -1. A local element named Atts with a form of unqualified and a type of AttsType (as defined in the AttsType section which follows) 722 - 2. If the data structure defines groups, a local element named Group with a form of unqualified. The type of this element should be the type that is described in the GroupType section which follows. 723 - 3. If the dimension at the observation level is not AllDimensions, a local element named Series with a form of unqualified and a type of SeriesType (as defined in the SeriesType section which follows) 724 - 4. If the dimension at the observation level is AllDimensions, a local element named Obs with a form of unqualified and a type of ObsType (as defined in the ObsType section which follows) 725 - 4. If any metadata attribute usages defined in the data structure that declares an attribute relationship of dataflow, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurences of 0 717 +~1. A sequence consisting of: 726 726 719 +* i. An element reference to common:Annotations, with a minimum occurrence of 0 720 +* ii A local element named DataProvider with the type common:DataProviderReferenceType, a form of unqualified and a minimum occurrence of 0 721 +* iii A choice with a minimum occurrence of 0 and a maximum occurrence of unbounded consisting of: 722 +** a. A local element named Atts with a form of unqualified and a type of AttsType (as defined in the AttsType section which follows) 723 +** b. If the data structure defines groups, a local element named Group with a form of unqualified. The type of this element should be the type that is described in the GroupType section which follows. 724 +** c. If the dimension at the observation level is not AllDimensions, a local element named Series with a form of unqualified and a type of SeriesType (as defined in the SeriesType section which follows) 725 +** d. If the dimension at the observation level is AllDimensions, a local element named Obs with a form of unqualified and a type of ObsType (as defined in the ObsType section which follows) 726 +* iv. If any metadata attribute usages defined in the data structure that declares an attribute relationship of dataflow, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurences of 0 727 + 727 727 === 3.4.2 GroupType === 728 728 729 729 If the data structure definition defines only one group, a complex type with its name taken from the identifier of the lone group must be defined. This type is used for the Group element in the DataSetType. Its content model will be derived via restriction of the dsd:GroupType. The complex type content model will be as follows: 730 730 731 -1. A sequence consisting of: 732 -1. An element reference to common:Annotations, with a minimum occurrence of 0 733 - 2. If any attributes defined in the data structure that declares an attribute relationship with the group, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 734 - 3. If any metadata attribute usages defined in the data structure that declares an attribute relationship with the group, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurrence of 0 735 -2. An attribute for each dimension referenced by the group. The XML attribute [name](#331-Component-Name-Determination) and [type](#333-Simple--Primitive-Type-Determination) are defined according to the general rules defined in the previous section, and the usage is required 736 -3. An attribute for each data attribute with simple representation defined in the data structure that declares an attribute relationship with the group or specifies the group as an attachment group. The XML attribute [name](#331-Component-Name-Determination) and [type](#333-Simple--Primitive-Type-Determination) are defined according to the general rules defined in the previous section, and the usage is optional 732 +~1. A sequence consisting of: 733 + 734 +* i. An element reference to common:Annotations, with a minimum occurrence of 0 735 +* ii. If any attributes defined in the data structure that declares an attribute relationship with the group, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 736 +* iii. If any metadata attribute usages defined in the data structure that declares an attribute relationship with the group, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurrence of 0 737 + 738 +2. An attribute for each dimension referenced by the group. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is required 739 +3. An attribute for each data attribute with simple representation defined in the data structure that declares an attribute relationship with the group or specifies the group as an attachment group. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is optional 737 737 4. An attribute named type with a type of common:IDType, usage of optional, and a fixed value of the identifier of the group 738 738 739 739 If the data structure definition defines more than one group, an abstract complex type with name GroupType must be created. This type is used for the Group element in the DataSetType. Its content model will be derived via restriction of the dsd:GroupType. The complex type content model will be as follows: 740 740 741 -1. A sequence consisting of: 742 -1. An element reference to common:Annotations, with a minimum occurrence of 0 743 - 2. If any attributes defined in the data structure that declares an attribute relationship with a group, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 744 - 3. If any metadata attribute usages defined in the data structure that declares an attribute relationship with any group, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurrence of 0 744 +~1. A sequence consisting of: 745 + 746 +* i. An element reference to common:Annotations, with a minimum occurrence of 0 747 +* ii. If any attributes defined in the data structure that declares an attribute relationship with a group, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 748 +* iii. If any metadata attribute usages defined in the data structure that declares an attribute relationship with any group, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurrence of 0 749 + 745 745 2. An attribute named type with a type of Group.ID, and a usage of optional 746 746 3. An anyAttribute declaration with a namespace of ##local## 747 747 ... ... @@ -749,12 +749,14 @@ 749 749 750 750 For each group defined in the data structure definition, a complex type with its name taken from the group identifier is defined. Its content model will be derived via restriction of the previously defined GroupType. The complex type content model will be as follows: 751 751 752 -1. A sequence consisting of: 753 -1. An element reference to common:Annotations, with a minimum occurrence of 0 754 - 2. If any attributes with complex representation defined in the data structure declares an attribute relationship with the group, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 755 - 3. If any metadata attribute usages defined in the data structure that declares an attribute relationship with the group, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurrence of 0 756 -2. An attribute for each dimension referenced by the group. The XML attribute [name](#331-Component-Name-Determination) and [type](#333-Simple--Primitive-Type-Determination) are defined according to the general rules defined in the previous section, and the usage is required 757 -3. An attribute for each data attribute with simple representation defined in the data structure that declares an attribute relationship with the group or specifies the group as an attachment group. The XML attribute [name](#331-Component-Name-Determination) and [type](#333-Simple--Primitive-Type-Determination) are defined according to the general rules defined in the previous section, and the usage is optional 757 +~1. A sequence consisting of: 758 + 759 +* i. An element reference to common:Annotations, with a minimum occurrence of 0 760 +* ii. If any attributes with complex representation defined in the data structure declares an attribute relationship with the group, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 761 +* iii. If any metadata attribute usages defined in the data structure that declares an attribute relationship with the group, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurrence of 0 762 + 763 +2. An attribute for each dimension referenced by the group. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is required 764 +3. An attribute for each data attribute with simple representation defined in the data structure that declares an attribute relationship with the group or specifies the group as an attachment group. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is optional 758 758 4. An attribute named type with a type of Group.ID, usage of optional, and a fixed value of the identifier of the group 759 759 760 760 === 3.4.3 SeriesType === ... ... @@ -761,48 +761,59 @@ 761 761 762 762 If the dimension at the observation is not AllDimensions, a complex type name SeriesType must be created. Its content model will be derived via restriction of dsd:SeriesType. The complex type content model will be as follows: 763 763 764 -1. A sequence consisting of: 765 -1. An element reference to common:Annotations, with a minimum occurrence of 0 766 - 2. If any attributes with complex representation defined in the data structure declares an attribute relationship with a dimension that is not at the observation level, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 767 - 3. A local element named Obs with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of ObsType (as defined in the ObsType section which follows) 768 - 4. If any metadata attribute usages defined in the data structure that declares an attribute relationship with the series, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurrence of 0 771 +~1. A sequence consisting of: 772 + 773 +* i. An element reference to common:Annotations, with a minimum occurrence of 0 774 +* ii. If any attributes with complex representation defined in the data structure declares an attribute relationship with a dimension that is not at the observation level, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 775 +* iii. A local element named Obs with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of ObsType (as defined in the ObsType section which follows) 776 +* iv. If any metadata attribute usages defined in the data structure that declares an attribute relationship with the series, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurrence of 0 777 + 769 769 2. An attribute named TIME\_PERIOD with a type of common:ObservationalTimePeriod. If the dimension at the observation level is the time dimension (TIME\_PERIOD) or there is no time dimension defined by the data structure, a usage of prohibited; otherwise, a usage of required 770 -3. An attribute for each dimension defined by the data structure definition, except for the dimension at the observation level and the time dimension (TIME\_PERIOD). The XML attribute [name](#331-Component-Name-Determination) and [type](#333-Simple--Primitive-Type-Determination) are defined according to the general rules defined in the previous section, and the usage is required 771 -4. An attribute for each data attribute defined with simple representation in the data structure that declares an attribute relationship with any dimension outside of the dimension at the observation level (so long as it does not also declare an attachment group). The XML attribute [name](#331-Component-Name-Determination) and [type](#333-Simple--Primitive-Type-Determination) are defined according to the general rules defined in the previous section, and the usage is optional 779 +3. An attribute for each dimension defined by the data structure definition, except for the dimension at the observation level and the time dimension (TIME\_PERIOD). 772 772 781 +The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is required 782 +4. An attribute for each data attribute defined with simple representation in the data structure that declares an attribute relationship with any dimension outside of the dimension at the observation level (so long as it does not also declare an attachment group). The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is optional 783 + 773 773 === 3.4.4 AttsType === 774 774 775 775 A complex type named AttsType must be created. Its content model will be derived via restriction of dsd:AttsType. The complex type content model will be as follows: 776 776 777 -1. A sequence consisting of: 778 -1. An element reference to common:Annotations, with a minimum occurrence of 0 779 - 2. If any attributes with complex representation are defined in the data structure, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 788 +~1. A sequence consisting of: 789 + 790 +* i. An element reference to common:Annotations, with a minimum occurrence of 0 791 +* ii. If any attributes with complex representation are defined in the data structure, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 792 + 780 780 2. If there is no dimension (TIME\_PERIOD) defined by the data structure, an attribute named TIME\_PERIOD with a type of common:ObservationalTimePeriod, and a usage of prohibited 781 -3. An attribute for all dimension defined by the data structure definition. The XML attribute [name](#331-Component-Name-Determination)and[type](#333-Simple--Primitive-Type-Determination) are defined according to the general rules defined in the previous section, and the usage is optional782 -4. An attribute for each data attribute defined with simple representation in the data structure. The XML attribute [name](#331-Component-Name-Determination)and[type](#333-Simple--Primitive-Type-Determination)are defined according to the general rules defined in the previous section, and the usage is optional794 +3. An attribute for all dimension defined by the data structure definition. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is optional 795 +4. An attribute for each data attribute defined with simple representation in the data structure. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is optional 783 783 784 784 === 3.4.5 ObsType === 785 785 786 786 A complex type name ObsType must be created. Its content model will be derived via restriction of the base type dsd:ObsType. The complex type content model will be as follows: 787 787 788 -1. A sequence consisting of: 789 -1. An element reference to common:Annotations, with a minimum occurrence of 0 790 - 2. If any measures with complex representations are defined in the data structure, any attributes with complex representation that declare an attribute relationship with the observation, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 791 - 3. If any metadata attribute usages defined in the data structure that declares an attribute relationship with the observation, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurrence of 0 792 -2. An attribute named TIME\_PERIOD with a type of common: 793 - ObservationalTimePeriodValueType. If the dimension at the observation level is the time dimension (TIME\_PERIOD) or all dimensions and the time dimension is defined by the data structure, a usage of required; otherwise, a usage of prohibited 794 -3. If the dimension at the observation level is not all dimensions or the time dimension (TIME\_PERIOD), an attribute for the dimension at the observation level. The XML attribute [name](#331-Component-Name-Determination) and [type](#333-Simple--Primitive-Type-Determination) are defined according to the general rules defined in the previous section, and the usage is required 795 -4. If the dimension at the observation level is all dimensions, an attribute for each dimension defined by the data structure definition, except for the time dimension (TIME\_PERIOD). The XML attribute [name](#331-Component-Name-Determination) and [type](#333-Simple--Primitive-Type-Determination) are defined according to the general rules defined in the previous section, and the usage is required 796 -5. An attribute for each measure with simple representation defined by the data structure definition. The XML attribute [name](#331-Component-Name-Determination) and [type](#333-Simple--Primitive-Type-Determination) is defined according to the general rules defined in the previous section, and the usage is optional 797 -6. An attribute for each data attribute with simple representation defined in the data structure that declares an attribute relationship with the observation. The XML attribute [name](#331-Component-Name-Determination) and [type](#333-Simple--Primitive-Type-Determination) are defined according to the general rules defined in the previous section, and the usage is optional 801 +~1. A sequence consisting of: 798 798 803 +* i. An element reference to common:Annotations, with a minimum occurrence of 0 804 +* ii. If any measures with complex representations are defined in the data structure, any attributes with complex representation that declare an attribute relationship with the observation, a Comp element with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of dsd:CompType 805 +* iii. If any metadata attribute usages defined in the data structure that declares an attribute relationship with the observation, a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurrence of 0 806 + 807 +2. An attribute named TIME\_PERIOD with a type of common: ObservationalTimePeriodValueType. If the dimension at the observation level is the time dimension (TIME\_PERIOD) or all dimensions and the time dimension is defined by the data structure, a usage of required; otherwise, a usage of prohibited 808 +3. If the dimension at the observation level is not all dimensions or the time dimension (TIME\_PERIOD), an attribute for the dimension at the observation level. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is required 809 +4. If the dimension at the observation level is all dimensions, an attribute for each dimension defined by the data structure definition, except for the time dimension (TIME\_PERIOD). 810 + 811 +The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is required 812 +5. An attribute for each measure with simple representation defined by the data structure definition. The XML attribute name and type is defined according to the general rules defined in the previous section, and the usage is optional 813 +6. An attribute for each data attribute with simple representation defined in the data structure that declares an attribute relationship with the observation. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is optional 814 + 799 799 === 3.4.6 CompType === 800 800 801 801 For every measure and data attribute with complex representation defined by the data structure definition, a complex type must be derived from the restriction of the dsd:CompType. The complex type content model will be as follows: 802 802 803 -1. A sequence consisting of: 804 -1. An element reference to common:Annotations, with a minimum occurrence of 0 805 - 2. A Value element with a form of unqualified, with a minimum occurrence of 0, a maximum occurrence defined by the representation, and a type based on the [complex representation type](#339-Representation-with-Complex-Text-Format) defined according to the general rules defined in the previous section 819 +~1. A sequence consisting of: 820 + 821 +* i. An element reference to common:Annotations, with a minimum occurrence of 0 822 +* ii. A Value element with a form of unqualified, with a minimum occurrence of 0, a maximum occurrence defined by the representation, and a type based on the complex representation type defined according to the general rules defined in the previous section 823 + 806 806 2. An attribute named id with a type of common: NCNameIDType, usage of required, and a fixed value of the identifier of the measure or attribute 807 807 808 808 = 4 Data and Reference Metadata Actions = ... ... @@ -811,7 +811,7 @@ 811 811 812 812 Data messages allow indicating intended actions when used to update an SDMX storage system. This purpose is noted in the action of the data set, which is either inherited from the header of the data message or explicitly stated at the data set level. 813 813 814 -Note that the former *Append*and*Information*actions are deprecated. When used to update an SDMX storage system, the*Merge*action is assumed.832 +Note that the former //Append// and //Information// actions are deprecated. When used to update an SDMX storage system, the //Merge// action is assumed. 815 815 816 816 === 4.1.1 Merge Action === 817 817 ... ... @@ -821,11 +821,11 @@ 821 821 822 822 Dimension values for higher-level (data-related reference metadata) attributes can be **switched-off** (using ) when those are not attached to these dimensions. 823 823 824 -All observations as well as the sets of data-related reference metadata attributes at specific dimension combinations impacted by the *Merge*action change their time stamp when used to update an SDMX storage system.842 +All observations as well as the sets of data-related reference metadata attributes at specific dimension combinations impacted by the //Merge// action change their time stamp when used to update an SDMX storage system. 825 825 826 826 === 4.1.2 Replace Action === 827 827 828 -Data or data-related reference metadata is to be replaced, through either update, insert or delete depending on already existing information. A full replacement is hereby assumed to take place at specific “replacement levels”: for entire observations and for any specific dimension combination for data-related reference metadata attributes. Within these “replacement levels” the provided values are inserted or updated, and omitted values are deleted. Values provided for the other attributes (those above the observation level) are merged (see *Merge*action).846 +Data or data-related reference metadata is to be replaced, through either update, insert or delete depending on already existing information. A full replacement is hereby assumed to take place at specific “//replacement levels//”: for entire observations and for any specific dimension combination for data-related reference metadata attributes. Within these “replacement levels” the provided values are inserted or updated, and omitted values are deleted. Values provided for the other attributes (those above the observation level) are merged (see //Merge// action). 829 829 830 830 Only non-dimensional components (measure, attribute or reference metadata values) can be **omitted** (null or absent). Bulk replacing is thus not supported. 831 831 ... ... @@ -833,9 +833,9 @@ 833 833 834 834 Replacing non-existing elements is not resulting in an error. 835 835 836 -All observations as well as the sets of data-related reference metadata attributes at specific dimension combinations impacted by the *Replace*action change their time stamp when used to update an SDMX storage system.854 +All observations as well as the sets of data-related reference metadata attributes at specific dimension combinations impacted by the //Replace// action change their time stamp when used to update an SDMX storage system. 837 837 838 -Because the *replace*action always takes place at specific levels, it cannot be used to replace a whole dataset or a whole series. However, a “*replace all*” effect can be achieved by combining a*Delete*dataset containing a completely wildcarded key (where all dimension values are omitted) with a*Merge*or*Replace*dataset within the same data message. Similarly, to replace a whole series, a message can combine a*delete*dataset containing only the partial key of the series (where the not used dimension values are omitted) with a*Merge*or*Replace*dataset for that series.856 +Because the //replace// action always takes place at specific levels, it cannot be used to replace a whole dataset or a whole series. However, a //“replace all”// effect can be achieved by combining a //Delete// dataset containing a completely wildcarded key (where all dimension values are omitted) with a //Merge// or //Replace// dataset within the same data message. Similarly, to replace a whole series, a message can combine a //delete// dataset containing only the partial key of the series (where the not used dimension values are omitted) with a //Merge// or //Replace// dataset for that series. 839 839 840 840 === 4.1.3 Delete Action === 841 841 ... ... @@ -849,64 +849,66 @@ 849 849 850 850 Deleting non-existing elements or values is not resulting in an error. 851 851 852 -All observations as well as the sets of attributes and data-related reference metadata at higher partial keys impacted by the *Delete*action change their time stamp when used to update an SDMX storage system.870 +All observations as well as the sets of attributes and data-related reference metadata at higher partial keys impacted by the //Delete// action change their time stamp when used to update an SDMX storage system. 853 853 854 854 === 4.1.4 Further Details === 855 855 856 856 The following convention is used to indicate the state of components in data messages: 857 857 858 -| | |**Dimension value is**| |**Measure, attribute or reference metadata value is**| | 859 -| | |**Omitted**|**switched off**|**Omitted**|**Present**| 860 -|Action|Delete|bulk deletion: dimension value doesn't matter|only for irrelevant dimensions:1) higher-level (reference metadata) attributes not attached to this dimension(incl. TIME\_PERIOD)2) measures and attributes not attached to this dimension if the DSD allows for an ‘evolving structure’ (excl. TIME\_PERIOD)|to be deleted only if **all** non-dimension components are omitted|to be deleted| 861 -| |Merge|*bulk merge is not permitted*|(see above)|not to be changed|to be updated/inserted| 862 -| |Replace|*bulk replace is not permitted*|(see above)|at permitted replacement levels: to be deleted, otherwise not to be changed|to be updated/inserted| 863 -|Format|XML|xml element/attribute is absent|~|xml element/attribute is absent|any valid or intentionally missing value| 864 -| |JSON|\<empty\>|““|NULL or absent|(see above)| 865 -| |CSV|\<empty\> cell or column is absent|~|<empty> cell or column is absent|(see above)| 876 +(% style="width:1364.29px" %) 877 +| | |(% style="width:260px" %)**Dimension value is**|(% style="width:391px" %) |(% style="width:383px" %)**Measure, attribute or reference metadata value is**|(% style="width:184px" %) 878 +| | |(% style="width:260px" %)**Omitted**|(% style="width:391px" %)**switched off**|(% style="width:383px" %)**Omitted**|(% style="width:184px" %)**Present** 879 +|Action|Delete|(% style="width:260px" %)bulk deletion: dimension value doesn't matter|(% style="width:391px" %)only for irrelevant dimensions:1) higher-level (reference metadata) attributes not attached to this dimension(incl. TIME\_PERIOD)2) measures and attributes not attached to this dimension if the DSD allows for an ‘evolving structure’ (excl. TIME\_PERIOD)|(% style="width:383px" %)to be deleted only if **all** non-dimension components are omitted|(% style="width:184px" %)to be deleted 880 +| |Merge|(% style="width:260px" %)//bulk merge is not permitted//|(% style="width:391px" %)(see above)|(% style="width:383px" %)not to be changed|(% style="width:184px" %)to be updated/inserted 881 +| |Replace|(% style="width:260px" %)//bulk replace is not permitted//|(% style="width:391px" %)(see above)|(% style="width:383px" %)at permitted replacement levels: to be deleted, otherwise not to be changed|(% style="width:184px" %)to be updated/inserted 882 +|Format|XML|(% style="width:260px" %)xml element/attribute is absent|(% style="width:391px" %)~|xml element/attribute is absent|(% style="width:383px" %)any valid or intentionally missing value|(% style="width:184px" %) 883 +| |JSON|(% style="width:260px" %)\<empty\>|(% style="width:391px" %)““|(% style="width:383px" %)NULL or absent|(% style="width:184px" %)(see above) 884 +| |CSV|(% style="width:260px" %)\<empty\> cell or column is absent|(% style="width:391px" %)~|<empty> cell or column is absent|(% style="width:383px" %)(see above)|(% style="width:184px" %) 866 866 867 867 **Important notes:** 868 868 869 -The terms “ *delete*”, “*merge*” and “*replace*” do **not** imply a physical replacement or deletion of values in the underlying database. To minimize the physical resource requirements, SDMX web service implementations that do not support the*includeHistory*and*asOf*URL parameters might physically replace the existing values in the database. SDMX web services that neither support the*updatedAfter*URL parameter might also implement physical deletions. However, SDMX web services that support these parameters (or other time-machine features), would not overwrite or delete the physical values.888 +The terms “//delete//”, “//merge//” and “//replace//” do **not** imply a physical replacement or deletion of values in the underlying database. To minimize the physical resource requirements, SDMX web service implementations that do not support the //includeHistory// and //asOf// URL parameters might physically replace the existing values in the database. SDMX web services that neither support the //updatedAfter// URL parameter might also implement physical deletions. However, SDMX web services that support these parameters (or other time-machine features), would not overwrite or delete the physical values. 870 870 871 -SDMX web services that support the *includeHistory*or*asOf*URL parameters should never allow deleting their **historic** data content because this would interfere with the interests of data consumers, such as data aggregators. Therefore, a specific feature to physically delete previous (outdated) content is intentionally not added to the SDMX standard syntax. If such a feature is required by an organisation, then it needs to be implemented as a custom feature outside the SDMX standard.890 +SDMX web services that support the //includeHistory// or //asOf// URL parameters should never allow deleting their **historic** data content because this would interfere with the interests of data consumers, such as data aggregators. Therefore, a specific feature to physically delete previous (outdated) content is intentionally not added to the SDMX standard syntax. If such a feature is required by an organisation, then it needs to be implemented as a custom feature outside the SDMX standard. 872 872 873 -Likewise, all SDMX-compliant systems that do (or are configured to) support the *updatedAfter*URL parameter need to systematically retain the information about deleted data (or data-related reference metadata).892 +Likewise, all SDMX-compliant systems that do (or are configured to) support the //updatedAfter// URL parameter need to systematically retain the information about deleted data (or data-related reference metadata). 874 874 875 -All datasets – even with varying actions – within a single data message have always to be treated as **ACID transaction** to guarantee “transactional safety” (full data consistency and validity despite errors, power failures, and other mishaps). These datasets are to be processed in the order of appearance in the message. The advantage of such data messages is thus the ability to bundle separate *delete*and*replace*or*merge*actions into one transactional data message.894 +All datasets – even with varying actions – within a single data message have always to be treated as **ACID transaction** to guarantee “transactional safety” (full data consistency and validity despite errors, power failures, and other mishaps). These datasets are to be processed in the order of appearance in the message. The advantage of such data messages is thus the ability to bundle separate //delete// and //replace// or //merge// actions into one transactional data message. 876 876 877 -**Recommended [^2]dataset actions in SDMX web service responses to GET data queries:**896 +**Recommended{{footnote}}So far this is recommended for systems that do not require backward-compatibility. Later, with SDMX 4.0, this may generally be made mandatory{{/footnote}} dataset actions in SDMX web service responses to GET data queries:** 878 878 879 -1. Without the *updatedAfter*, *includeHistory*, *detail*, *attributes* or *measures* URL parameters: 880 - 881 - The response message should contain the retrieved data in a *Replace* dataset (instead of the previous *information* dataset). 898 +~1. Without the //updatedAfter//, //includeHistory//, //detail//, //attributes// or //measures// URL parameters: 882 882 883 -1. Without the *updatedAfter* and *includeHistory*, but with *detail*, *attributes* or *measures* URL parameters: 884 - 885 - The response message should contain the retrieved data in a *Merge* dataset (instead of the previous *Information* dataset). 900 +The response message should contain the retrieved data in a //Replace// dataset (instead of the previous //information// dataset). 886 886 887 -1. With the *updatedAfter* URL parameter: 888 - 889 - The response must include the information of all previously updated, inserted and deleted data or data-related reference metadata, even if bulk deletions have been used. One of the two approaches are possible: 902 +2. Without the //updatedAfter// and //includeHistory//, but with //detail//, //attributes// or //measures// URL parameters: 890 890 891 -* a *Delete* dataset for entirely deleted observations and for entirely deleted sets of (data-related reference metadata) attribute values attached to specific dimension combinations and 892 - a *Replace* dataset for all other changed observations and changed attribute and data-related reference metadata values attached to specific dimension combinations, or 893 -* a *Delete* dataset for entirely deleted observations, for entirely deleted sets of (data-related reference metadata) attribute values attached to specific dimension combinations and for individually deleted mesure, attribute and reference metadata values and 894 - a *Merge* dataset for all other updated or inserted observation, attribute and data-related reference metadata values. 895 - 896 - The DB synchronization use case requires that the generated response must always allow achieving to replicate the exact same punctual data content as currently stored in the queried data source. 904 +The response message should contain the retrieved data in a //Merge// dataset (instead of the previous //Information// dataset). 897 897 898 -1. With the *includeHistory* URL parameter: 899 - 900 - Using a number of datasets with *Delete*, *Replace* or *Merge* actions and limited in their validity time span that allow achieving to replicate the exact same punctual data contents as previously stored in the queried data source. 906 +3. With the //updatedAfter// URL parameter: 901 901 902 -1. With the *asOf* URL parameter: 903 - 904 - The recommendations of 1 and 2 apply depending on the other parameters. In addition, the returned dataset should have its validity time span limited to the point in time requested in the *asOf* parameter. 908 +The response must include the information of all previously updated, inserted and deleted data or data-related reference metadata, even if bulk deletions have been used. One of the two approaches are possible: 905 905 906 -[^2]: So far this is recommended for systems that do not require backward-compatibility. Later, with SDMX 4.0, this may generally be made mandatory. 910 +* a //Delete// dataset for entirely deleted observations and for entirely deleted sets of (data-related reference metadata) attribute values attached to specific dimension combinations and 911 +a //Replace// dataset for all other changed observations and changed attribute and data-related reference metadata values attached to specific dimension combinations, or 912 +* a //Delete// dataset for entirely deleted observations, for entirely deleted sets of (data-related reference metadata) attribute values attached to specific dimension combinations and for individually deleted mesure, attribute and reference metadata values and 913 +a //Merge// dataset for all other updated or inserted observation, attribute and data-related reference metadata values. 907 907 915 +The DB synchronization use case requires that the generated response must always allow achieving to replicate the exact same punctual data content as currently stored in the queried data source. 916 + 917 +~1. With the //includeHistory// URL parameter: 918 + 919 +Using a number of datasets with //Delete//, //Replace// or //Merge// actions and limited in their validity time span that allow achieving to replicate the exact same punctual data contents as previously stored in the queried data source. 920 + 921 +2. With the //asOf// URL parameter: 922 + 923 +The recommendations of 1 and 2 apply depending on the other parameters. In addition, the returned dataset should have its validity time span limited to the point in time requested in the //asOf// parameter. 924 + 908 908 == 4.2 Reference Metadata Actions == 909 909 910 -Reference metadata defined by a Metadataflow or a MetadataProvisionAgreement are exchanged within reference metadatasets, which are maintainable and thus for actions behave like structural metadata (artefacts): When interacting with SDMX Rest web services, the HTTP action verbs GET, PUT and POST are used to indicate the intended action per web request. Consequently, different actions cannot be bundled and executed with “transactional ACIDity”. Note that metadatasets retrieved using the HTTP header “Accept-Language” may contain only partial languages, and thus should be marked with its *isPartialLanguage*property set to true. Submitting such a partial metadataset to update an SDMX storage system will only add or update the included languages but not change other languages.927 +Reference metadata defined by a Metadataflow or a MetadataProvisionAgreement are exchanged within reference metadatasets, which are maintainable and thus for actions behave like structural metadata (artefacts): When interacting with SDMX Rest web services, the HTTP action verbs GET, PUT and POST are used to indicate the intended action per web request. Consequently, different actions cannot be bundled and executed with “transactional ACIDity”. Note that metadatasets retrieved using the HTTP header “Accept-Language” may contain only partial languages, and thus should be marked with its //isPartialLanguage// property set to true. Submitting such a partial metadataset to update an SDMX storage system will only add or update the included languages but not change other languages. 911 911 912 -The former message header or metadataset property *DataSetAction* is deprecated. To avoid conflicts, it is now ignored if still present. 929 +The former message header or metadataset property //DataSetAction// is deprecated. To avoid conflicts, it is now ignored if still present. 930 + 931 +--- 932 +{{putFootnotes/}}--
- SUZ.Methodology.Code.MethodologyClass[0]
-
- index
-
... ... @@ -1,1 +1,0 @@ 1 -4
- SKMS.Methodology.Code.MethodologyClass[0]
-
- Index
-
... ... @@ -1,0 +1,1 @@ 1 +5