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

From version 4.2
edited by Helena
on 2025/06/24 14:47
Change comment: There is no comment for this version
To version 4.7
edited by Helena
on 2025/06/24 14:59
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -158,15 +158,12 @@
158 158  **BaseValueType: **BaseValueType is a general structure which contains a reference to a data structure definition component and a value for that component. In this structure the reference to the component is optional to allow for usages where the actual reference might be provided in another context.
159 159  
160 160  Attributes:
161 -
162 162  id?, value
163 163  
164 164  Content:
165 -
166 166  {Empty}
167 167  
168 168  Attribute Documentation:
169 -
170 170  |**Name**|**Type**|**Documentation**
171 171  |id|com:NCNameIDType|The id attribute contains the identifier for the component for which a value is being provided.
172 172  |value|xs:anySimpleType|The value attribute contains the provided component value.
... ... @@ -175,19 +175,16 @@
175 175  
176 176  Derivation:
177 177  
178 -BaseValueType (restriction) 
179 - [[image:1750765436897-317.png]]ObsValueType
175 +* BaseValueType (restriction) 
176 +** ObsValueType
180 180  
181 181  Attributes:
182 -
183 183  id?, value
184 184  
185 185  Content:
186 -
187 187  {Empty}
188 188  
189 189  Attribute Documentation:
190 -
191 191  |**Name**|**Type**|**Documentation**
192 192  |id (fixed: OBS_VALUE)|com:NCNameIDType|The id attribute contains a fixed reference to the primary measure component of the data structure definition.
193 193  |value|xs:string|The value attribute contains the provided component value.
... ... @@ -195,20 +195,16 @@
195 195  **ComponentValueType: **ComponentValueType is a derivation of the BaseValueType which requires that the component reference be provided. This is used when the identification of the component cannot be inferred from another context.
196 196  
197 197  Derivation:
192 +* BaseValueType (restriction) 
193 +** ComponentValueType
198 198  
199 -BaseValueType (restriction) 
200 - [[image:1750765436899-296.png]]ComponentValueType
201 -
202 202  Attributes:
203 -
204 204  id, value
205 205  
206 206  Content:
207 -
208 208  {Empty}
209 209  
210 210  Attribute Documentation:
211 -
212 212  |**Name**|**Type**|**Documentation**
213 213  |id|com:NCNameIDType|The id attribute contains the identifier for the component for which a value is being provided.
214 214  |value|xs:string|The value attribute contains the provided component value.
... ... @@ -216,21 +216,17 @@
216 216  **TimeSeriesDataSetType: **TimeSeriesDataSetType is a derivation of the base DataSetType of the generic format the restricts the data set to only allow for grouped observations where the dimension at the observation level is the time dimension of the data structure definition. This means that unlike the base data set structure, there can be no un-grouped observations. Because this derivation is achieved using restriction, data sets conforming to this type will inherently conform to the base data set structure as well. In fact, data structured here will be identical to data in the base data set when the time dimension is the observation dimension. This means that the data contained in this structure can be processed in exactly the same manner as the base structure.
217 217  
218 218  Derivation:
209 +* //com:AnnotableType// (extension) 
210 +** DataSetType (restriction) 
211 +*** TimeSeriesDataSetType
219 219  
220 -//com:AnnotableType// (extension) 
221 - [[image:1750765436901-853.png]]DataSetType (restriction) 
222 - [[image:1750765436906-461.png]]TimeSeriesDataSetType
223 -
224 224  Attributes:
225 -
226 226  structureRef, setID?, action?, reportingBeginDate?, reportingEndDate?, validFromDate?, validToDate?, publicationYear?, publicationPeriod?
227 227  
228 228  Content:
229 -
230 230  com:Annotations?, DataProvider?, Attributes?, Group*, Series*
231 231  
232 232  Attribute Documentation:
233 -
234 234  |**Name**|**Type**|**Documentation**
235 235  |structureRef|xs:IDREF|The structureRef contains a reference to a structural specification in the header of a data or reference metadata message. The structural specification details which structure the data or reference metadata conforms to, as well as providing additional information such as how the data is structure (e.g. which dimension occurs at the observation level for a data set).
236 236  |setID|com:IDType|The setID provides an identification of the data or metadata set.
... ... @@ -254,17 +254,14 @@
254 254  **TimeSeriesType: **TimeSeriesType defines a structure which is used to group a collection of observations which have a key in common, organised by time. The key for a series is every dimension defined in the data structure definition, save the time dimension. In addition to observations, values can be provided for attributes which are associated with the dimensions which make up this series key (so long as the attributes do not specify a group attachment or also have an relationship with the time dimension). It is possible for the series to contain only observations or only attribute values, or both.
255 255  
256 256  Derivation:
243 +* //com:AnnotableType// (extension) 
244 +** SeriesType (restriction) 
245 +*** TimeSeriesType
257 257  
258 -//com:AnnotableType// (extension) 
259 - [[image:1750765436911-979.png]]SeriesType (restriction) 
260 - [[image:1750765436912-452.png]]TimeSeriesType
261 -
262 262  Content:
263 -
264 264  com:Annotations?, SeriesKey, Attributes?, Obs*
265 265  
266 266  Element Documentation:
267 -
268 268  |**Name**|**Type**|**Documentation**
269 269  |com:Annotations|com: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 my reference it.
270 270  |SeriesKey|ValuesType|SeriesKey contains the values for each all dimensions defined in the data structure definition, except for that which is declared to be at the observation level for this data set. This key is required, and every dimension must be provided a value.
... ... @@ -274,17 +274,14 @@
274 274  **TimeSeriesObsType: **TimeSeriesObsType defines the structure of a time series observation. The observation must be provided a value for the time dimension. This time value should disambiguate the observation within the series in which it is defined (i.e. there should not be another observation with the same time value). The observation can contain an observed value and/or attribute values.
275 275  
276 276  Derivation:
260 +* //com:AnnotableType// (extension) 
261 +** ObsType (restriction) 
262 +*** TimeSeriesObsType
277 277  
278 -//com:AnnotableType// (extension) 
279 - [[image:1750765436913-909.png]]ObsType (restriction) 
280 - [[image:1750765436914-333.png]]TimeSeriesObsType
281 -
282 282  Content:
283 -
284 284  com:Annotations?, ObsDimension, ObsValue?, Attributes?
285 285  
286 286  Element Documentation:
287 -
288 288  |**Name**|**Type**|**Documentation**
289 289  |com:Annotations|com: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 my reference it.
290 290  |ObsDimension|TimeValueType|ObsDimension holds the key for the grouped observation, i.e. the value of the observation dimension. Note that in this element, the reference to the dimension is optional, since it can be inferred from the structure specification for the data set. This saves having to repeat the value unnecessarily. It is assumed that any application processing the data set will have the information from the structure specification available, so that if a dimension identifier is not supplied here, the proper reference can be applied.
... ... @@ -294,35 +294,27 @@
294 294  **TimeValueType: **TimeValueType is a derivation of the BaseValueType which is used to provide a value for the time dimension. Since the identifier for the time dimension is fixed, the component reference for this structure is fixed. Note that this means that it is not necessary to provide a value in an instance as the fixed value will be provided in the post validation information set.
295 295  
296 296  Derivation:
277 +* BaseValueType (restriction) 
278 +** TimeValueType
297 297  
298 -BaseValueType (restriction) 
299 - [[image:1750765436914-771.png]]TimeValueType
300 -
301 301  Attributes:
302 -
303 303  id?, value
304 304  
305 305  Content:
306 -
307 307  {Empty}
308 308  
309 309  Attribute Documentation:
310 -
311 311  |**Name**|**Type**|**Documentation**
312 312  |id (fixed: TIME_PERIOD)|com:NCNameIDType|The id attribute contains the identifier for the component for which a value is being provided.
313 313  |value|com: ObservationalTimePer iodType|The value attribute contains the provided component value.
314 314  
315 -1.
316 -11. Structure Specific Data Namespace
291 +== 2.2 Structure Specific Data Namespace ==
317 317  
318 318  **http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/data/structurespecific**
319 319  
320 -1.
321 -11.
322 -111. Summary
295 +=== Summary ===
323 323  
324 324  Referenced Namespaces:
325 -
326 326  |**Namespace**|**Prefix**
327 327  | |
328 328  |http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|com
... ... @@ -329,31 +329,24 @@
329 329  |http:~/~/www.w3.org/2001/XMLSchema|xs
330 330  
331 331  Contents:
332 -
333 333  7 Complex Types
334 334  1 Simple Type
335 335  
336 -1.
337 -11.
338 -111. Complex Types
307 +=== Complex Types ===
339 339  
340 340  **//DataSetType//: **DataSetType is the abstract type which defines the base structure for any data structure definition specific data set. A derived data set type will be created that is specific to a data structure definition and the details of the organisation of the data (i.e. which dimension is the observation dimension and whether explicit measures should be used). Data is organised into either a collection of series (grouped observations) or a collection of un-grouped observations. The derived data set type will restrict this choice to be either grouped or un-grouped observations. If this dimension is "AllDimensions" then the derived data set type must consist of a collection of un-grouped observations; otherwise the data set will contain a collection of series with the observations in the series disambiguated by the specified dimension at the observation level. This data set is capable of containing data (observed values) and/or documentation (attribute values) and can be used for incremental updates and deletions (i.e. only the relevant updates or deletes are exchanged). It is assumed that each series or un-grouped observation will be distinct in its purpose. For example, if series contains both data and documentation, it assumed that each series will have a unique key. If the series contains only data or only documentation, then it is possible that another series with the same key might exist, but with not with the same purpose (i.e. to provide data or documentation) as the first series. This base type is designed such that derived types can be processed in a generic manner; it assures that data structure definition specific data will have a consistent structure. The group, series, and observation elements are unqualified, meaning that they are not qualified with a namespace in an instance. This means that in the derived data set types, the elements will always be the same, regardless of the target namespace of the schemas which defines these derived types. This allows for consistent processing of the structure without regard to what the namespace might be for the data structure definition specific schema. The data set can contain values for attributes which do not have an attribute relationship with any data structure definition components. These attribute values will exist in XML attributes in this element based on this type (DataSet). This is specified in the content model with the declaration of anyAttributes in the "local" namespace. The derived data set 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). To allow for generic processing, it is required that the only unqualified XML attributes in the derived data set type (outside of the standard data set attributes) be for 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 attribute.
341 341  
342 342  Derivation:
312 +* //com:AnnotableType// (extension) 
313 +** //DataSetType//
343 343  
344 -//com:AnnotableType// (extension) 
345 - [[image:1750765436915-836.png]]//DataSetType//
346 -
347 347  Attributes:
348 -
349 349  structureRef, setID?, action?, reportingBeginDate?, reportingEndDate?, validFromDate?, validToDate?, publicationYear?, publicationPeriod?, dataScope, REPORTING_YEAR_START_DAY?
350 350  
351 351  Content:
352 -
353 353  com:Annotations?, DataProvider?, Group*, (Series+ | Obs+)?
354 354  
355 355  Attribute Documentation:
356 -
357 357  |**Name**|**Type**|**Documentation**
358 358  |structureRef|xs:IDREF|The structureRef contains a reference to a structural specification in the header of a data or reference metadata message. The structural specification details which structure the data or reference metadata conforms to, as well as providing additional information such as how the data is structure (e.g. which dimension occurs at the observation level for a data set).
359 359  |setID|com:IDType|The setID provides an identification of the data or metadata set.
... ... @@ -379,20 +379,16 @@
379 379  **//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 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.
380 380  
381 381  Derivation:
347 +* //com:AnnotableType// (extension) 
348 +** //GroupType//
382 382  
383 -//com:AnnotableType// (extension) 
384 - [[image:1750765436916-983.png]]//GroupType//
385 -
386 386  Attributes:
387 -
388 388  type?, REPORTING_YEAR_START_DAY?
389 389  
390 390  Content:
391 -
392 392  com:Annotations?
393 393  
394 394  Attribute Documentation:
395 -
396 396  |**Name**|**Type**|**Documentation**
397 397  |type|com:IDType|The type attribute reference the identifier of the group as defined in the data structure definition. This is optional, but derived group types will provide a fixed value for this so that it always available in the post validation information set. This allows the group to be processed in a generic manner.
398 398  |REPORTING_YEAR_START_DAY|xs:gMonthDay|The REPORTING_YEAR_START_DAY attribute is an explict attribute for the reporting year start day, which provides context to the time dimension when its value contains a reporting period (e.g. 2010-Q1). This attribute is used to state the month and day that the reporting year begins (e.g. ~-~-07-01 for July 1st). In the absence of an explicit value provided in this attribute, all reporting period values will be assumed to be based on a reporting year start day of January 1. This is declared in the base schema since it has a fixed identifier and representation. The derived group types may either require or prohibit this attribute, depending on whether the data structure declared the reporting year start day attribute and if so, the attribute relationship and assignment status assigned to it.
... ... @@ -405,20 +405,16 @@
405 405  **//SeriesType//: **SeriesType is the abstract type which defines a structure which is used to group a collection of observations which have a key in common. The key for a series is every dimension defined in the data structure definition, save the dimension declared to be at the observation level for this data set. In addition to observations, values can be provided for attributes which are associated with the dimensions which make up this series key (so long as the attributes do not specify a group attachment or also have an relationship with the observation dimension). It is possible for the series to contain only observations or only attribute values, or both. Data structure definition schemas will drive a type based on this that is specific to the data structure definition and the variation of the format being expressed in the schema. Both the dimension values which make up the key and the attribute values associated with the key dimensions will be represented with XML attributes. This is 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.
406 406  
407 407  Derivation:
369 +* //com:AnnotableType// (extension) 
370 +** //SeriesType//
408 408  
409 -//com:AnnotableType// (extension) 
410 - //SeriesType//
411 -
412 412  Attributes:
413 -
414 414  TIME_PERIOD?, REPORTING_YEAR_START_DAY?
415 415  
416 416  Content:
417 -
418 418  com:Annotations?, Obs*
419 419  
420 420  Attribute Documentation:
421 -
422 422  |**Name**|**Type**|**Documentation**
423 423  |TIME_PERIOD|com: ObservationalTimePer iodType|The TIME_PERIOD attribute is an explict attribute for the time dimension. This is declared in the base schema since it has a fixed identifier and representation. The derived series type will either require or prohibit this attribute, depending on whether time is the observation dimension. If the time dimension specifies a more specific representation of time the derived type will restrict the type definition to the appropriate type.
424 424  |REPORTING_YEAR_START_DAY|xs:gMonthDay|The REPORTING_YEAR_START_DAY attribute is an explict attribute for the reporting year start day, which provides context to the time dimension when its value contains a reporting period (e.g. 2010-Q1). This attribute is used to state the month and day that the reporting year begins (e.g. ~-~-07-01 for July 1st). In the absence of an explicit value provided in this attribute, all reporting period values will be assumed to be based on a reporting year start day of January 1. This is declared in the base schema since it has a fixed identifier and representation. The derived series type may either require or prohibit this attribute, depending on whether the data structure declared the reporting year start day attribute and if so, the attribute relationship and assignment status assigned to it.
... ... @@ -432,20 +432,16 @@
432 432  **//ObsType//: **ObsType is the abstract type which defines the structure of a grouped or un-grouped observation. The observation must be provided a key, which is either a value for the dimension which is declared to be at the observation level if the observation is grouped, or a full set of values for all dimensions in the data structure definition if the observation is un-grouped. This key should disambiguate the observation within the context in which it is defined (e.g. there should not be another observation with the same dimension value in a series). The observation can contain an observed value and/or attribute values. Data structure definition schemas will drive a type or types based on this that is specific to the data structure definition and the variation of the format being expressed in the schema. The dimension value(s) which make up the key and the attribute values associated with the key dimension(s) or the primary measure will be represented with XML attributes. This is specified in the content model with the declaration of anyAttributes in the "local" namespace. The derived observation 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 attribute(s) 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 observation type be for the observation dimension(s) 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. If the data structure definition specific schema requires that explicit measures be used (only possible when the measure dimension is specified at the observation), then there will be types derived for each measure defined by the measure dimension. In this case, the types will be specific to each measure, which is to say that the representation of the primary measure (i.e. the observed value) will be restricted to that which is specified by the specific measure.
433 433  
434 434  Derivation:
392 +* //com:AnnotableType// (extension) 
393 +** //ObsType//
435 435  
436 -//com:AnnotableType// (extension) 
437 - //ObsType//
438 -
439 439  Attributes:
440 -
441 441  type?, TIME_PERIOD?, REPORTING_YEAR_START_DAY?, OBS_VALUE?
442 442  
443 443  Content:
444 -
445 445  com:Annotations?
446 446  
447 447  Attribute Documentation:
448 -
449 449  |**Name**|**Type**|**Documentation**
450 450  |type|com:IDType|The type attribute is used when the derived format requires that explicit measure be used. In this case, the derived type based on the measure will fix this value to be the identification of the measure concept. This will not be required, but since it is fixed it will be available in the post validation information set which will allow for generic processing of the data. If explicit measures are not used, then the derived type will prohibit the use of this attribute.
451 451  |TIME_PERIOD|com: ObservationalTimePer iodType|The TIME_PERIOD attribute is an explicit attribute for the time dimension. This is declared in the base schema since it has a fixed identifier and representation. The derived series type will either require or prohibit this attribute, depending on whether time is the observation dimension. If the time dimension specifies a more specific representation of time the derived type will restrict the type definition to the appropriate type.
... ... @@ -460,21 +460,17 @@
460 460  **//TimeSeriesDataSetType//: **TimeSeriesDataSetType is the abstract type which defines the base structure for any data structure definition specific time series based data set. A derived data set type will be created that is specific to a data structure definition. Unlike the base format, only one variation of this is allowed for a data structure definition. This variation is the time dimension as the observation dimension. Data is organised into a collection of time series. Because this derivation is achieved using restriction, data sets conforming to this type will inherently conform to the base data set structure as well. In fact, data structure specific here will be identical to data in the base data set when the time dimension is the observation dimension, even for the derived data set types. This means that the data contained in this structure can be processed in exactly the same manner as the base structure. The same rules for derivation as the base data set type apply to this specialized data set.
461 461  
462 462  Derivation:
416 +* //com:AnnotableType// (extension) 
417 +** //DataSetType// (restriction) 
418 +*** //TimeSeriesDataSetType//
463 463  
464 -//com:AnnotableType// (extension) 
465 - //DataSetType// (restriction) 
466 - //TimeSeriesDataSetType//
467 -
468 468  Attributes:
469 -
470 470  structureRef, setID?, action?, reportingBeginDate?, reportingEndDate?, validFromDate?, validToDate?, publicationYear?, publicationPeriod?, dataScope, REPORTING_YEAR_START_DAY?
471 471  
472 472  Content:
473 -
474 474  com:Annotations?, DataProvider?, Group*, Series*
475 475  
476 476  Attribute Documentation:
477 -
478 478  |**Name**|**Type**|**Documentation**
479 479  |structureRef|xs:IDREF|The structureRef contains a reference to a structural specification in the header of a data or reference metadata message. The structural specification details which structure the data or reference metadata conforms to, as well as providing additional information such as how the data is structure (e.g. which dimension occurs at the observation level for a data set).
480 480  |setID|com:IDType|The setID provides an identification of the data or metadata set.
... ... @@ -499,21 +499,17 @@
499 499  **TimeSeriesType: **TimeSeriesType defines an abstract structure which is used to group a collection of observations which have a key in common, organised by time. The key for a series is every dimension defined in the data structure definition, save the time dimension. In addition to observations, values can be provided for attributes which are associated with the dimensions which make up this series key (so long as the attributes do not specify a group attachment or also have an relationship with the time dimension). It is possible for the series to contain only observations or only attribute values, or both. The same rules for derivation as the base series type apply to this specialized series.
500 500  
501 501  Derivation:
451 +* //com:AnnotableType// (extension) 
452 +** //SeriesType// (restriction) 
453 +*** TimeSeriesType
502 502  
503 -//com:AnnotableType// (extension) 
504 - //SeriesType// (restriction) 
505 - TimeSeriesType
506 -
507 507  Attributes:
508 -
509 509  REPORTING_YEAR_START_DAY?
510 510  
511 511  Content:
512 -
513 513  com:Annotations?, Obs*
514 514  
515 515  Attribute Documentation:
516 -
517 517  |**Name**|**Type**|**Documentation**
518 518  |REPORTING_YEAR_START_DAY|xs:gMonthDay|The REPORTING_YEAR_START_DAY attribute is an explict attribute for the reporting year start day, which provides context to the time dimension when its value contains a reporting period (e.g. 2010-Q1). This attribute is used to state the month and day that the reporting year begins (e.g. ~-~-07-01 for July 1st). In the absence of an explicit value provided in this attribute, all reporting period values will be assumed to be based on a reporting year start day of January 1. This is declared in the base schema since it has a fixed identifier and representation. The derived series type may either require or prohibit this attribute, depending on whether the data structure declared the reporting year start day attribute and if so, the attribute relationship and assignment status assigned to it.
519 519  
... ... @@ -526,21 +526,17 @@
526 526  **//TimeSeriesObsType//: **TimeSeriesObsType defines the abstract structure of a time series observation. The observation must be provided a value for the time dimension. This time value should disambiguate the observation within the series in which it is defined (i.e. there should not be another observation with the same time value). The observation can contain an observed value and/or attribute values. The same rules for derivation as the base observation type apply to this specialized observation.
527 527  
528 528  Derivation:
474 +* //com:AnnotableType// (extension) 
475 +** //ObsType// (restriction) 
476 +*** //TimeSeriesObsType//
529 529  
530 -//com:AnnotableType// (extension) 
531 - //ObsType// (restriction) 
532 - //TimeSeriesObsType//
533 -
534 534  Attributes:
535 -
536 536  TIME_PERIOD, REPORTING_YEAR_START_DAY?, OBS_VALUE?
537 537  
538 538  Content:
539 -
540 540  com:Annotations?
541 541  
542 542  Attribute Documentation:
543 -
544 544  |**Name**|**Type**|**Documentation**
545 545  |TIME_PERIOD|com: ObservationalTimePer iodType|The TIME_PERIOD attribute is an explicit attribute for the time dimension. This is declared in the base schema since it has a fixed identifier and representation. Since this data is structured to be time series only, this attribute is always required. If the time dimension specifies a more specific representation of time the derived type will restrict the type definition to the appropriate type.
546 546  |REPORTING_YEAR_START_DAY|xs:gMonthDay|The REPORTING_YEAR_START_DAY attribute is an explict attribute for the reporting year start day, which provides context to the time dimension when its value contains a reporting period (e.g. 2010-Q1). This attribute is used to state the month and day that the reporting year begins (e.g. ~-~-07-01 for July 1st). In the absence of an explicit value provided in this attribute, all reporting period values will be assumed to be based on a reporting year start day of January 1. This is declared in the base schema since it has a fixed identifier and representation. The derived observation type may either require or prohibit this attribute, depending on whether the data structure declared the reporting year start day attribute and if so, the attribute relationship and assignment status assigned to it.
... ... @@ -547,13 +547,10 @@
547 547  |OBS_VALUE|xs:anySimpleType|The OBS_VALUE attribute is an explicit attribute for the primary measure, which is intended to hold the value for the observation. This is declared in the base schema since it has a fixed identifier. This attribute is un-typed, since the representation of the observed value can vary widely. Derived types will restrict this to be a type based on the representation of the primary measure. In the case that an explicit measure is used, the derived type for a given measure might further restrict the type of the primary measure to be more specific to the core representation for the measure concept. Note that it is required that in the case of multiple measures being used, that the representation of the primary measure is broad enough to handle the various representations of the measure concepts.
548 548  
549 549  Element Documentation:
550 -
551 551  |**Name**|**Type**|**Documentation**
552 552  |com:Annotations|com: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 my reference it.
553 553  
554 -1.
555 -11.
556 -111. Simple Types
494 +=== Simple Types ===
557 557  
558 558  **DataScopeType: **DataScopeType is an enumeration of the possible validity scopes for a data set. These scopes indicate the level at which the data is stated to be valid.
559 559  
... ... @@ -560,7 +560,6 @@
560 560  Derived by restriction of xs:string .
561 561  
562 562  Enumerations:
563 -
564 564  |**Value**|**Documentation**
565 565  |DataStructure|The data set conforms simply to the data structure definition as it is defined, without regard to any constraints.
566 566  |ConstrainedDataStructure|The data set conforms to the known allowable content constraints applied to the data structure definition.
... ... @@ -567,46 +567,35 @@
567 567  |Dataflow|The data set conforms to the known allowable content constraints applied to the dataflow.
568 568  |ProvisionAgreement|The data set conforms to the known allowable content constraints applied to the provision agreement.
569 569  
570 -1.
571 -11. Generic Metadata Namespace
507 +== Generic Metadata Namespace ==
572 572  
573 573  **http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/metadata/generic**
574 574  
575 -1.
576 -11.
577 -111. Summary
511 +=== Summary ===
578 578  
579 579  Referenced Namespaces:
580 -
581 581  |**Namespace**|**Prefix**
582 582  |http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|com
583 583  |http:~/~/www.w3.org/2001/XMLSchema|xs
584 584  
585 585  Contents:
586 -
587 587  6 Complex Types
588 588  
589 -1.
590 -11.
591 -111. Complex Types
521 +=== Complex Types ===
592 592  
593 593  **MetadataSetType: **MetadataSetType describes the structure for a metadata set, which contains a collection of reported metadata against a set of values for a given full or partial target identifier, as described in a metadata structure definition. The metadata set may contain reported metadata for multiple report structures defined in a metadata structure definition.
594 594  
595 595  Derivation:
526 +* //com:AnnotableType// (extension) 
527 +** MetadataSetType
596 596  
597 -//com:AnnotableType// (extension) 
598 - MetadataSetType
599 -
600 600  Attributes:
601 -
602 602  structureRef, setID?, action?, reportingBeginDate?, reportingEndDate?, validFromDate?, validToDate?, publicationYear?, publicationPeriod?
603 603  
604 604  Content:
605 -
606 606  com:Annotations?, com:Name*, DataProvider?, Report+
607 607  
608 608  Attribute Documentation:
609 -
610 610  |**Name**|**Type**|**Documentation**
611 611  |structureRef|xs:IDREF|The structureRef contains a reference to a structural specification in the header of a data or reference metadata message. The structural specification details which structure the data or reference metadata conforms to, as well as providing additional information such as how the data is structure (e.g. which dimension occurs at the observation level for a data set).
612 612  |setID|com:IDType|The setID provides an identification of the data or metadata set.
... ... @@ -629,20 +629,16 @@
629 629  **ReportType: **ReportType contains a set of report attributes and identifies a target objects] to which they apply.
630 630  
631 631  Derivation:
558 +* //com:AnnotableType// (extension) 
559 +** ReportType
632 632  
633 -//com:AnnotableType// (extension) 
634 - ReportType
635 -
636 636  Attributes:
637 -
638 638  id
639 639  
640 640  Content:
641 -
642 642  com:Annotations?, Target, AttributeSet
643 643  
644 644  Attribute Documentation:
645 -
646 646  |**Name**|**Type**|**Documentation**
647 647  |id|com:IDType|The id attribute holds the identifier of the report structure as defined in the metadata structure definition. This identifies the report structure which defines the structure of metadata that is being reported.
648 648  
... ... @@ -656,20 +656,16 @@
656 656  **TargetType: **TargetType defines the structure of a target. It contains a set of target reference values which when taken together, identify the object or objects to which the reported metadata apply.
657 657  
658 658  Attributes:
659 -
660 660  id
661 661  
662 662  Content:
663 -
664 664  ReferenceValue+
665 665  
666 666  Attribute Documentation:
667 -
668 668  |**Name**|**Type**|**Documentation**
669 669  |id|com:IDType|The id attribute holds the identifier of the metadata target as defined in the metadata structure definition. This identifies the metadata target of the report structure that identifies the target object(s) of the reported metadata.
670 670  
671 671  Element Documentation:
672 -
673 673  |**Name**|**Type**|**Documentation**
674 674  |ReferenceValue|ReferenceValueType|ReferenceValue contains a value for a target reference object reference. When this is taken with its sibling elements, they identify the object or objects to which the reported metadata apply. The content of this will either be a reference to an identifiable object, a data key, a reference to a data set, or a report period.
675 675  
... ... @@ -676,20 +676,16 @@
676 676  **ReferenceValueType: **ReferenceValueType defines the structure of a target object reference value. A target reference value will either be a reference to an identifiable object, a data key, a reference to a data set, or a report period.
677 677  
678 678  Attributes:
679 -
680 680  id
681 681  
682 682  Content:
683 -
684 684  (ObjectReference | DataKey | DataSetReference | ConstraintContentReference | ReportPeriod)
685 685  
686 686  Attribute Documentation:
687 -
688 688  |**Name**|**Type**|**Documentation**
689 689  |id|com:IDType|The id attribute holds the identifier of the target reference object as defined in the metadata structure definition. This identifies the target reference of the metadata target that identifes one of the target references, that when taken together, identify the target of the reported metadata.
690 690  
691 691  Element Documentation:
692 -
693 693  |**Name**|**Type**|**Documentation**
694 694  |ObjectReference|com: ObjectReferenceType|ObjectReference provides a reference to an identifiable object in the SDMX information model. An identifiable object target will utilize this option as the representation of the target reference value.
695 695  |DataKey|com:DataKeyType|ObjectReference provides a set of dimension references and values for those dimension for the purpose of reporting metadata against a set of data. A key descriptor values target will utilize this option as the representation of the target reference value.
... ... @@ -700,11 +700,9 @@
700 700  **AttributeSetType: **AttributeSetType defines the structure for a collection of reported metadata attributes.
701 701  
702 702  Content:
703 -
704 704  ReportedAttribute+
705 705  
706 706  Element Documentation:
707 -
708 708  |**Name**|**Type**|**Documentation**
709 709  |ReportedAttribute|ReportedAttributeTyp e|ReportedAttribute provides the details of a reported attribute, including a value and/or child reported attributes.
710 710  
... ... @@ -711,26 +711,21 @@
711 711  **ReportedAttributeType: **ReportedAttributeType defines the structure for a reported metadata attribute. A value for the attribute can be supplied as either a single value, or multi-lingual text values (either structured or unstructured). An optional set of child metadata attributes is also available if the metadata attribute definition defines nested metadata attributes.
712 712  
713 713  Derivation:
626 +* //com:AnnotableType// (extension) 
627 +** ReportedAttributeType
714 714  
715 -//com:AnnotableType// (extension) 
716 - ReportedAttributeType
717 -
718 718  Attributes:
719 -
720 720  id, value?
721 721  
722 722  Content:
723 -
724 724  com:Annotations?, (com:Text+ | com:StructuredText+)?, AttributeSet?
725 725  
726 726  Attribute Documentation:
727 -
728 728  |**Name**|**Type**|**Documentation**
729 729  |id|com:IDType|The id attribute identifies the metadata attribute that the value is being reported for.
730 730  |value|xs:string|The value attribute holds any simple value for the metadata attribute.
731 731  
732 732  Element Documentation:
733 -
734 734  |**Name**|**Type**|**Documentation**
735 735  |com:Annotations|com: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 my reference it.
736 736  |com:Text|com: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.
... ... @@ -737,14 +737,11 @@
737 737  |com:StructuredText|com: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.
738 738  |AttributeSet|AttributeSetType|AttributeSet contains the reported metadata attribute values for the child metadata attributes.
739 739  
740 -1.
741 -11. Structure Specific Metadata Namespace
647 +== Structure Specific Metadata Namespace ==
742 742  
743 743  **http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/metadata/structurespecific**
744 744  
745 -1.
746 -11.
747 -111. Summary
651 +=== Summary ===
748 748  
749 749  Referenced Namespaces:
750 750  
... ... @@ -754,30 +754,23 @@
754 754  |http:~/~/www.w3.org/2001/XMLSchema|xs
755 755  
756 756  Contents:
757 -
758 758  5 Complex Types
759 759  
760 -1.
761 -11.
762 -111. Complex Types
663 +=== Complex Types ===
763 763  
764 764  **//MetadataSetType//: **MetadataSetType is an abstract base type the forms the basis for a metadata structure specific metadata set. It is restricted by the metadata structure definition specific schema to meet its needs.
765 765  
766 766  Derivation:
668 +* //com:AnnotableType// (extension) 
669 +** //MetadataSetType//
767 767  
768 -//com:AnnotableType// (extension) 
769 - //MetadataSetType//
770 -
771 771  Attributes:
772 -
773 773  structureRef, setID?, action?, reportingBeginDate?, reportingEndDate?, validFromDate?, validToDate?, publicationYear?, publicationPeriod?
774 774  
775 775  Content:
776 -
777 777  com:Annotations?, com:Name*, DataProvider?, Report+
778 778  
779 779  Attribute Documentation:
780 -
781 781  |**Name**|**Type**|**Documentation**
782 782  |structureRef|xs:IDREF|The structureRef contains a reference to a structural specification in the header of a data or reference metadata message. The structural specification details which structure the data or reference metadata conforms to, as well as providing additional information such as how the data is structure (e.g. which dimension occurs at the observation level for a data set).
783 783  |setID|com:IDType|The setID provides an identification of the data or metadata set.
... ... @@ -790,7 +790,6 @@
790 790  |publicationPeriod|com: ObservationalTimePer iodType|The publicationPeriod specifies the period of publication of the data or metadata in terms of whatever provisioning agreements might be in force (i.e., "Q1 2005" if that is the time of publication for a data set published on a quarterly basis).
791 791  
792 792  Element Documentation:
793 -
794 794  |**Name**|**Type**|**Documentation**
795 795  |com:Annotations|com: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 my reference it.
796 796  |com:Name|com:TextType|Name is a reusable element, used for providing a human-readable name for an object.
... ... @@ -800,25 +800,20 @@
800 800  **//ReportType//: **ReportType is an abstract base type the forms the basis for a metadata structure definition specific report, based on the defined report structures. This type is restricted in the metadata structure definition specific schema so that the Target and AttributeSet conform to the prescribed report structure.
801 801  
802 802  Derivation:
699 +* //com:AnnotableType// (extension) 
700 +** //ReportType//
803 803  
804 -//com:AnnotableType// (extension) 
805 - //ReportType//
806 -
807 807  Attributes:
808 -
809 809  id?
810 810  
811 811  Content:
812 -
813 813  com:Annotations?, Target, AttributeSet
814 814  
815 815  Attribute Documentation:
816 -
817 817  |**Name**|**Type**|**Documentation**
818 818  |id|com:IDType|The id attribute holds the identifier of the report structure as defined in the metadata structure definition. This identifies the report structure which defines the structure of metadata that is being reported. This is optional and not expected to be supplied as the metadata structure definition specific schema will specify a fixed value such that the reference to the report structure will always be available if required for processing.
819 819  
820 820  Element Documentation:
821 -
822 822  |**Name**|**Type**|**Documentation**
823 823  |com:Annotations|com: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 my reference it.
824 824  |Target|//TargetType//|Target contains a set of target reference values which when taken together, identify the object or objects to which the reported metadata apply. This element is unqualified so that the metadata structure definition specific schema can refine the type of the element such that the references values can be validated against those defined in the metadata targets for the report structure.
... ... @@ -827,20 +827,16 @@
827 827  **//TargetType//: **TargetType is an abstract base type that forms the basis of a the metadata report's metadata target value. This type is restricted in the metadata structure definition specific schema so that the ReferenceValue elements conform to the targets specified in the metadata target defined in the metadata structure definition.
828 828  
829 829  Attributes:
830 -
831 831  id?
832 832  
833 833  Content:
834 -
835 835  ReferenceValue+
836 836  
837 837  Attribute Documentation:
838 -
839 839  |**Name**|**Type**|**Documentation**
840 840  |id|com:IDType|The id attribute holds the identifier of the metadata target as defined in the metadata structure definition. This identifies the metadata target of the report structure that identifies the target object(s) of the reported metadata. This is optional and not expected to be supplied as the metadata structure definition specific schema will specify a fixed value such that the reference to the metadata target will always be available if required for processing.
841 841  
842 842  Element Documentation:
843 -
844 844  |**Name**|**Type**|**Documentation**
845 845  |ReferenceValue|//ReferenceValueType//|ReferenceValue contains a value for a target reference. When this is taken with its sibling elements, they identify the object or objects to which the reported metadata apply. The content of this will either be a reference to an identifiable object, a data key, a reference to a data set, or a report period. This element is unqualified so that the metadata structure definition specific schema can refine the type of the element such that value can be validated against the format defined in the metadata structure definition.
846 846  
... ... @@ -847,20 +847,16 @@
847 847  **//ReferenceValueType//: **ReferenceValueType is an abstract base type that forms the basis of a target reference value. A target reference value will either be a reference to an identifiable object, a data key, a reference to a data set, or a report period. The choice of these options will be refined to only one according to the definition of the target in the metadata structure definition.
848 848  
849 849  Attributes:
850 -
851 851  id?
852 852  
853 853  Content:
854 -
855 855  (ObjectReference | DataKey | DataSetReference | ConstraintContentReference | ReportPeriod)
856 856  
857 857  Attribute Documentation:
858 -
859 859  |**Name**|**Type**|**Documentation**
860 860  |id|com:IDType|The id attribute holds the identifier of the target reference object reference as defined in the metadata structure definition. This identifies the target reference of the metadata target that identifes one of the target references, that when taken together, identify the target of the reported metadata. This is optional and not expected to be supplied as the metadata structure definition specific schema will specify a fixed value such that the reference to the target object definition will always be available if required for processing.
861 861  
862 862  Element Documentation:
863 -
864 864  |**Name**|**Type**|**Documentation**
865 865  |ObjectReference|//com:ReferenceType//|ObjectReference provides a reference to an identifiable object in the SDMX information model. An identifiable object target will utilize this option as the representation of the target reference value. This element is unqualified so that the metadata structure definition specific schema can refine the type of the element such that the type of reference is valid according to the object type specified in the identifiable object target in the metadata structure definition. At the very least, the reference will be specific to the type of object being referenced so that a complete set of reference fields must be provided. In cases where an item object is restricted to be from a particular scheme, this type will be further restricted so that only a valid item reference can be supplied. The structure of this reference is such that it can be generically processed without needing to know what the intended target object type is prior to processing, as this information is part of the reference.
866 866  |DataKey|com:DataKeyType|ObjectReference provides a set of dimension references and values for those dimension for the purpose of reporting metadata against a set of data. A key descriptor values target will utilize this option as the representation of the target reference value. It is not expect that the metadata structure definition specific schema would refine this, but none the less, it is an unqualified element.
... ... @@ -871,20 +871,16 @@
871 871  **//ReportedAttributeType//: **ReportedAttributeType is an abstract base type that forms the basis for a metadata structure specific metadata attribute. A value for the attribute can be supplied as either a single value, or multi-lingual text values (either structured or unstructured). An optional set of child metadata attributes is also available if the metadata attribute definition defines nested metadata attributes. The metadata structure definition specific schema will refine this type for each metadata attribute such that the content can be validation against what is defined in the metadata structure definition.
872 872  
873 873  Derivation:
757 +* //com:AnnotableType// (extension) 
758 +** //ReportedAttributeType//
874 874  
875 -//com:AnnotableType// (extension) 
876 - //ReportedAttributeType//
877 -
878 878  Attributes:
879 -
880 880  id?, value?, isMetadataAttribute?
881 881  
882 882  Content:
883 -
884 884  com:Annotations?, (com:Text+ | com:StructuredText+)?, AttributeSet?
885 885  
886 886  Attribute Documentation:
887 -
888 888  |**Name**|**Type**|**Documentation**
889 889  |id|com:IDType|The id attribute identifies the metadata attribute that the value is being reported for. This is optional and not expected to be supplied as the metadata structure definition specific schema will specify a fixed value such that the reference to the metadata attribute will always be available if required for processing.
890 890  |value|xs:anySimpleType|The value attribute holds any simple value for the metadata attribute. This attribute is un-typed such that the metadata structure definition specific schema can specify any simple type according the text format / local representation defined by the metadata structure definition.
... ... @@ -891,7 +891,6 @@
891 891  |isMetadataAttribute (fixed: true)|xs:boolean|The isMetadataAttribute attribute is a fixed boolean (true) and is intended to designate to processing applications that a given element represents a reported attribute. This attribute is qualified (meaning that it will be qualified in an instance with the target namespace) to ensure that it can be properly identified by applications. The purpose of this is to allow applications to identify elements with unknown names as reported attributes so that they may process a metadata structure definition specific instance without knowledge of the underlying metadata structure definition.
892 892  
893 893  Element Documentation:
894 -
895 895  |**Name**|**Type**|**Documentation**
896 896  |com:Annotations|com: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 my reference it.
897 897  |com:Text|com: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.
... ... @@ -898,9 +898,10 @@
898 898  |com:StructuredText|com: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. If the multi-lingual flag is not set to true, it is expected that the maximum occurrence of this will be refined to be 1 in the metadata structure definition specific schema.
899 899  |AttributeSet|xs:anyType|AttributeSet contains the reported metadata attribute values for the child metadata attributes. This element is unqualified and un-typed so that it can refined by the metadata structure definition specific schema to validate that the reported metadata attributes conform to those prescribed by the metadata attribute definition. The content of this must be element only, and these elements must always represent a reported attribute. Since this can not be strictly enforced in XML Schema, additional steps have been added to make generic processing of this element simpler. When processing this element, any element found with the attribute isMetadataAttribute in this target namespace is assumed to be a reported metadata attribute and can be processed as such.
900 900  
901 -1. Mapping to Structure-Specific Schemas
902 -11. General
779 += Mapping to Structure-Specific Schemas =
903 903  
781 +== General ==
782 +
904 904  Data structure and metadata structure-specific schemas are each based on one single core construct found in their respective structure-specific namespaces;
905 905  
906 906  Data  - http:~/~/www.SDMX.org/resources/SDMXML/schemas/v2_1/data/structurespecific
... ... @@ -909,9 +909,7 @@
909 909  
910 910  For a metadata structure, only a single schema will be created for the entire structure definition. For data structures, many variations of the base schema are possible, each specific as to how the data is organised. This will be discussed in more details in the specific rules for the data structure schemas.
911 911  
912 -1.
913 -11.
914 -111. Basic Terminology
791 +=== Basic Terminology ===
915 915  
916 916  In the subsequent sections, the following namespace prefixes are used:
917 917  
... ... @@ -957,8 +957,7 @@
957 957  
958 958  **XML Attribute:** Refers to the definition of an XML attribute for a complex type (i.e. and xs:attribute element in a xs:complexType element). An attribute must define a name and type (name and type attributes) and may also specify a usage (use attribute).
959 959  
960 -1.
961 -11. Namespace Rules
837 +== Namespace Rules ==
962 962  
963 963  Each format specific schema will specify its namespace in the target namespace of the schema (the targetNamespace attribute of the schema). This document also assumes that the root namespace (that which is defined by the xmlns attribute) of the schema will be the same as the target namespace. Therefore any types or global elements referenced in these descriptions without a namespace prefix are assumed to be in the format specific namespace.
964 964  
... ... @@ -966,21 +966,17 @@
966 966  
967 967  For the purpose of the descriptions here, the default element form for the schema (as specified in the elementFormDefault attribute of the schema) is “qualified", and the default attribute form (as specified in the attributeFormDefault attribute of the schema) is "unqualified".
968 968  
969 -1.
970 -11. General Rules
845 +== General Rules ==
971 971  
972 972  The following section details the general rules which apply to all structure specific schema creation.
973 973  
974 -1.
975 -11.
976 -111. Component Name Determination
849 +=== Component Name Determination ===
977 977  
978 978  When required to create an XML element or attribute, the name for a component is always its identifier. However, the identifier may be inherited. Therefore, the general rules is as follows:
979 979  
980 -1. If the component defines an identifier, the element or attribute name is the value of that identifier
981 -1. Otherwise, the element or attribute name is the identifier of the concept from which it takes its semantic (Note that this is technically the component identifer).
982 -11.
983 -111. Representation Determination
853 +If the component defines an identifier, the element or attribute name is the value of that identifier
854 +Otherwise, the element or attribute name is the identifier of the concept from which it takes its semantic (Note that this is technically the component identifer).
855 +Representation Determination
984 984  
985 985  Every component has a representation associated with it, whether it is defined as a local representation in the component definition, or it is inherited from the concept from which the component takes it semantic (as defined in the concept identity of the component).
986 986  
... ... @@ -994,40 +994,27 @@
994 994  
995 995  A text format consists of a data type and an optional collection of facets. It is the combination of these which determine the exact nature of the component representation. An enumeration consists of a reference to an item scheme, for which an enumerated list of possible values can be created.
996 996  
997 -1.
998 -11.
999 -111. Simple / Primitive Type Determination
869 +=== Simple / Primitive Type Determination ===
1000 1000  
1001 1001  For any given representation, there exist rules for determining the simple or primitive type which should be used to validate the value. There are no specific requirements to how a simple type is named or if it is referenced or used as an anonymous type. This section simply serves to state the requirements of the type for a component based on its [[determined representation>>path:#_Representation_Determination:]].
1002 1002  
1003 1003  For example, a dimension may inherit its representation for a concept, and the data type of a representation data type may be a String. The simplest solution would be to use the xs:string primitive type. However, an implementer may have chosen to generate simple types for all concepts to avoid having to look up the concept core representation for very component. In this case, the type may be given a name based on the concept and be a simple derivation from the xs:string type that places no further restrictions. The result would be that the type that is actually used for the dimension, although named after the concept, is effectively the required xs:string. These rules are meant to allow such flexibility in how types are created. The only requirement is that the type meet the requirements stated here.
1004 1004  
1005 -1.
1006 -11.
1007 -111. Representation with Enumeration
875 +=== Representation with Enumeration ===
1008 1008  
1009 1009  A representation which defines an enumeration will result in a simple type that is a restriction of the common:IDType. The simple type will define enumerations for each item in the item scheme. 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:
1010 1010  
1011 1011  
1012 -<xs:simpleType name="ESTAT.CL_COUNTRY.1.0">
880 +> <xs:simpleType name="ESTAT.CL_COUNTRY.1.0">
881 +> <xs:restriction base="common:IDType">
882 +> <xs:enumeration value="BE">
883 +> <xs:annotation>
884 +> <xs:documentation xml:lang="en">Belgium</xs:documentation>
885 +> </xs:annotation>
886 +> </xs:enumeration>
1013 1013  
1014 -<xs:restriction base="common:IDType">
888 +=== Representation with Text Format ===
1015 1015  
1016 -<xs:enumeration value="BE">
1017 -
1018 -<xs:annotation>
1019 -
1020 -<xs:documentation xml:lang="en">Belgium</xs:documentation>
1021 -
1022 -</xs:annotation>
1023 -
1024 -</xs:enumeration>
1025 -
1026 -
1027 -1.
1028 -11.
1029 -111. Representation with Text Format
1030 -
1031 1031  A representation which defines a text format will result in a simple type or primitive type. The first step is to determine the base type from the text format data type:
1032 1032  
1033 1033  |**SDMX Data Type**|**XML Schema Data Type**
... ... @@ -1088,9 +1088,7 @@
1088 1088  
1089 1089  Any other facets are informational only, and will not affect the determined type.
1090 1090  
1091 -1.
1092 -11.
1093 -111. //Type Names//
950 +=== Type Names ===
1094 1094  
1095 1095  These rules will only dictate type names where absolutely necessary. In all other cases, it is the decision of the implementer as to how to name or use the type. It is also the implementer's requirement to ensure that any type name is properly unique within its scope. To assist in this, the following recommendations are offered for naming types such that they are unique.
1096 1096  
... ... @@ -1117,16 +1117,13 @@
1117 1117  
1118 1118  Only the constructs that will be detailed in the data and metadata structure-specific rules below are required to be in the specified target namespace of the structure-specific schema. So long as any other generated type conforms to the rules specified, it may exist in any namespace.
1119 1119  
1120 -1.
1121 -11. Data Structure Specific Schema
977 +== Data Structure Specific Schema ==
1122 1122  
1123 1123  Separate schemas will be created for the data structure depending on which dimension occurs at the observation level, and whether explicit measures are used in the case that the observation dimension is the measure dimension. The recommended target namespace of the data structured specific schema is: [Data Structure URN]:ObsLevelDim:[Observation Dimensions](:explicit)?. Note that the explicit trailer is only used when the measure dimension is used at the observation level and the explicit measure concepts are to be used.
1124 1124  
1125 1125  The rules for generating the data structure specific-schema are broken into sections based on the level within the structure (i.e. data set, group, series, observation). Each section will state the rules for each variation of the structure specific format.
1126 1126  
1127 -1.
1128 -11.
1129 -111. DataSetType
983 +=== DataSetType ===
1130 1130  
1131 1131  A complex type named DataSetType must be created. Its content model will be derived via restriction. If the dimension at the observation level is the time dimension (TIME_PERIOD) the base type of the restriction is dsd:TimeSeriesDataSetType. Otherwise, the base type of the restriction is dsd:DataSetType. The complex type content model will be as follows:
1132 1132  
... ... @@ -1140,8 +1140,9 @@
1140 1140  1. If the reporting year start day attribute is not declared in the data structure definition or if it is declared but does not declare an attribute relationship of None, an attribute named REPORTING_YEAR_START_DAY with a type of xs:gMonthDay and a usage of prohibited
1141 1141  1. An attribute for each attribute defined in the data structured definition that declares an attribute relationship of None. The XML attribute [[name>>path:#_Component_Name_Determination]] and [[type>>path:#_Simple_/_Primitive]] are defined according to the general rules defined in the previous section, and the usage is optional
1142 1142  11.
1143 -111. GroupType
1144 1144  
998 +=== GroupType ===
999 +
1145 1145  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:
1146 1146  
1147 1147  1. A sequence consisting of:
... ... @@ -1168,9 +1168,9 @@
1168 1168  1. If the reporting year start day attribute is not declared in the data structure definition or if it is declared but does not declare an attribute relationship with the group and does not specify the group as an attachment group, an attribute named REPORTING_YEAR_START_DAY with a type of xs:gMonthDay and a usage of prohibited
1169 1169  1. An attribute for each attribute 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>>path:#_Component_Name_Determination]] and [[type>>path:#_Simple_/_Primitive]] are defined according to the general rules defined in the previous section, and the usage is optional
1170 1170  1. An attribute named type with a type of Group.ID, usage of optional, and a fixed value of the identifier of the group
1171 -11.
1172 -111. SeriesType
1173 1173  
1027 +=== SeriesType ===
1028 +
1174 1174  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. If the dimension at the observation level is the time dimension (TIME_PERIOD) the base type of the restriction is dsd:TimeSeriesType. Otherwise, the base type of the restriction is dsd:SeriesType. The complex type content model will be as follows:
1175 1175  
1176 1176  1. A sequence consisting of:
... ... @@ -1179,9 +1179,9 @@
1179 1179  1. An attribute for each dimension defined by the data structure definition, except for the dimension at the observation level. The XML attribute [[name>>path:#_Component_Name_Determination]] and [[type>>path:#_Simple_/_Primitive]] are defined according to the general rules defined in the previous section, and the usage is required
1180 1180  1. If the reporting year start day attribute is not declared in the data structure definition or if it is declared and declares an attribute relationship of None, or with a group, or the dimension at the observation level, or specifies a group as an attachment group, an attribute named REPORTING_YEAR_START_DAY with a type of xs:gMonthDay and a usage of prohibited
1181 1181  1. An attribute for each attribute defined 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>>path:#_Component_Name_Determination]] and [[type>>path:#_Simple_/_Primitive]] are defined according to the general rules defined in the previous section, and the usage is optional
1182 -11.
1183 -111. ObsType
1184 1184  
1038 +=== ObsType ===
1039 +
1185 1185  A complex type name ObsType must be created. Its content model will be derived via restriction. If the dimension at the observation level is the time dimension (TIME_PERIOD) the base type of the restriction is dsd:TimeSeriesObsType. Otherwise, the base type of the restriction is dsd:ObsType. If the explicit measure option is used, this complex type must be abstract. The complex type content model will be as follows:
1186 1186  
1187 1187  1. A sequence consisting of:
... ... @@ -1204,9 +1204,7 @@
1204 1204  
1205 1205  The rules for generating the data structure specific-schema are broken into sections based on the level within the structure (i.e. metadata set, metadata targets, reports, metadata attributes). These rules will recommend names for generated types, and will refer back to these names throughout the description. These names are simply recommendations that should produce a unique name, but there is no requirement to use them. When a name is required, it will be made clear this is the case.
1206 1206  
1207 -1.
1208 -11.
1209 -111. MetadataSetType
1062 +=== MetadataSetType ===
1210 1210  
1211 1211  A complex type that must be named MetadataSetType must be created. Its content model will be derived via restriction of the base type, msd:MetadataSetType. The complex type content model will be as follows:
1212 1212  
... ... @@ -1258,9 +1258,10 @@
1258 1258  111. A local element named Ref, with a form of unqualified and a the type defined above as is [metadata target].[target object].Ref
1259 1259  111. A local element named URN, with a form of unqualified, a minimum occurrence of 0, and the type defined above as [item scheme agency].[item scheme identifier].[item scheme version].URN
1260 1260  11. A local element named URN, with a form of unqualified, and the type defined above as [item scheme agency].[item scheme identifier].[item scheme version].URN
1261 -111.
1262 -1111. Identifiable Object Target Type Determination
1263 1263  
1115 +
1116 +==== Identifiable Object Target Type Determination ====
1117 +
1264 1264  An identifiable object target is meant to reference an SDMX identifiable object. In the metadata structure specific schema, the complex type which defines the reference is restricted according to the local representation and object type of the identifiable object target. If the identifiable object target does not provide an enumeration in its local representation, then the complex type for the target object is the specific reference type from the common namespace, based on the object type defined by the target object. For example, if the object type is DataProivder, the type will be common:DataProviderReferenceType. The general rule for the name of this type is common:[object type]ReferenceType.
1265 1265  
1266 1266  If the target object defines an enumeration in its local representation, then the declared object type must be for the items contained the enumeration's referenced item scheme. If this is not true, the reference type as defined above is the type for the target object.
... ... @@ -1277,9 +1277,9 @@
1277 1277  1. An attribute named maintinableParentID with a type of common:IDType, a use of required, and a fixed value of the identifier of the item scheme referenced from the enumeration
1278 1278  1. An attribute named maintainableParentVersion with a type of common:VersionType, a use of optional, and a fixed value of the version of the item scheme referenced from the enumeration
1279 1279  1. An attribute named id, with a use of option, and the type defined above as [item scheme agency].[item scheme identifier].[item scheme version].ID.
1280 -11.
1281 -111. ReportType
1282 1282  
1135 +=== ReportType ===
1136 +
1283 1283  A simple type with a recommend name of Report.ID must be created. This must restrict the common:IDType. For each report structure defined by the metadata structure definition, an enumeration will be created within the restriction with a value of the report structure identifier.
1284 1284  
1285 1285  An abstract complex type with a recommended name of ReportType must be created. Its content model will be derived via restriction of the msd:ReportType. The complex type content model will be as follows:
... ... @@ -1327,17 +1327,16 @@
1327 1327  1.
1328 1328  11. A local element named AttributeSet with a form of unqualified and a type as defined according to the rules defined in Attribute Set Complex Type Creation
1329 1329  1. An attribute named id with the type previously defined as Report.ID, a use of optional, and a fixed value of [report structure identifier]
1330 -11.
1331 -111.
1332 -1111. Attribute Set Complex Type Creation
1333 1333  
1185 +=== Attribute Set Complex Type Creation ===
1186 +
1334 1334  An attribute set is created for a report structure or a metadata attribute which contains child metadata attributes. This type is a complex type with a recommend name of [report structure identifier].[nested metadata attribute identifier].AttributeSet, where the metadata attribute section only applies to attribute sets created for metadata attributes and is assumed to consist of the full hierarchy of the metadata attribute's definition. This complex type must consists of:
1335 1335  
1336 1336  1. A sequence consisting of:
1337 1337  11. A local element for each metadata attribute defined as a direct child of the object for which the attribute set is being created. The recommended name of this element is [metadata attribute identifier] and it has a form of unqualified. If the metadata attribute defines a minOccurs and maxOccurs, these values are translated to this element. The type of this element is the type previously created as [report structure identifier].[nested metadata attribute identifier].
1338 1338  
1339 -1. Special data functions
1340 -11. Updates
1192 += Special data functions =
1193 +== Updates ==
1341 1341  
1342 1342  Both the generic and the structure-specific data messages allow for incremental updating of data. This purpose is noted in the action for the data set, which is either inherited from the header of the data message or explicitly stated at the data set level.
1343 1343