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

From version 3.11
edited by Helena
on 2025/07/02 16:11
Change comment: There is no comment for this version
To version 3.6
edited by Helena
on 2025/07/02 16:00
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -531,34 +531,37 @@
531 531  |(% style="width:267px" %)decimals^^1^^|(% style="width:729px" %)xs:fractionDigits
532 532  |(% style="width:267px" %)pattern|(% style="width:729px" %)xs:pattern
533 533  
534 -Any other [[facets>>doc:sdmx:Glossary.Facet.WebHome]] are informational only and will not affect the determined type.
534 +Any other facets are informational only and will not affect the determined type.
535 535  
536 536  === 3.3.7 Representation for Not Applicable Dimensions ===
537 537  
538 -Not applicable [[dimensions>>doc:sdmx:Glossary.Dimension.WebHome]], i.e., when reported [[measures>>doc:sdmx:Glossary.Measure.WebHome]] or [[attributes>>doc:sdmx:Glossary.Attribute.WebHome]] are not attached to those [[dimensions>>doc:sdmx:Glossary.Dimension.WebHome]], take as value the tilde ‘’ character. This is required for [[datasets>>doc:sdmx:Glossary.Data set.WebHome]] defined by a [[DSD>>doc:sdmx:Glossary.Data structure definition.WebHome]] that has the ‘evolving structure’ property set to true and that includes data from [[dataflows>>doc:sdmx:Glossary.Dataflow.WebHome]], which only use a subset of [[dimensions>>doc:sdmx:Glossary.Dimension.WebHome]] as defined by a [[dimension>>doc:sdmx:Glossary.Dimension.WebHome]] (% style="color:#e74c3c" %)constraint(%%). This is also required for data-related higher-(% style="color:#e74c3c" %)level(%%) (i.e., attached to [[dataflow>>doc:sdmx:Glossary.Dataflow.WebHome]] or partial list of [[Dimensions>>doc:sdmx:Glossary.Dimension.WebHome]]) [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] [[attributes>>doc:sdmx:Glossary.Attribute.WebHome]] that don’t have a fixed pre-defined attachment.
538 +Not applicable dimensions, i.e., when reported measures or attributes are not attached to those dimensions, take as value the tilde ‘’ character. This is required for datasets defined by a DSD that has the ‘evolving structure’ property set to true and that includes data from dataflows, which only use a subset of dimensions as defined by a dimension constraint. This is also required for data-related higher-level (i.e., attached to dataflow or partial list of Dimensions) reference metadata attributes that don’t have a fixed pre-defined attachment.
539 539  
540 -To support a specific type and allow for a not applicable [[dimension>>doc:sdmx:Glossary.Dimension.WebHome]] 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:
540 +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:
541 541  
542 -> <xs:simpleType name="DecimalOrNotApplicableType">
543 -> <xs:union memberTypes="xs:decimal common:NotApplicableType"/>
544 -> </xs:simpleType>
542 +xml
543 + <xs:simpleType name="DecimalOrNotApplicableType">
544 + <xs:union memberTypes="xs:decimal common:NotApplicableType"/>
545 + </xs:simpleType>
545 545  
546 546  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.
547 547  
548 548  Option 1: Augmenting the enumeration with the special value
549 549  
550 -> <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE">
551 -> <xs:union memberTypes="CL\_SUBINDICATOR common:NotApplicableType"/>
552 -> </xs:simpleType>
551 +xml
552 + <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE">
553 + <xs:union memberTypes="CL\_SUBINDICATOR common:NotApplicableType"/>
554 + </xs:simpleType>
553 553  
554 554  Option 2: Extending the enumeration with the special value
555 555  
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>
558 +xml
559 + <xs:simpleType name="CL\_ SUBINDICATOR ">
560 + <xs:restriction base="xs:string">
561 + <xs:enumeration value="A"/>
562 + <xs:enumeration value=""/>
563 + <xs:restriction>
564 + </xs:simpleType>
562 562  
563 563  For convenience the common schema provides the union types for the following data types.
564 564  
... ... @@ -595,35 +595,38 @@
595 595  
596 596  === 3.3.8 Representation for Intentionally Missing Measure and Attribute Values ===
597 597  
598 -For intentionally missing [[measure>>doc:sdmx:Glossary.Measure.WebHome]] and [[attribute>>doc:sdmx:Glossary.Attribute.WebHome]] values, even if mandatory, the following special values can be used:
601 +For intentionally missing measure and attribute values, even if mandatory, the following special values can be used:
599 599  
600 600  * NaN for all numeric types (float, double)
601 601  * #N/A for all other types
602 602  
603 -To support a specific type and allow for an intentionally missing [[measure>>doc:sdmx:Glossary.Measure.WebHome]] or [[attribute>>doc:sdmx:Glossary.Attribute.WebHome]] value, the structure-specific schema must union the type with the common:MissingType, which enumerates the #N/A string. Note that XML natively already supports NaN for float and double values.
606 +To support a specific type and allow for an intentionally missing measure or attribute value, the structure-specific schema must union the type with the common:MissingType, which enumerates the #N/A string. Note that XML natively already supports NaN for float and double values.
604 604  
605 605  This union is as shown in the following example:
606 606  
607 -> <xs:simpleType name="DecimalOrMissingType">
608 -> <xs:union memberTypes="xs:decimal common:MissingType"/>
609 -> </xs:simpleType>
610 +xml
611 + <xs:simpleType name="DecimalOrMissingType">
612 + <xs:union memberTypes="xs:decimal common:MissingType"/>
613 + </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 - > <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE">
616 - > <xs:union memberTypes="CL\_SUBINDICATOR common:MissingType"/>
617 - > </xs:simpleType>
619 +xml
620 + <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE">
621 + <xs:union memberTypes="CL\_SUBINDICATOR common:MissingType"/>
622 + </xs:simpleType>
618 618  
619 619  Option 2: Extending the enumeration with the special value
620 620  
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>
626 +xml
627 + <xs:simpleType name="CL\_ SUBINDICATOR ">
628 + <xs:restriction base="xs:string">
629 + <xs:enumeration value="A"/>
630 + <xs:enumeration value="#N/A"/>
631 + <xs:restriction>
632 + </xs:simpleType>
627 627  
628 628  For convenience the common schema provides the union types for the following data types.
629 629  
... ... @@ -660,40 +660,40 @@
660 660  
661 661  === 3.3.9 Representation with Complex Text Format ===
662 662  
663 -A [[representation>>doc:sdmx:Glossary.Representation.WebHome]] which defines a complex text format will result in a complex type. The [[representation>>doc:sdmx:Glossary.Representation.WebHome]] is complex if any of the following conditions are true:
669 +A representation which defines a complex text format will result in a complex type. The representation is complex if any of the following conditions are true:
664 664  
665 -* [[representation>>doc:sdmx:Glossary.Representation.WebHome]] max occurs is greater than 1
671 +* representation max occurs is greater than 1
666 666  * text format data type is XHMTL
667 667  * text format is multi-lingual
668 668  
669 669  The resulting complex type will be derived via restriction of the common:ValueType. In simple cases, there are pre-defined types that can be used:
670 670  
671 -* if the text format data type is XHTML, common:StructuredTextValueType can be used; note that this type cannot be further restricted – all other [[facets>>doc:sdmx:Glossary.Facet.WebHome]] are ignored
672 -* if the text format is multi-lingual, common:TextValueType can be used; note that this type cannot be further restricted – all other [[facets>>doc:sdmx:Glossary.Facet.WebHome]] are ignored
673 -* if the text format has no additional [[facets>>doc:sdmx:Glossary.Facet.WebHome]] and the data type is:
674 -** 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
677 +* 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
678 +* 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
679 +* if the text format has no additional facets and the data type is:
680 + + Boolean, common:BooleanValueType can be used
681 + + String, common:StringValueType can be used
682 + + Integer, common:IntValueType can be used
683 + + Double, common:DoubleValueType can be used
684 + + ObservationalTimePeriod, common:ObservationalTimePeriodValueType can be used
679 679  
680 -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>>doc:sdmx:Glossary.Facet.WebHome]] as described in the previous section.
686 +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.
681 681  
682 682  === 3.3.10 Type Names ===
683 683  
684 684  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.
685 685  
686 -* It the type is an enumeration from an [[item scheme>>doc:sdmx:Glossary.Item scheme.WebHome]], the recommended name is ~[[[Item Scheme>>doc:sdmx:Glossary.Item scheme.WebHome]] Class].[Maintenance Agency].~[[[Item Scheme>>doc:sdmx:Glossary.Item scheme.WebHome]] ID].~[[[Item Scheme>>doc:sdmx:Glossary.Item scheme.WebHome]] Version]
687 -* If the type is based on a text format of a (% style="color:#e74c3c" %)concept(%%) core [[representation>>doc:sdmx:Glossary.Representation.WebHome]], the recommended name is (% style="color:#e74c3c" %)Concept(%%).[Maintenance Agency].[(% style="color:#e74c3c" %)Concept(%%) Scheme ID].[(% style="color:#e74c3c" %)Concept(%%) Scheme Version].[(% style="color:#e74c3c" %)Concept(%%) ID]
688 -* If the type is based on a text format of a [[component>>doc:sdmx:Glossary.Component.WebHome]] local [[representation>>doc:sdmx:Glossary.Representation.WebHome]], and;
689 -** The [[component>>doc:sdmx:Glossary.Component.WebHome]] id is required to be unique for all [[components>>doc:sdmx:Glossary.Component.WebHome]] within the scope of the structure which defines it (e.g. a [[dimension>>doc:sdmx:Glossary.Dimension.WebHome]]), the recommended name is ~[[[Component>>doc:sdmx:Glossary.Component.WebHome]] ID]
690 -** The [[component>>doc:sdmx:Glossary.Component.WebHome]] id is only required to be unique within the [[component>>doc:sdmx:Glossary.Component.WebHome]] list and which defines it (e.g. a metadata attribute), the recommend name is [Component List ID].[Parent Component ID]\*.[Component ID]
692 +* 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]
693 +* 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]
694 +* If the type is based on a text format of a component local representation, and;
695 + + 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]
696 + + 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]
691 691  
692 692  === 3.3.11 Type Reuse ===
693 693  
694 694  It is possible that organisations that manage a large number of structure-specific schemas my wish to take advantage of the reuse of previously defined type in order to simply the structure-specific schema creation and lessen the number of schema elements which are created. The structure-specific formats are designed in such a way that this would be allowed without any adverse affects.
695 695  
696 -For example, an organisation my create predefined types for all of [[codelists>>doc:sdmx:Glossary.Code list.WebHome]] and [[concept schemes>>doc:sdmx:Glossary.Concept scheme.WebHome]] which their structures utilize. These could be contained in a common schema with any namespace deemed appropriate. This would allow the structure-specific schemas generation process to recognize the reused [[components>>doc:sdmx:Glossary.Component.WebHome]] and not be concerned with regenerating types. The logical flow for setting the [[representation>>doc:sdmx:Glossary.Representation.WebHome]] of a [[component>>doc:sdmx:Glossary.Component.WebHome]] might be as follows:
702 +For example, an organisation my create predefined types for all of codelists and concept schemes which their structures utilize. These could be contained in a common schema with any namespace deemed appropriate. This would allow the structure-specific schemas generation process to recognize the reused components and not be concerned with regenerating types. The logical flow for setting the representation of a component might be as follows:
697 697  
698 698   Does the component define a local type?
699 699   Yes: Is that type enumerated?
... ... @@ -705,24 +705,24 @@
705 705  
706 706  == 3.4 Data-Structure-Specific Schema ==
707 707  
708 -Separate schemas will be created for the data structure depending on which [[dimension>>doc:sdmx:Glossary.Dimension.WebHome]] occurs at the observation (% style="color:#e74c3c" %)level(%%). The recommended target namespace of the data structured specific schema is: [Data Structure URN]:ObsLevelDim:[Observation Dimensions].
714 +Separate schemas will be created for the data structure depending on which dimension occurs at the observation level. The recommended target namespace of the data structured specific schema is: [Data Structure URN]:ObsLevelDim:[Observation Dimensions].
709 709  
710 -The rules for generating the data-structure-specific-schema are broken into sections based on the (% style="color:#e74c3c" %)level(%%) within the structure (i.e. [[data set>>doc:sdmx:Glossary.Data set.WebHome]], group, series, [[attributes>>doc:sdmx:Glossary.Attribute.WebHome]], observation). Each section will state the rules for each variation of the structure-specific format.
716 +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, attributes, observation). Each section will state the rules for each variation of the structure-specific format.
711 711  
712 712  === 3.4.1 DataSetType ===
713 713  
714 -A complex type named DataSetType must be created. Its content model will be derived via restriction. The base type of the restriction is [[dsd>>doc:sdmx:Glossary.Data structure definition.WebHome]]:DataSetType. The complex type content model will be as follows:
720 +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:
715 715  
716 716  ~1. A sequence consisting of:
717 717  
718 -* i. An element reference to common:[[Annotations>>doc:sdmx:Glossary.Annotation.WebHome]], with a minimum occurrence of 0
724 +* i. An element reference to common:Annotations, with a minimum occurrence of 0
719 719  * ii  A local element named DataProvider with the type common:DataProviderReferenceType, a form of unqualified and a minimum occurrence of 0
720 720  * iii  A choice with a minimum occurrence of 0 and a maximum occurrence of unbounded consisting of:
721 721  ** a.  A local element named Atts with a form of unqualified and a type of AttsType (as defined in the AttsType section which follows)
722 722  ** 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.
723 -** c. If the [[dimension>>doc:sdmx:Glossary.Dimension.WebHome]] at the observation (% style="color:#e74c3c" %)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 -** d. If the [[dimension>>doc:sdmx:Glossary.Dimension.WebHome]] at the observation (% style="color:#e74c3c" %)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 -* iv. If any metadata [[attribute>>doc:sdmx:Glossary.Attribute.WebHome]] usages defined in the data structure that declares an [[attribute relationship>>doc:sdmx:Glossary.Attribute relationship.WebHome]] of [[dataflow>>doc:sdmx:Glossary.Dataflow.WebHome]], a local element named Metadata with the type metadata:MetadataSetType a form of unqualified, and a minimum occurences of 0
729 +** 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)
730 +** 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)
731 +* 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
726 726  
727 727  === 3.4.2 GroupType ===
728 728