Changes for page 4 General Notes for Implementers
Last modified by Helena on 2025/09/10 11:19
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,6 +1,4 @@ 1 -{{box title="**Contents**"}} 2 -{{toc/}} 3 -{{/box}} 1 += {{id name="_Toc291503"/}}4 General Notes for Implementers = 4 4 5 5 This section discusses a number of topics other than the exchange of data sets in SDMX formats. Supported only in SDMX-ML (and some in SDMX-JSON), these topics include the use of the reference metadata mechanism in SDMX, the use of Structure Sets and Reporting Taxonomies, the use of Processes, a discussion of time and datatyping, and the conventional mechanisms within the SDMX-ML Structure message regarding versioning and referencing. 6 6 ... ... @@ -10,25 +10,24 @@ 10 10 11 11 There are several different representations in SDMX-ML, taken from XML Schemas and common programming languages. The table below describes the various representations, which are found in SDMX-ML, and their equivalents. 12 12 13 -(% style="width:1185.29px" %) 14 -|(% style="width:250px" %)**SDMX-ML Data Type**|(% style="width:285px" %)**XML Schema Data Type**|(% style="width:271px" %)**.NET Framework Type**|(% style="width:354px" %)**Java Data Type** 15 -|(% style="width:250px" %)String|(% style="width:285px" %)xsd:string|(% style="width:271px" %)System.String|(% style="width:354px" %)java.lang.String 16 -|(% style="width:250px" %)Big Integer|(% style="width:285px" %)xsd:integer|(% style="width:271px" %)System.Decimal|(% style="width:354px" %)java.math.BigInteger 17 -|(% style="width:250px" %)Integer|(% style="width:285px" %)xsd:int|(% style="width:271px" %)System.Int32|(% style="width:354px" %)int 18 -|(% style="width:250px" %)Long|(% style="width:285px" %)xsd.long|(% style="width:271px" %)System.Int64|(% style="width:354px" %)long 19 -|(% style="width:250px" %)Short|(% style="width:285px" %)xsd:short|(% style="width:271px" %)System.Int16|(% style="width:354px" %)short 20 -|(% style="width:250px" %)Decimal|(% style="width:285px" %)xsd:decimal|(% style="width:271px" %)System.Decimal|(% style="width:354px" %)java.math.BigDecimal 21 -|(% style="width:250px" %)Float|(% style="width:285px" %)xsd:float|(% style="width:271px" %)System.Single|(% style="width:354px" %)float 22 -|(% style="width:250px" %)Double|(% style="width:285px" %)xsd:double|(% style="width:271px" %)System.Double|(% style="width:354px" %)double 23 -|(% style="width:250px" %)Boolean|(% style="width:285px" %)xsd:boolean|(% style="width:271px" %)System.Boolean|(% style="width:354px" %)boolean 24 -|(% style="width:250px" %)URI|(% style="width:285px" %)xsd:anyURI|(% style="width:271px" %)System.Uri|(% style="width:354px" %)Java.net.URI or java.lang.String 25 -|(% style="width:250px" %)DateTime|(% style="width:285px" %)xsd:dateTime|(% style="width:271px" %)System.DateTime|(% style="width:354px" %)javax.xml.datatype.XMLG regorianCalendar 26 -|(% style="width:250px" %)Time|(% style="width:285px" %)xsd:time|(% style="width:271px" %)System.DateTime|(% style="width:354px" %)javax.xml.datatype.XMLG regorianCalendar 27 -|(% style="width:250px" %)GregorianYear|(% style="width:285px" %)xsd:gYear|(% style="width:271px" %)System.DateTime|(% style="width:354px" %)javax.xml.datatype.XMLG regorianCalendar 28 -|(% style="width:250px" %)GregorianMonth|(% style="width:285px" %)xsd:gYearMonth|(% style="width:271px" %)System.DateTime|(% style="width:354px" %)javax.xml.datatype.XMLG regorianCalendar 29 -|(% style="width:250px" %)GregorianDay|(% style="width:285px" %)xsd:date|(% style="width:271px" %)System.DateTime|(% style="width:354px" %)javax.xml.datatype.XMLG regorianCalendar 30 -|(% style="width:250px" %)Day, MonthDay, Month|(% style="width:285px" %)xsd:g*|(% style="width:271px" %)System.DateTime|(% style="width:354px" %)javax.xml.datatype.XMLG regorianCalendar 31 -|(% style="width:250px" %)Duration|(% style="width:285px" %)xsd:duration|(% style="width:271px" %)System.TimeSpan|(% style="width:354px" %)javax.xml.datatype.Dura tion 11 +|SDMX-ML Data Type|XML Schema Data Type|.NET Framework Type|Java Data Type 12 +|**String**|**xsd:string**|**System.String**|**java.lang.String** 13 +|**Big Integer**|**xsd:integer**|**System.Decimal**|**java.math.BigInteger** 14 +|**Integer**|**xsd:int**|**System.Int32**|**int** 15 +|**Long**|**xsd.long**|**System.Int64**|**long** 16 +|**Short**|**xsd:short**|**System.Int16**|**short** 17 +|**Decimal**|**xsd:decimal**|**System.Decimal**|**java.math.BigDecimal** 18 +|**Float**|**xsd:float**|**System.Single**|**float** 19 +|**Double**|**xsd:double**|**System.Double**|**double** 20 +|**Boolean**|**xsd:boolean**|**System.Boolean**|**boolean** 21 +|**URI**|**xsd:anyURI**|**System.Uri**|**Java.net.URI or java.lang.String** 22 +|**DateTime**|**xsd:dateTime**|**System.DateTime**|**javax.xml.datatype.XMLG regorianCalendar** 23 +|**Time**|**xsd:time**|**System.DateTime**|**javax.xml.datatype.XMLG regorianCalendar** 24 +|**GregorianYear**|**xsd:gYear**|**System.DateTime**|**javax.xml.datatype.XMLG regorianCalendar** 25 +|**GregorianMonth**|**xsd:gYearMonth**|**System.DateTime**|**javax.xml.datatype.XMLG regorianCalendar** 26 +|**GregorianDay**|**xsd:date**|**System.DateTime**|**javax.xml.datatype.XMLG regorianCalendar** 27 +|**Day, MonthDay, Month**|**xsd:g***|**System.DateTime**|**javax.xml.datatype.XMLG regorianCalendar** 28 +|**Duration**|**xsd:duration**|**System.TimeSpan**|**javax.xml.datatype.Dura tion** 32 32 33 33 There are also a number of SDMX-ML data types which do not have these direct correspondences, often because they are composite representations or restrictions of a broader data type. For most of these, there are simple types which can be referenced from the SDMX schemas, for others a derived simple type will be necessary: 34 34 ... ... @@ -140,7 +140,7 @@ 140 140 141 141 Further to the above, the mapping between the non-native data types is presented in the table below: 142 142 143 -|**SDMX Facet**|**XML Schema**|**JSON schema **"**pattern**"^^[[ (% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^1^^>>path:#sdfootnote1sym||name="sdfootnote1anc"]](%%)^^ **for "string" type**140 +|**SDMX Facet**|**XML Schema**|**JSON schema **"**pattern**"^^[[^^1^^>>path:#sdfootnote1sym||name="sdfootnote1anc"]]^^ **for "string" type** 144 144 |GregorianYear|xsd:gYear|((( 145 145 "^-?([1-9][0-9]{3,}|0[0-9]{3})(Z|(\+|-)((0[0- 146 146 ... ... @@ -241,7 +241,7 @@ 241 241 242 242 This is used to unambiguously state that a date-time represents an observation at a single point in time. Therefore, if one wants to use SDMX for data which is measured at a distinct point in time rather than being reported over a period, the date-time representation can be used. 243 243 244 -Representation: xs:dateTime (YYYY-MM-DDThh:mm:ss)^^[[ (% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^2^^>>path:#sdfootnote2sym||name="sdfootnote2anc"]](%%)^^241 +Representation: xs:dateTime (YYYY-MM-DDThh:mm:ss)^^[[^^2^^>>path:#sdfootnote2sym||name="sdfootnote2anc"]]^^ 245 245 246 246 === {{id name="_Toc291512"/}}4.2.6 Standard Reporting Period === 247 247 ... ... @@ -315,7 +315,7 @@ 315 315 316 316 Representation: common:ReportingWeekType (YYYY-Www, e.g. 2000-W53) 317 317 318 -Notes: There are either 52 or 53 weeks in a reporting year. This is based on the ISO 8601 definition of a week (Monday - Saturday), where the first week of a reporting year is defined as the week with the first Thursday on or after the reporting year start day.^^[[ (% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^3^^>>path:#sdfootnote3sym||name="sdfootnote3anc"]](%%)^^ The reporting week is always represented as two digits, therefore 1-9 are 0 padded (e.g. 01). This allows the values to be sorted chronologically using textual sorting methods.315 +Notes: There are either 52 or 53 weeks in a reporting year. This is based on the ISO 8601 definition of a week (Monday - Saturday), where the first week of a reporting year is defined as the week with the first Thursday on or after the reporting year start day.^^[[^^3^^>>path:#sdfootnote3sym||name="sdfootnote3anc"]]^^ The reporting week is always represented as two digits, therefore 1-9 are 0 padded (e.g. 01). This allows the values to be sorted chronologically using textual sorting methods. 319 319 320 320 **Reporting Day**: 321 321 ... ... @@ -353,7 +353,7 @@ 353 353 11. **If the [PERIOD_INDICATOR] is W:** 354 354 111. **If [REPORTING_YEAR_START_DATE] is a Friday, Saturday, or Sunday:** 355 355 356 -Add^^[[ (% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^4^^>>path:#sdfootnote4sym||name="sdfootnote4anc"]](%%)^^ (P3D, P2D, or P1D respectively) to the [REPORTING_YEAR_START_DATE]. The result is the [REPORTING_YEAR_BASE].353 +Add^^[[^^4^^>>path:#sdfootnote4sym||name="sdfootnote4anc"]]^^ (P3D, P2D, or P1D respectively) to the [REPORTING_YEAR_START_DATE]. The result is the [REPORTING_YEAR_BASE]. 357 357 358 358 1. 359 359 11.