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

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

Summary

Details

Page properties
Content
... ... @@ -531,37 +531,34 @@
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 are informational only and will not affect the determined type.
534 +Any other [[facets>>doc:sdmx:Glossary.Facet.WebHome]] 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, 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.
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.
539 539  
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:
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:
541 541  
542 -xml
543 - <xs:simpleType name="DecimalOrNotApplicableType">
544 - <xs:union memberTypes="xs:decimal common:NotApplicableType"/>
545 - </xs:simpleType>
542 +> <xs:simpleType name="DecimalOrNotApplicableType">
543 +> <xs:union memberTypes="xs:decimal common:NotApplicableType"/>
544 +> </xs:simpleType>
546 546  
547 547  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.
548 548  
549 549  Option 1: Augmenting the enumeration with the special value
550 550  
551 -xml
552 - <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE">
553 - <xs:union memberTypes="CL\_SUBINDICATOR common:NotApplicableType"/>
554 - </xs:simpleType>
550 +> <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE">
551 +> <xs:union memberTypes="CL\_SUBINDICATOR common:NotApplicableType"/>
552 +> </xs:simpleType>
555 555  
556 556  Option 2: Extending the enumeration with the special value
557 557  
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>
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>
565 565  
566 566  For convenience the common schema provides the union types for the following data types.
567 567  
... ... @@ -598,38 +598,35 @@
598 598  
599 599  === 3.3.8 Representation for Intentionally Missing Measure and Attribute Values ===
600 600  
601 -For intentionally missing measure and attribute values, even if mandatory, the following special values can be used:
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:
602 602  
603 603  * NaN for all numeric types (float, double)
604 604  * #N/A for all other types
605 605  
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.
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.
607 607  
608 608  This union is as shown in the following example:
609 609  
610 -xml
611 - <xs:simpleType name="DecimalOrMissingType">
612 - <xs:union memberTypes="xs:decimal common:MissingType"/>
613 - </xs:simpleType>
607 +> <xs:simpleType name="DecimalOrMissingType">
608 +> <xs:union memberTypes="xs:decimal common:MissingType"/>
609 +> </xs:simpleType>
614 614  
615 615  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.
616 616  
617 617  Option 1: Augmenting the enumeration with the special value
618 618  
619 -xml
620 - <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE">
621 - <xs:union memberTypes="CL\_SUBINDICATOR common:MissingType"/>
622 - </xs:simpleType>
615 + > <xs:simpleType name="CL\_SUBINDICATOR\_OR\_NOT\_APPLICABLE">
616 + > <xs:union memberTypes="CL\_SUBINDICATOR common:MissingType"/>
617 + > </xs:simpleType>
623 623  
624 624  Option 2: Extending the enumeration with the special value
625 625  
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>
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>
633 633  
634 634  For convenience the common schema provides the union types for the following data types.
635 635  
... ... @@ -666,40 +666,40 @@
666 666  
667 667  === 3.3.9 Representation with Complex Text Format ===
668 668  
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:
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:
670 670  
671 -* representation max occurs is greater than 1
665 +* [[representation>>doc:sdmx:Glossary.Representation.WebHome]] max occurs is greater than 1
672 672  * text format data type is XHMTL
673 673  * text format is multi-lingual
674 674  
675 675  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:
676 676  
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
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
685 685  
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.
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.
687 687  
688 688  === 3.3.10 Type Names ===
689 689  
690 690  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.
691 691  
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]
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]
697 697  
698 698  === 3.3.11 Type Reuse ===
699 699  
700 700  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.
701 701  
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:
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:
703 703  
704 704   Does the component define a local type?
705 705   Yes: Is that type enumerated?
... ... @@ -711,24 +711,24 @@
711 711  
712 712  == 3.4 Data-Structure-Specific Schema ==
713 713  
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].
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].
715 715  
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.
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.
717 717  
718 718  === 3.4.1 DataSetType ===
719 719  
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:
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:
721 721  
722 722  ~1. A sequence consisting of:
723 723  
724 -* i. An element reference to common:Annotations, with a minimum occurrence of 0
718 +* i. An element reference to common:[[Annotations>>doc:sdmx:Glossary.Annotation.WebHome]], with a minimum occurrence of 0
725 725  * ii  A local element named DataProvider with the type common:DataProviderReferenceType, a form of unqualified and a minimum occurrence of 0
726 726  * iii  A choice with a minimum occurrence of 0 and a maximum occurrence of unbounded consisting of:
727 727  ** a.  A local element named Atts with a form of unqualified and a type of AttsType (as defined in the AttsType section which follows)
728 728  ** 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.
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
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
732 732  
733 733  === 3.4.2 GroupType ===
734 734