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 9.1
edited by Helena
on 2025/06/24 15:17
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -8,7 +8,7 @@
8 8  
9 9  The various data messages which existed in the standard have been harmonised into two general formats; generic and structured data. The generic data is much like it has been previously, only slightly modified to conform with the harmonised view on data. The structured data combined the principles of the previous versions compact and cross sectional formats into one more generalised format.
10 10  
11 -The major shift from the previous version is now that all data can be exchanged as either an un-grouped collection of observations, each specifying a full key or it can be exchanged as data grouped into series with any single dimension placed at the observation level. This in effect, combined the abilities of the time series and cross sectional formats in the a single data format. This format also allows for multiple measure to be expressed when the observation dimension is the measure dimension defined in the data structured. The key differences from the previous versions is that this all is possible in a single data structure definition specific format, as well as being possible in the generic format as well. The goal was to make the structures as homogenous as possible.
11 +The major shift from the previous version is now that all data can be exchanged as either an un-grouped collection oData structure and metadata structure-specific schemas are each based on one single core construct found in their respective structure-specific namespaces;f observations, each specifying a full key or it can be exchanged as data grouped into series with any single dimension placed at the observation level. This in effect, combined the abilities of the time series and cross sectional formats in the a single data format. This format also allows for multiple measure to be expressed when the observation dimension is the measure dimension defined in the data structured. The key differences from the previous versions is that this all is possible in a single data structure definition specific format, as well as being possible in the generic format as well. The goal was to make the structures as homogenous as possible.
12 12  
13 13  Another shift from the previous version in the manner in which the base data structure specific format is defined. In previous versions there was not structure defined, so one had to understand all of the requirements and read the specification in order to understand what could be expected in any structure specific format. In this version, that issue has been addressed. The base structures now impose a strict format on the data structure specific schemas. This is achieved much like the referencing structure in the common namespace through the use of unqualified elements. By the elements not existing in a namespace, the structure specific schemas can place the necessary restrictions of them while still being forced to adhere to prescribed structure. This means that not only are the structures able to perform the validation that is required, but that the messages will be much simpler to process as the format will always use the same element names.
14 14  
... ... @@ -26,9 +26,10 @@
26 26  
27 27  Referenced Namespaces:
28 28  
29 -|**Namespace**|**Prefix**
30 -|http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|com
31 -|http:~/~/www.w3.org/2001/XMLSchema|xs
29 +(% style="width:610.294px" %)
30 +|(% style="width:487px" %)**Namespace**|(% style="width:120px" %)**Prefix**
31 +|(% style="width:487px" %)http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|(% style="width:120px" %)com
32 +|(% style="width:487px" %)http:~/~/www.w3.org/2001/XMLSchema|(% style="width:120px" %)xs
32 32  
33 33  Contents:
34 34  13 Complex Types
... ... @@ -49,28 +49,28 @@
49 49  com:Annotations?, DataProvider?, Attributes?, Group*, (Series+ | Obs+)?
50 50  
51 51  Attribute Documentation:
53 +(% style="width:1011.29px" %)
54 +|**Name**|**Type**|(% style="width:597px" %)**Documentation**
55 +|structureRef|xs:IDREF|(% style="width:597px" %)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).
56 +|setID|com:IDType|(% style="width:597px" %)The setID provides an identification of the data or metadata set.
57 +|action|com:ActionType|(% style="width:597px" %)The action attribute indicates whether the file is appending, replacing, or deleting.
58 +|reportingBeginDate|com: BasicTimePeriodType|(% style="width:597px" %)The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
59 +|reportingEndDate|com: BasicTimePeriodType|(% style="width:597px" %)The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
60 +|validFromDate|xs:dateTime|(% style="width:597px" %)The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
61 +|validToDate|xs:dateTime|(% style="width:597px" %)The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
62 +|publicationYear|xs:gYear|(% style="width:597px" %)The publicationYear holds the ISO 8601 four-digit year.
63 +|publicationPeriod|com: ObservationalTimePeriodType|(% style="width:597px" %)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).
52 52  
53 -|**Name**|**Type**|**Documentation**
54 -|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).
55 -|setID|com:IDType|The setID provides an identification of the data or metadata set.
56 -|action|com:ActionType|The action attribute indicates whether the file is appending, replacing, or deleting.
57 -|reportingBeginDate|com: BasicTimePeriodType|The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
58 -|reportingEndDate|com: BasicTimePeriodType|The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
59 -|validFromDate|xs:dateTime|The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
60 -|validToDate|xs:dateTime|The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
61 -|publicationYear|xs:gYear|The publicationYear holds the ISO 8601 four-digit year.
62 -|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).
63 -
64 64  Element Documentation:
66 +(% style="width:1016.29px" %)
67 +|**Name**|**Type**|(% style="width:642px" %)**Documentation**
68 +|com:Annotations|com:AnnotationsType|(% style="width:642px" %)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.
69 +|DataProvider|com: DataProviderReferenceType|(% style="width:642px" %)DataProvider contains a reference to the provider for the data set.
70 +|Attributes|ValuesType|(% style="width:642px" %)Attributes contains the collection of attribute values for attributes defined in the data structure definition which do not have an attribute relationship with any other data structure definition components.
71 +|Group|GroupType|(% style="width:642px" %)Group contains a references to a defined group in the data structure definition along with its key (if necessary) and values for the attributes which are associated with the group. An attribute is associated to a group by either an explicit group relationship or by a group attachment when the attribute has a relationship with a dimension which is a member of this group.
72 +|Series|SeriesType|(% style="width:642px" %)Series contains a collection of observations that share a common key (set of dimension values). The key of a series is every dimension defined in the data structure definition, save the dimension which is declared in the structure specification to be at the observation level. In addition to the key and observations, the series contains values for attributes which have a relationship with any dimension that is part of the series key, so long as the attribute does not specify an attachment group or also has a relationship with the dimension declared to be at the observation level.
73 +|Obs|ObsOnlyType|(% style="width:642px" %)Obs is an un-grouped observation. This observation has a key which is a set of values for all dimensions declared in the data structure definition. In addition to the key, the value of the observation can be provided along with values for all attributes which have an association with the primary measure or any dimension (so long as it does not specify a group attachment).
65 65  
66 -|**Name**|**Type**|**Documentation**
67 -|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.
68 -|DataProvider|com: DataProviderReferenc eType|DataProvider contains a reference to the provider for the data set.
69 -|Attributes|ValuesType|Attributes contains the collection of attribute values for attributes defined in the data structure definition which do not have an attribute relationship with any other data structure definition components.
70 -|Group|GroupType|Group contains a references to a defined group in the data structure definition along with its key (if necessary) and values for the attributes which are associated with the group. An attribute is associated to a group by either an explicit group relationship or by a group attachment when the attribute has a relationship with a dimension which is a member of this group.
71 -|Series|SeriesType|Series contains a collection of observations that share a common key (set of dimension values). The key of a series is every dimension defined in the data structure definition, save the dimension which is declared in the structure specification to be at the observation level. In addition to the key and observations, the series contains values for attributes which have a relationship with any dimension that is part of the series key, so long as the attribute does not specify an attachment group or also has a relationship with the dimension declared to be at the observation level.
72 -|Obs|ObsOnlyType|Obs is an un-grouped observation. This observation has a key which is a set of values for all dimensions declared in the data structure definition. In addition to the key, the value of the observation can be provided along with values for all attributes which have an association with the primary measure or any dimension (so long as it does not specify a group attachment).
73 -
74 74  **GroupType: **GroupType 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.
75 75  
76 76  Derivation:
... ... @@ -84,21 +84,20 @@
84 84  com:Annotations?, GroupKey?, Attributes
85 85  
86 86  Attribute Documentation:
88 +(% style="width:1010.29px" %)
89 +|**Name**|**Type**|(% style="width:709px" %)**Documentation**
90 +|type|com:IDType|(% style="width:709px" %)The type attribute holds the identifier assigned to the group in the data structure definition for which attribute values are being provided.
87 87  
88 -|**Name**|**Type**|**Documentation**
89 -|type|com:IDType|The type attribute holds the identifier assigned to the group in the data structure definition for which attribute values are being provided.
90 -
91 91  Element Documentation:
93 +(% style="width:1014.29px" %)
94 +|**Name**|**Type**|(% style="width:704px" %)**Documentation**
95 +|com:Annotations|com:AnnotationsType|(% style="width:704px" %)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.
96 +|GroupKey|ValuesType|(% style="width:704px" %)GroupKey contains the values for each dimension defined as being a member of the referenced group in the data structure definition. A value must be provided for every group dimension. This is optional, and not used if the group is defined as an association to an attachment constraint rather than a subset of the data structure definition dimensions.
97 +|Attributes|ValuesType|(% style="width:704px" %)Attributes contains the set of attribute values which are reported for group. The attribute values provided here apply to all data matching the partial key defined by the group key or the key sets of the associated attachment constraint.
92 92  
93 -|**Name**|**Type**|**Documentation**
94 -|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.
95 -|GroupKey|ValuesType|GroupKey contains the values for each dimension defined as being a member of the referenced group in the data structure definition. A value must be provided for every group dimension. This is optional, and not used if the group is defined as an association to an attachment constraint rather than a subset of the data structure definition dimensions.
96 -|Attributes|ValuesType|Attributes contains the set of attribute values which are reported for group. The attribute values provided here apply to all data matching the partial key defined by the group key or the key sets of the associated attachment constraint.
97 -
98 98  **SeriesType: **SeriesType 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.
99 99  
100 100  Derivation:
101 -
102 102  * //com:AnnotableType// (extension) 
103 103  ** SeriesType
104 104  
... ... @@ -106,16 +106,16 @@
106 106  com:Annotations?, SeriesKey, Attributes?, Obs*
107 107  
108 108  Element Documentation:
109 -|**Name**|**Type**|**Documentation**
110 -|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.
111 -|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.
112 -|Attributes|ValuesType|Attributes contains the values for attributes which are associated with the dimensions which make up the series key, so long as the attributes do not also specify an attachment group or have a relationship with the observation dimension.
113 -|Obs|ObsType|Obs contains an observation which shares the dimensionality of the series key. These observations are disambiguated from one another within this series by a single dimension value provided for each dimension. The dimension which provides this observation key is declared in the structure specification for the data set, which is provided in the header of the data message.
109 +(% style="width:999.294px" %)
110 +|**Name**|**Type**|(% style="width:689px" %)**Documentation**
111 +|com:Annotations|com:AnnotationsType|(% style="width:689px" %)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.
112 +|SeriesKey|ValuesType|(% style="width:689px" %)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.
113 +|Attributes|ValuesType|(% style="width:689px" %)Attributes contains the values for attributes which are associated with the dimensions which make up the series key, so long as the attributes do not also specify an attachment group or have a relationship with the observation dimension.
114 +|Obs|ObsType|(% style="width:689px" %)Obs contains an observation which shares the dimensionality of the series key. These observations are disambiguated from one another within this series by a single dimension value provided for each dimension. The dimension which provides this observation key is declared in the structure specification for the data set, which is provided in the header of the data message.
114 114  
115 115  **ObsOnlyType: **ObsOnlyType defines the structure for an un-grouped observation. Unlike a group observation, an un-grouped must provided a full set of values for every dimension declared in the data structure definition. The observation can contain an observed value and/or a collection of attribute values.
116 116  
117 117  Derivation:
118 -
119 119  * //com:AnnotableType// (extension) 
120 120  ** ObsOnlyType
121 121  
... ... @@ -123,16 +123,16 @@
123 123  com:Annotations?, ObsKey, ObsValue?, Attributes?
124 124  
125 125  Element Documentation:
126 -|**Name**|**Type**|**Documentation**
127 -|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.
128 -|ObsKey|ValuesType|ObsKey contains the values for every dimension defined in the data structure definition. A value must be provided for each dimension. This key serves to disambiguate the un-grouped observation within the data set.
129 -|ObsValue|ObsValueType|ObsValue type contains the value for the observation.
130 -|Attributes|ValuesType|Attributes contains the set of values reported for the attributes which have an association with the primary measure or any dimension in the data structure definition (so long as an attachment group is not also specified).
126 +(% style="width:996.294px" %)
127 +|**Name**|**Type**|(% style="width:651px" %)**Documentation**
128 +|com:Annotations|com:AnnotationsType|(% style="width:651px" %)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.
129 +|ObsKey|ValuesType|(% style="width:651px" %)ObsKey contains the values for every dimension defined in the data structure definition. A value must be provided for each dimension. This key serves to disambiguate the un-grouped observation within the data set.
130 +|ObsValue|ObsValueType|(% style="width:651px" %)ObsValue type contains the value for the observation.
131 +|Attributes|ValuesType|(% style="width:651px" %)Attributes contains the set of values reported for the attributes which have an association with the primary measure or any dimension in the data structure definition (so long as an attachment group is not also specified).
131 131  
132 132  **ObsType: **ObsType defines the structure of a grouped observation. The observation must be provided a value for the dimension which is declared to be at the observation level for this data set. This dimension value should disambiguate the observation within the series in which it is defined (i.e. there should not be another observation with the same dimension value). The observation can contain an observed value and/or attribute values.
133 133  
134 134  Derivation:
135 -
136 136  * //com:AnnotableType// (extension) 
137 137  ** ObsType
138 138  
... ... @@ -140,11 +140,12 @@
140 140  com:Annotations?, ObsDimension, ObsValue?, Attributes?
141 141  
142 142  Element Documentation:
143 -|**Name**|**Type**|**Documentation**
144 -|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.
145 -|ObsDimension|BaseValueType|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.
146 -|ObsValue|ObsValueType|ObsValue type contains the value for the observation.
147 -|Attributes|ValuesType|Attributes contains the set of values reported for the attributes which have an association with the primary measure or the observations dimension (so long as an attachment group is not also specified).
143 +(% style="width:1004.29px" %)
144 +|**Name**|**Type**|(% style="width:694px" %)**Documentation**
145 +|com:Annotations|com:AnnotationsType|(% style="width:694px" %)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.
146 +|ObsDimension|BaseValueType|(% style="width:694px" %)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.
147 +|ObsValue|ObsValueType|(% style="width:694px" %)ObsValue type contains the value for the observation.
148 +|Attributes|ValuesType|(% style="width:694px" %)Attributes contains the set of values reported for the attributes which have an association with the primary measure or the observations dimension (so long as an attachment group is not also specified).
148 148  
149 149  **ValuesType: **ValuesType is a general structure which contains a collection of data structure definition component values. This type is used to provide both key and attribute collection values.
150 150  
... ... @@ -152,253 +152,223 @@
152 152  Value+
153 153  
154 154  Element Documentation:
155 -|**Name**|**Type**|**Documentation**
156 -|Value|ComponentValueType|Value contains a component value and a reference to the component for which a value is being provided.
156 +(% style="width:1008.29px" %)
157 +|**Name**|(% style="width:185px" %)**Type**|(% style="width:692px" %)**Documentation**
158 +|Value|(% style="width:185px" %)ComponentValueType|(% style="width:692px" %)Value contains a component value and a reference to the component for which a value is being provided.
157 157  
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 +(% style="width:1003.29px" %)
170 +|**Name**|(% style="width:194px" %)**Type**|(% style="width:664px" %)**Documentation**
171 +|id|(% style="width:194px" %)com:NCNameIDType|(% style="width:664px" %)The id attribute contains the identifier for the component for which a value is being provided.
172 +|value|(% style="width:194px" %)xs:anySimpleType|(% style="width:664px" %)The value attribute contains the provided component value.
169 169  
170 -|**Name**|**Type**|**Documentation**
171 -|id|com:NCNameIDType|The id attribute contains the identifier for the component for which a value is being provided.
172 -|value|xs:anySimpleType|The value attribute contains the provided component value.
173 -
174 174  **ObsValueType: **ObsValueType is a derivation of the BaseValueType which is used to provide an observation value. Since an observation value is always associated with the data structure definition primary measure, and the identifier for the primary measure 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.
175 175  
176 176  Derivation:
177 +* BaseValueType (restriction) 
178 +** ObsValueType
177 177  
178 -BaseValueType (restriction) 
179 - [[image:1750765436897-317.png]]ObsValueType
180 -
181 181  Attributes:
182 -
183 183  id?, value
184 184  
185 185  Content:
186 -
187 187  {Empty}
188 188  
189 189  Attribute Documentation:
187 +(% style="width:1004.29px" %)
188 +|(% style="width:190px" %)**Name**|(% style="width:213px" %)**Type**|(% style="width:598px" %)**Documentation**
189 +|(% style="width:190px" %)id (fixed: OBS_VALUE)|(% style="width:213px" %)com:NCNameIDType|(% style="width:598px" %)The id attribute contains a fixed reference to the primary measure component of the data structure definition.
190 +|(% style="width:190px" %)value|(% style="width:213px" %)xs:string|(% style="width:598px" %)The value attribute contains the provided component value.
190 190  
191 -|**Name**|**Type**|**Documentation**
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 -|value|xs:string|The value attribute contains the provided component value.
194 -
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:
195 +* BaseValueType (restriction) 
196 +** 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:
205 +(% style="width:1008.29px" %)
206 +|**Name**|(% style="width:184px" %)**Type**|(% style="width:679px" %)**Documentation**
207 +|id|(% style="width:184px" %)com:NCNameIDType|(% style="width:679px" %)The id attribute contains the identifier for the component for which a value is being provided.
208 +|value|(% style="width:184px" %)xs:string|(% style="width:679px" %)The value attribute contains the provided component value.
211 211  
212 -|**Name**|**Type**|**Documentation**
213 -|id|com:NCNameIDType|The id attribute contains the identifier for the component for which a value is being provided.
214 -|value|xs:string|The value attribute contains the provided component value.
215 -
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:
213 +* //com:AnnotableType// (extension) 
214 +** DataSetType (restriction) 
215 +*** 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:
224 +(% style="width:1004.29px" %)
225 +|**Name**|**Type**|(% style="width:590px" %)**Documentation**
226 +|structureRef|xs:IDREF|(% style="width:590px" %)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).
227 +|setID|com:IDType|(% style="width:590px" %)The setID provides an identification of the data or metadata set.
228 +|action|com:ActionType|(% style="width:590px" %)The action attribute indicates whether the file is appending, replacing, or deleting.
229 +|reportingBeginDate|com: BasicTimePeriodType|(% style="width:590px" %)The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
230 +|reportingEndDate|com: BasicTimePeriodType|(% style="width:590px" %)The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
231 +|validFromDate|xs:dateTime|(% style="width:590px" %)The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
232 +|validToDate|xs:dateTime|(% style="width:590px" %)The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
233 +|publicationYear|xs:gYear|(% style="width:590px" %)The publicationYear holds the ISO 8601 four-digit year.
234 +|publicationPeriod|com: ObservationalTimePeriodType|(% style="width:590px" %)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).
233 233  
234 -|**Name**|**Type**|**Documentation**
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 -|setID|com:IDType|The setID provides an identification of the data or metadata set.
237 -|action|com:ActionType|The action attribute indicates whether the file is appending, replacing, or deleting.
238 -|reportingBeginDate|com: BasicTimePeriodType|The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
239 -|reportingEndDate|com: BasicTimePeriodType|The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
240 -|validFromDate|xs:dateTime|The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
241 -|validToDate|xs:dateTime|The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
242 -|publicationYear|xs:gYear|The publicationYear holds the ISO 8601 four-digit year.
243 -|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).
244 -
245 245  Element Documentation:
237 +(% style="width:999.294px" %)
238 +|**Name**|**Type**|(% style="width:622px" %)**Documentation**
239 +|com:Annotations|com:AnnotationsType|(% style="width:622px" %)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.
240 +|DataProvider|com: DataProviderReferenceType|(% style="width:622px" %)DataProvider contains a reference to the provider for the data set.
241 +|Attributes|ValuesType|(% style="width:622px" %)Attributes contains the collection of attribute values for attributes defined in the data structure definition which do not have an attribute relationship with any other data structure definition components.
242 +|Group|GroupType|(% style="width:622px" %)Group contains a references to a defined group in the data structure definition along with its key (if necessary) and values for the attributes which are associated with the group. An attribute is associated to a group by either an explicit group relationship or by a group attachment when the attribute has a relationship with a dimension which is a member of this group.
243 +|Series|TimeSeriesType|(% style="width:622px" %)Series contains a collection of observations that share a common key (set of dimension values). The key of a series is every dimension defined in the data structure definition, save the time dimension. In addition to the key and observations, the series contains values for attributes which have a relationship with any dimension that is part of the series key, so long as the attribute does not specify an attachment group or also has a relationship with the time dimension.
246 246  
247 -|**Name**|**Type**|**Documentation**
248 -|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.
249 -|DataProvider|com: DataProviderReferenc eType|DataProvider contains a reference to the provider for the data set.
250 -|Attributes|ValuesType|Attributes contains the collection of attribute values for attributes defined in the data structure definition which do not have an attribute relationship with any other data structure definition components.
251 -|Group|GroupType|Group contains a references to a defined group in the data structure definition along with its key (if necessary) and values for the attributes which are associated with the group. An attribute is associated to a group by either an explicit group relationship or by a group attachment when the attribute has a relationship with a dimension which is a member of this group.
252 -|Series|TimeSeriesType|Series contains a collection of observations that share a common key (set of dimension values). The key of a series is every dimension defined in the data structure definition, save the time dimension. In addition to the key and observations, the series contains values for attributes which have a relationship with any dimension that is part of the series key, so long as the attribute does not specify an attachment group or also has a relationship with the time dimension.
253 -
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:
248 +* //com:AnnotableType// (extension) 
249 +** SeriesType (restriction) 
250 +*** 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:
256 +(% style="width:1012.29px" %)
257 +|**Name**|**Type**|(% style="width:695px" %)**Documentation**
258 +|com:Annotations|com:AnnotationsType|(% style="width:695px" %)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.
259 +|SeriesKey|ValuesType|(% style="width:695px" %)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.
260 +|Attributes|ValuesType|(% style="width:695px" %)Attributes contains the values for attributes which are associated with the dimensions which make up the series key, so long as the attributes do not also specify an attachment group or have a relationship with the observation dimension.
261 +|Obs|TimeSeriesObsType|(% style="width:695px" %)Obs contains an observation which shares the dimensionality of the series key. These observations are disambiguated from one another within this series by a time value.
267 267  
268 -|**Name**|**Type**|**Documentation**
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 -|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.
271 -|Attributes|ValuesType|Attributes contains the values for attributes which are associated with the dimensions which make up the series key, so long as the attributes do not also specify an attachment group or have a relationship with the observation dimension.
272 -|Obs|TimeSeriesObsType|Obs contains an observation which shares the dimensionality of the series key. These observations are disambiguated from one another within this series by a time value.
273 -
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:
266 +* //com:AnnotableType// (extension) 
267 +** ObsType (restriction) 
268 +*** 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:
274 +(% style="width:1019.29px" %)
275 +|**Name**|**Type**|(% style="width:709px" %)**Documentation**
276 +|com:Annotations|com:AnnotationsType|(% style="width:709px" %)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.
277 +|ObsDimension|TimeValueType|(% style="width:709px" %)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.
278 +|ObsValue|ObsValueType|(% style="width:709px" %)ObsValue type contains the value for the observation.
279 +|Attributes|ValuesType|(% style="width:709px" %)Attributes contains the set of values reported for the attributes which have an association with the primary measure or the time dimension (so long as an attachment group is not also specified).
287 287  
288 -|**Name**|**Type**|**Documentation**
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 -|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.
291 -|ObsValue|ObsValueType|ObsValue type contains the value for the observation.
292 -|Attributes|ValuesType|Attributes contains the set of values reported for the attributes which have an association with the primary measure or the time dimension (so long as an attachment group is not also specified).
293 -
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:
284 +* BaseValueType (restriction) 
285 +** 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:
294 +(% style="width:1013.29px" %)
295 +|(% style="width:205px" %)**Name**|(% style="width:277px" %)**Type**|(% style="width:528px" %)**Documentation**
296 +|(% style="width:205px" %)id (fixed: TIME_PERIOD)|(% style="width:277px" %)com:NCNameIDType|(% style="width:528px" %)The id attribute contains the identifier for the component for which a value is being provided.
297 +|(% style="width:205px" %)value|(% style="width:277px" %)com: ObservationalTimePer iodType|(% style="width:528px" %)The value attribute contains the provided component value.
310 310  
311 -|**Name**|**Type**|**Documentation**
312 -|id (fixed: TIME_PERIOD)|com:NCNameIDType|The id attribute contains the identifier for the component for which a value is being provided.
313 -|value|com: ObservationalTimePer iodType|The value attribute contains the provided component value.
299 +== 2.2 Structure Specific Data Namespace ==
314 314  
315 -1.
316 -11. Structure Specific Data Namespace
317 -
318 318  **http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/data/structurespecific**
319 319  
320 -1.
321 -11.
322 -111. Summary
303 +=== 2.2.1 Summary ===
323 323  
324 324  Referenced Namespaces:
325 325  
326 -|**Namespace**|**Prefix**
327 -| |
328 -|http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|com
329 -|http:~/~/www.w3.org/2001/XMLSchema|xs
307 +(% style="width:1027.29px" %)
308 +|(% style="width:475px" %)**Namespace**|(% style="width:549px" %)**Prefix**
309 +|(% style="width:475px" %)http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|(% style="width:549px" %)com
310 +|(% style="width:475px" %)http:~/~/www.w3.org/2001/XMLSchema|(% style="width:549px" %)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
316 +=== 2.2.2 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:
321 +* //com:AnnotableType// (extension)
322 +** //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:
331 +(% style="width:1005.29px" %)
332 +|(% style="width:199px" %)**Name**|(% style="width:216px" %)**Type**|(% style="width:521px" %)**Documentation**
333 +|(% style="width:199px" %)structureRef|(% style="width:216px" %)xs:IDREF|(% style="width:521px" %)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).
334 +|(% style="width:199px" %)setID|(% style="width:216px" %)com:IDType|(% style="width:521px" %)The setID provides an identification of the data or metadata set.
335 +|(% style="width:199px" %)action|(% style="width:216px" %)com:ActionType|(% style="width:521px" %)The action attribute indicates whether the file is appending, replacing, or deleting.
336 +|(% style="width:199px" %)reportingBeginDate|(% style="width:216px" %)com: BasicTimePeriodType|(% style="width:521px" %)The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
337 +|(% style="width:199px" %)reportingEndDate|(% style="width:216px" %)com: BasicTimePeriodType|(% style="width:521px" %)The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
338 +|(% style="width:199px" %)validFromDate|(% style="width:216px" %)xs:dateTime|(% style="width:521px" %)The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
339 +|(% style="width:199px" %)validToDate|(% style="width:216px" %)xs:dateTime|(% style="width:521px" %)The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
340 +|(% style="width:199px" %)publicationYear|(% style="width:216px" %)xs:gYear|(% style="width:521px" %)The publicationYear holds the ISO 8601 four-digit year.
341 +|(% style="width:199px" %)publicationPeriod|(% style="width:216px" %)com: ObservationalTimePeriodType|(% style="width:521px" %)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).
342 +|(% style="width:199px" %)dataScope|(% style="width:216px" %)DataScopeType|(% style="width:521px" %)The dataScope attribute indicates the scope at which the data is meant to be validated. These scopes are hierarchical and are (from the top down); DataStructure, ConstrainedDataStructure, Dataflow, and ProvisionAgreement. the hierarchy of these scopes represent the cascading level of constraints, which can restrict the valid values for components. For example, a data structure defines a dimension with a coded representation. A data flow might have a constraint associated with it which further restricts the values allowed from the referenced code list to a subset of the values allowed by the data structure definition. A provision agreement that is based on the dataflow might also have a constraint, which further restricts the subset of the codelist from the dataflow. Therefore, the allowed content becomes stricter lower in the hierarchy. Data that is given a scope of one value is stated to be valid at that level and all levels below it. Therefore, this scope serves to state that data that is meant to be structured simply against the data structure definition is not meant to be validated against the a dataflow, where constraints might be applied.
343 +|(% style="width:199px" %)REPORTING_YEAR_START_DAY|(% style="width:216px" %)xs:gMonthDay|(% style="width:521px" %)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 data set 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.
356 356  
357 -|**Name**|**Type**|**Documentation**
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 -|setID|com:IDType|The setID provides an identification of the data or metadata set.
360 -|action|com:ActionType|The action attribute indicates whether the file is appending, replacing, or deleting.
361 -|reportingBeginDate|com: BasicTimePeriodType|The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
362 -|reportingEndDate|com: BasicTimePeriodType|The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
363 -|validFromDate|xs:dateTime|The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
364 -|validToDate|xs:dateTime|The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
365 -|publicationYear|xs:gYear|The publicationYear holds the ISO 8601 four-digit year.
366 -|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).
367 -|dataScope|DataScopeType|The dataScope attribute indicates the scope at which the data is meant to be validated. These scopes are hierarchical and are (from the top down); DataStructure, ConstrainedDataStructure, Dataflow, and ProvisionAgreement. the hierarchy of these scopes represent the cascading level of constraints, which can restrict the valid values for components. For example, a data structure defines a dimension with a coded representation. A data flow might have a constraint associated with it which further restricts the values allowed from the referenced code list to a subset of the values allowed by the data structure definition. A provision agreement that is based on the dataflow might also have a constraint, which further restricts the subset of the codelist from the dataflow. Therefore, the allowed content becomes stricter lower in the hierarchy. Data that is given a scope of one value is stated to be valid at that level and all levels below it. Therefore, this scope serves to state that data that is meant to be structured simply against the data structure definition is not meant to be validated against the a dataflow, where constraints might be applied.
368 -|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 data set 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.
369 -
370 370  Element Documentation:
346 +(% style="width:1005.29px" %)
347 +|**Name**|**Type**|(% style="width:630px" %)**Documentation**
348 +|com:Annotations|com:AnnotationsType|(% style="width:630px" %)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.
349 +|DataProvider|com: DataProviderReferenceType|(% style="width:630px" %)DataProvider contains a reference to the provider for the data set.
350 +|Group|//GroupType//|(% style="width:630px" %)Group contains a references to a defined group in the data structure definition along with its key (if necessary) and values for the attributes which are associated with the group. An attribute is associated to a group by either an explicit group relationship or by a group attachment when the attribute has a relationship with a dimension which is a member of this group.
351 +|Series|//SeriesType//|(% style="width:630px" %)Series contains a collection of observations that share a common key (set of dimension values). The key of a series is every dimension defined in the data structure definition, save the dimension at the observation level. In addition to the key and observations, the series contains values for attributes which have a relationship with any dimension that is part of the series key, so long as the attribute does not specify an attachment group or also has a relationship with the dimension declared to be at the observation level.
352 +|Obs|//ObsType//|(% style="width:630px" %)Obs is an un-grouped observation. This observation has a key which is a set of values for all dimensions declared in the data structure definition. In addition to the key, the value of the observation can be provided along with values for all attributes which have an association with the primary measure or any dimension (so long as it does not specify a group attachment).
371 371  
372 -|**Name**|**Type**|**Documentation**
373 -|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.
374 -|DataProvider|com: DataProviderReferenc eType|DataProvider contains a reference to the provider for the data set.
375 -|Group|//GroupType//|Group contains a references to a defined group in the data structure definition along with its key (if necessary) and values for the attributes which are associated with the group. An attribute is associated to a group by either an explicit group relationship or by a group attachment when the attribute has a relationship with a dimension which is a member of this group.
376 -|Series|//SeriesType//|Series contains a collection of observations that share a common key (set of dimension values). The key of a series is every dimension defined in the data structure definition, save the dimension at the observation level. In addition to the key and observations, the series contains values for attributes which have a relationship with any dimension that is part of the series key, so long as the attribute does not specify an attachment group or also has a relationship with the dimension declared to be at the observation level.
377 -|Obs|//ObsType//|Obs is an un-grouped observation. This observation has a key which is a set of values for all dimensions declared in the data structure definition. In addition to the key, the value of the observation can be provided along with values for all attributes which have an association with the primary measure or any dimension (so long as it does not specify a group attachment).
378 -
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:
357 +* //com:AnnotableType// (extension) 
358 +** //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:
367 +(% style="width:1008.29px" %)
368 +|**Name**|**Type**|(% style="width:621px" %)**Documentation**
369 +|type|com:IDType|(% style="width:621px" %)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.
370 +|REPORTING_YEAR_START_DAY|xs:gMonthDay|(% style="width:621px" %)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.
395 395  
396 -|**Name**|**Type**|**Documentation**
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 -|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.
399 -
400 400  Element Documentation:
401 -
402 402  |**Name**|**Type**|**Documentation**
403 403  |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.
404 404  
... ... @@ -405,26 +405,22 @@
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:
379 +* //com:AnnotableType// (extension) 
380 +** //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:
389 +(% style="width:1002.29px" %)
390 +|**Name**|**Type**|(% style="width:533px" %)**Documentation**
391 +|TIME_PERIOD|com: ObservationalTimePer iodType|(% style="width:533px" %)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.
392 +|REPORTING_YEAR_START_DAY|xs:gMonthDay|(% style="width:533px" %)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.
421 421  
422 -|**Name**|**Type**|**Documentation**
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 -|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.
425 -
426 426  Element Documentation:
427 -
428 428  |**Name**|**Type**|**Documentation**
429 429  |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.
430 430  |Obs|//ObsType//|
... ... @@ -432,28 +432,24 @@
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:
402 +* //com:AnnotableType// (extension) 
403 +** //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:
412 +(% style="width:1014.29px" %)
413 +|**Name**|**Type**|(% style="width:505px" %)**Documentation**
414 +|type|com:IDType|(% style="width:505px" %)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.
415 +|TIME_PERIOD|com: ObservationalTimePeriodType|(% style="width:505px" %)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.
416 +|REPORTING_YEAR_START_DAY|xs:gMonthDay|(% style="width:505px" %)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.
417 +|OBS_VALUE|xs:anySimpleType|(% style="width:505px" %)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.
448 448  
449 -|**Name**|**Type**|**Documentation**
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 -|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.
452 -|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.
453 -|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.
454 -
455 455  Element Documentation:
456 -
457 457  |**Name**|**Type**|**Documentation**
458 458  |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.
459 459  
... ... @@ -460,101 +460,90 @@
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:
426 +* //com:AnnotableType// (extension) 
427 +** //DataSetType// (restriction) 
428 +*** //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:
437 +(% style="width:1003.29px" %)
438 +|(% style="width:213px" %)**Name**|(% style="width:274px" %)**Type**|(% style="width:461px" %)**Documentation**
439 +|(% style="width:213px" %)structureRef|(% style="width:274px" %)xs:IDREF|(% style="width:461px" %)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).
440 +|(% style="width:213px" %)setID|(% style="width:274px" %)com:IDType|(% style="width:461px" %)The setID provides an identification of the data or metadata set.
441 +|(% style="width:213px" %)action|(% style="width:274px" %)com:ActionType|(% style="width:461px" %)The action attribute indicates whether the file is appending, replacing, or deleting.
442 +|(% style="width:213px" %)reportingBeginDate|(% style="width:274px" %)com: BasicTimePeriodType|(% style="width:461px" %)The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
443 +|(% style="width:213px" %)reportingEndDate|(% style="width:274px" %)com: BasicTimePeriodType|(% style="width:461px" %)The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
444 +|(% style="width:213px" %)validFromDate|(% style="width:274px" %)xs:dateTime|(% style="width:461px" %)The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
445 +|(% style="width:213px" %)validToDate|(% style="width:274px" %)xs:dateTime|(% style="width:461px" %)The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
446 +|(% style="width:213px" %)publicationYear|(% style="width:274px" %)xs:gYear|(% style="width:461px" %)The publicationYear holds the ISO 8601 four-digit year.
447 +|(% style="width:213px" %)publicationPeriod|(% style="width:274px" %)com: ObservationalTimePeriodType|(% style="width:461px" %)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).
448 +|(% style="width:213px" %)dataScope|(% style="width:274px" %)DataScopeType|(% style="width:461px" %)The dataScope attribute indicates the scope at which the data is meant to be validated. These scopes are hierarchical and are (from the top down); DataStructure, ConstrainedDataStructure, Dataflow, and ProvisionAgreement. the hierarchy of these scopes represent the cascading level of constraints, which can restrict the valid values for components. For example, a data structure defines a dimension with a coded representation. A data flow might have a constraint associated with it which further restricts the values allowed from the referenced code list to a subset of the values allowed by the data structure definition. A provision agreement that is based on the dataflow might also have a constraint, which further restricts the subset of the codelist from the dataflow. Therefore, the allowed content becomes stricter lower in the hierarchy. Data that is given a scope of one value is stated to be valid at that level and all levels below it. Therefore, this scope serves to state that data that is meant to be structured simply against the data structure definition is not meant to be validated against the a dataflow, where constraints might be applied.
449 +|(% style="width:213px" %)REPORTING_YEAR_START_DAY|(% style="width:274px" %)xs:gMonthDay|(% style="width:461px" %)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 data set 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.
477 477  
478 -|**Name**|**Type**|**Documentation**
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 -|setID|com:IDType|The setID provides an identification of the data or metadata set.
481 -|action|com:ActionType|The action attribute indicates whether the file is appending, replacing, or deleting.
482 -|reportingBeginDate|com: BasicTimePeriodType|The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
483 -|reportingEndDate|com: BasicTimePeriodType|The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
484 -|validFromDate|xs:dateTime|The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
485 -|validToDate|xs:dateTime|The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
486 -|publicationYear|xs:gYear|The publicationYear holds the ISO 8601 four-digit year.
487 -|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).
488 -|dataScope|DataScopeType|The dataScope attribute indicates the scope at which the data is meant to be validated. These scopes are hierarchical and are (from the top down); DataStructure, ConstrainedDataStructure, Dataflow, and ProvisionAgreement. the hierarchy of these scopes represent the cascading level of constraints, which can restrict the valid values for components. For example, a data structure defines a dimension with a coded representation. A data flow might have a constraint associated with it which further restricts the values allowed from the referenced code list to a subset of the values allowed by the data structure definition. A provision agreement that is based on the dataflow might also have a constraint, which further restricts the subset of the codelist from the dataflow. Therefore, the allowed content becomes stricter lower in the hierarchy. Data that is given a scope of one value is stated to be valid at that level and all levels below it. Therefore, this scope serves to state that data that is meant to be structured simply against the data structure definition is not meant to be validated against the a dataflow, where constraints might be applied.
489 -|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 data set 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.
490 -
491 491  Element Documentation:
452 +(% style="width:1007.29px" %)
453 +|**Name**|**Type**|(% style="width:632px" %)**Documentation**
454 +|com:Annotations|com:AnnotationsType|(% style="width:632px" %)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.
455 +|DataProvider|com: DataProviderReferenceType|(% style="width:632px" %)DataProvider contains a reference to the provider for the data set.
456 +|Group|//GroupType//|(% style="width:632px" %)Group contains a references to a defined group in the data structure definition along with its key (if necessary) and values for the attributes which are associated with the group. An attribute is associated to a group by either an explicit group relationship or by a group attachment when the attribute has a relationship with a dimension which is a member of this group.
457 +|Series|TimeSeriesType|(% style="width:632px" %)Series contains a collection of observations that share a common key (set of dimension values). The key of a series is every dimension defined in the data structure definition, save the dimension at the observation level. In addition to the key and observations, the series contains values for attributes which have a relationship with any dimension that is part of the series key, so long as the attribute does not specify an attachment group or also has a relationship with the dimension declared to be at the observation level.
492 492  
493 -|**Name**|**Type**|**Documentation**
494 -|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.
495 -|DataProvider|com: DataProviderReferenc eType|DataProvider contains a reference to the provider for the data set.
496 -|Group|//GroupType//|Group contains a references to a defined group in the data structure definition along with its key (if necessary) and values for the attributes which are associated with the group. An attribute is associated to a group by either an explicit group relationship or by a group attachment when the attribute has a relationship with a dimension which is a member of this group.
497 -|Series|TimeSeriesType|Series contains a collection of observations that share a common key (set of dimension values). The key of a series is every dimension defined in the data structure definition, save the dimension at the observation level. In addition to the key and observations, the series contains values for attributes which have a relationship with any dimension that is part of the series key, so long as the attribute does not specify an attachment group or also has a relationship with the dimension declared to be at the observation level.
498 -
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:
462 +* //com:AnnotableType// (extension) 
463 +** //SeriesType// (restriction) 
464 +*** 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:
473 +(% style="width:1004.29px" %)
474 +|**Name**|**Type**|(% style="width:617px" %)**Documentation**
475 +|REPORTING_YEAR_START_DAY|xs:gMonthDay|(% style="width:617px" %)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.
516 516  
517 -|**Name**|**Type**|**Documentation**
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 -
520 520  Element Documentation:
478 +(% style="width:1003.29px" %)
479 +|**Name**|**Type**|(% style="width:593px" %)**Documentation**
480 +|com:Annotations|com:AnnotationsType|(% style="width:593px" %)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.
481 +|Obs|//TimeSeriesObsType//|(% style="width:593px" %)
521 521  
522 -|**Name**|**Type**|**Documentation**
523 -|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.
524 -|Obs|//TimeSeriesObsType//|
525 -
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:
486 +* //com:AnnotableType// (extension) 
487 +** //ObsType// (restriction) 
488 +*** //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:
497 +(% style="width:1005.29px" %)
498 +|**Name**|**Type**|(% style="width:496px" %)**Documentation**
499 +|TIME_PERIOD|com: ObservationalTimePeriodType|(% style="width:496px" %)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.
500 +|REPORTING_YEAR_START_DAY|xs:gMonthDay|(% style="width:496px" %)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.
501 +|OBS_VALUE|xs:anySimpleType|(% style="width:496px" %)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.
543 543  
544 -|**Name**|**Type**|**Documentation**
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 -|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 -|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 -
549 549  Element Documentation:
504 +(% style="width:1013.29px" %)
505 +|**Name**|**Type**|(% style="width:603px" %)**Documentation**
506 +|com:Annotations|com:AnnotationsType|(% style="width:603px" %)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.
550 550  
551 -|**Name**|**Type**|**Documentation**
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.
508 +=== 2.2.3 Simple Types ===
553 553  
554 -1.
555 -11.
556 -111. Simple Types
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 560  Derived by restriction of xs:string .
... ... @@ -561,365 +561,333 @@
561 561  
562 562  Enumerations:
563 563  
564 -|**Value**|**Documentation**
565 -|DataStructure|The data set conforms simply to the data structure definition as it is defined, without regard to any constraints.
566 -|ConstrainedDataStructure|The data set conforms to the known allowable content constraints applied to the data structure definition.
567 -|Dataflow|The data set conforms to the known allowable content constraints applied to the dataflow.
568 -|ProvisionAgreement|The data set conforms to the known allowable content constraints applied to the provision agreement.
516 +(% style="width:1020.29px" %)
517 +|(% style="width:208px" %)**Value**|(% style="width:809px" %)**Documentation**
518 +|(% style="width:208px" %)DataStructure|(% style="width:809px" %)The data set conforms simply to the data structure definition as it is defined, without regard to any constraints.
519 +|(% style="width:208px" %)ConstrainedDataStructure|(% style="width:809px" %)The data set conforms to the known allowable content constraints applied to the data structure definition.
520 +|(% style="width:208px" %)Dataflow|(% style="width:809px" %)The data set conforms to the known allowable content constraints applied to the dataflow.
521 +|(% style="width:208px" %)ProvisionAgreement|(% style="width:809px" %)The data set conforms to the known allowable content constraints applied to the provision agreement.
569 569  
570 -1.
571 -11. Generic Metadata Namespace
523 +== 2.3 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
527 +=== 2.3.1 Summary ===
578 578  
579 579  Referenced Namespaces:
580 580  
581 -|**Namespace**|**Prefix**
582 -|http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|com
583 -|http:~/~/www.w3.org/2001/XMLSchema|xs
531 +(% style="width:694.294px" %)
532 +|(% style="width:492px" %)**Namespace**|(% style="width:199px" %)**Prefix**
533 +|(% style="width:492px" %)http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|(% style="width:199px" %)com
534 +|(% style="width:492px" %)http:~/~/www.w3.org/2001/XMLSchema|(% style="width:199px" %)xs
584 584  
585 585  Contents:
586 586  
587 587  6 Complex Types
588 588  
589 -1.
590 -11.
591 -111. Complex Types
540 +=== 2.3.2 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:
545 +* //com:AnnotableType// (extension) 
546 +** 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 609  
610 -|**Name**|**Type**|**Documentation**
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 -|setID|com:IDType|The setID provides an identification of the data or metadata set.
613 -|action|com:ActionType|The action attribute indicates whether the file is appending, replacing, or deleting.
614 -|reportingBeginDate|com: BasicTimePeriodType|The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
615 -|reportingEndDate|com: BasicTimePeriodType|The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
616 -|validFromDate|xs:dateTime|The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
617 -|validToDate|xs:dateTime|The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
618 -|publicationYear|xs:gYear|The publicationYear holds the ISO 8601 four-digit year.
619 -|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).
556 +(% style="width:1006.29px" %)
557 +|**Name**|**Type**|(% style="width:592px" %)**Documentation**
558 +|structureRef|xs:IDREF|(% style="width:592px" %)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).
559 +|setID|com:IDType|(% style="width:592px" %)The setID provides an identification of the data or metadata set.
560 +|action|com:ActionType|(% style="width:592px" %)The action attribute indicates whether the file is appending, replacing, or deleting.
561 +|reportingBeginDate|com: BasicTimePeriodType|(% style="width:592px" %)The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
562 +|reportingEndDate|com: BasicTimePeriodType|(% style="width:592px" %)The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
563 +|validFromDate|xs:dateTime|(% style="width:592px" %)The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
564 +|validToDate|xs:dateTime|(% style="width:592px" %)The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
565 +|publicationYear|xs:gYear|(% style="width:592px" %)The publicationYear holds the ISO 8601 four-digit year.
566 +|publicationPeriod|com: ObservationalTimePeriodType|(% style="width:592px" %)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).
620 620  
621 621  Element Documentation:
569 +(% style="width:1006.29px" %)
570 +|**Name**|(% style="width:268px" %)**Type**|(% style="width:562px" %)**Documentation**
571 +|com:Annotations|(% style="width:268px" %)com:AnnotationsType|(% style="width:562px" %)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.
572 +|com:Name|(% style="width:268px" %)com:TextType|(% style="width:562px" %)Name is a reusable element, used for providing a human-readable name for an object.
573 +|DataProvider|(% style="width:268px" %)com: DataProviderReferenceType|(% style="width:562px" %)DataProviderReference provides a references to an organisation with the role of data provider that is providing this metadata set.
574 +|Report|(% style="width:268px" %)ReportType|(% style="width:562px" %)Report contains the details of a the reported metadata, including the identification of the target and the report attributes.
622 622  
623 -|**Name**|**Type**|**Documentation**
624 -|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.
625 -|com:Name|com:TextType|Name is a reusable element, used for providing a human-readable name for an object.
626 -|DataProvider|com: DataProviderReferenc eType|DataProviderReference provides a references to an organisation with the role of data provider that is providing this metadata set.
627 -|Report|ReportType|Report contains the details of a the reported metadata, including the identification of the target and the report attributes.
628 -
629 629  **ReportType: **ReportType contains a set of report attributes and identifies a target objects] to which they apply.
630 630  
631 631  Derivation:
579 +* //com:AnnotableType// (extension) 
580 +** 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:
589 +(% style="width:1003.29px" %)
590 +|**Name**|**Type**|(% style="width:788px" %)**Documentation**
591 +|id|com:IDType|(% style="width:788px" %)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.
645 645  
646 -|**Name**|**Type**|**Documentation**
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 -
649 649  Element Documentation:
594 +(% style="width:1003.29px" %)
595 +|**Name**|**Type**|(% style="width:593px" %)**Documentation**
596 +|com:Annotations|com:AnnotationsType|(% style="width:593px" %)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.
597 +|Target|TargetType|(% style="width:593px" %)Target contains a set of target reference values which when taken together, identify the object or objects to which the reported metadata apply.
598 +|AttributeSet|AttributeSetType|(% style="width:593px" %)AttributeSet contains the reported metadata attribute values for the reported metadata.
650 650  
651 -|**Name**|**Type**|**Documentation**
652 -|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.
653 -|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.
654 -|AttributeSet|AttributeSetType|AttributeSet contains the reported metadata attribute values for the reported metadata.
655 -
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:
609 +(% style="width:1003.29px" %)
610 +|**Name**|**Type**|(% style="width:805px" %)**Documentation**
611 +|id|com:IDType|(% style="width:805px" %)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.
667 667  
668 -|**Name**|**Type**|**Documentation**
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 -
671 671  Element Documentation:
614 +(% style="width:1009.29px" %)
615 +|**Name**|**Type**|(% style="width:710px" %)**Documentation**
616 +|ReferenceValue|ReferenceValueType|(% style="width:710px" %)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.
672 672  
673 -|**Name**|**Type**|**Documentation**
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 -
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:
627 +(% style="width:1013.29px" %)
628 +|**Name**|**Type**|(% style="width:847px" %)**Documentation**
629 +|id|com:IDType|(% style="width:847px" %)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.
687 687  
688 -|**Name**|**Type**|**Documentation**
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 -
691 691  Element Documentation:
692 692  
693 -|**Name**|**Type**|**Documentation**
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 -|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.
696 -|DataSetReference|com:SetReferenceType|DataSetReference provides a reference to a data set for the purpose of reporting metadata against the data. A data set target will utilize this option as the representation of the target reference value.
697 -|ConstraintContentRef erence|com: AttachmentConstraint ReferenceType|ConstraintContentReference provides a reference to an attachment constraint for the purpose of reporting metadata against the data identified in the key sets and/or cube regions identified by the constraint. A constraint target will utilize this option as the representation of the target reference value.
698 -|ReportPeriod|com: ObservationalTimePer iodType|ReportPeriod provides a report period for the purpose of qualifying the target reporting period of reported metadata. A report period target will utilize this option as the representation of the target reference value.
633 +(% style="width:1017.29px" %)
634 +|**Name**|**Type**|(% style="width:522px" %)**Documentation**
635 +|ObjectReference|com: ObjectReferenceType|(% style="width:522px" %)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.
636 +|DataKey|com:DataKeyType|(% style="width:522px" %)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.
637 +|DataSetReference|com:SetReferenceType|(% style="width:522px" %)DataSetReference provides a reference to a data set for the purpose of reporting metadata against the data. A data set target will utilize this option as the representation of the target reference value.
638 +|ConstraintContentRef erence|com: AttachmentConstraint ReferenceType|(% style="width:522px" %)ConstraintContentReference provides a reference to an attachment constraint for the purpose of reporting metadata against the data identified in the key sets and/or cube regions identified by the constraint. A constraint target will utilize this option as the representation of the target reference value.
639 +|ReportPeriod|com: ObservationalTimePer iodType|(% style="width:522px" %)ReportPeriod provides a report period for the purpose of qualifying the target reporting period of reported metadata. A report period target will utilize this option as the representation of the target reference value.
699 699  
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:
647 +(% style="width:1023.29px" %)
648 +|(% style="width:150px" %)**Name**|(% style="width:202px" %)**Type**|(% style="width:668px" %)**Documentation**
649 +|(% style="width:150px" %)ReportedAttribute|(% style="width:202px" %)ReportedAttributeType|(% style="width:668px" %)ReportedAttribute provides the details of a reported attribute, including a value and/or child reported attributes.
707 707  
708 -|**Name**|**Type**|**Documentation**
709 -|ReportedAttribute|ReportedAttributeTyp e|ReportedAttribute provides the details of a reported attribute, including a value and/or child reported attributes.
710 -
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:
654 +* //com:AnnotableType// (extension) 
655 +** 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:
664 +(% style="width:996.294px" %)
665 +|**Name**|(% style="width:170px" %)**Type**|(% style="width:657px" %)**Documentation**
666 +|id|(% style="width:170px" %)com:IDType|(% style="width:657px" %)The id attribute identifies the metadata attribute that the value is being reported for.
667 +|value|(% style="width:170px" %)xs:string|(% style="width:657px" %)The value attribute holds any simple value for the metadata attribute.
727 727  
728 -|**Name**|**Type**|**Documentation**
729 -|id|com:IDType|The id attribute identifies the metadata attribute that the value is being reported for.
730 -|value|xs:string|The value attribute holds any simple value for the metadata attribute.
731 -
732 732  Element Documentation:
670 +(% style="width:999.294px" %)
671 +|**Name**|**Type**|(% style="width:670px" %)**Documentation**
672 +|com:Annotations|com:AnnotationsType|(% style="width:670px" %)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.
673 +|com:Text|com:TextType|(% style="width:670px" %)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.
674 +|com:StructuredText|com:XHTMLType|(% style="width:670px" %)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.
675 +|AttributeSet|AttributeSetType|(% style="width:670px" %)AttributeSet contains the reported metadata attribute values for the child metadata attributes.
733 733  
734 -|**Name**|**Type**|**Documentation**
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 -|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 -|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 -|AttributeSet|AttributeSetType|AttributeSet contains the reported metadata attribute values for the child metadata attributes.
677 +== 2.4 Structure Specific Metadata Namespace ==
739 739  
740 -1.
741 -11. Structure Specific Metadata Namespace
742 -
743 743  **http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/metadata/structurespecific**
744 744  
745 -1.
746 -11.
747 -111. Summary
681 +=== 2.4.1 Summary ===
748 748  
749 749  Referenced Namespaces:
750 750  
751 -|**Namespace**|**Prefix**
752 -| |
753 -|http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|com
754 -|http:~/~/www.w3.org/2001/XMLSchema|xs
685 +(% style="width:654.294px" %)
686 +|(% style="width:492px" %)**Namespace**|(% style="width:159px" %)**Prefix**
687 +|(% style="width:492px" %) |(% style="width:159px" %)
688 +|(% style="width:492px" %)http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|(% style="width:159px" %)com
689 +|(% style="width:492px" %)http:~/~/www.w3.org/2001/XMLSchema|(% style="width:159px" %)xs
755 755  
756 756  Contents:
757 -
758 758  5 Complex Types
759 759  
760 -1.
761 -11.
762 -111. Complex Types
694 +=== 2.4.2 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:
699 +* //com:AnnotableType// (extension) 
700 +** //MetadataSetType//
767 767  
768 -//com:AnnotableType// (extension) 
769 - //MetadataSetType//
770 -
771 771  Attributes:
772 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:
710 +(% style="width:1003.29px" %)
711 +|**Name**|**Type**|(% style="width:607px" %)**Documentation**
712 +|structureRef|xs:IDREF|(% style="width:607px" %)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).
713 +|setID|com:IDType|(% style="width:607px" %)The setID provides an identification of the data or metadata set.
714 +|action|com:ActionType|(% style="width:607px" %)The action attribute indicates whether the file is appending, replacing, or deleting.
715 +|reportingBeginDate|com: BasicTimePeriodType|(% style="width:607px" %)The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
716 +|reportingEndDate|com: BasicTimePeriodType|(% style="width:607px" %)The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
717 +|validFromDate|xs:dateTime|(% style="width:607px" %)The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
718 +|validToDate|xs:dateTime|(% style="width:607px" %)The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
719 +|publicationYear|xs:gYear|(% style="width:607px" %)The publicationYear holds the ISO 8601 four-digit year.
720 +|publicationPeriod|com: ObservationalTimePeriodType|(% style="width:607px" %)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).
780 780  
781 -|**Name**|**Type**|**Documentation**
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 -|setID|com:IDType|The setID provides an identification of the data or metadata set.
784 -|action|com:ActionType|The action attribute indicates whether the file is appending, replacing, or deleting.
785 -|reportingBeginDate|com: BasicTimePeriodType|The reportingBeginDate indicates the inclusive start time of the data reported in the data or metadata set.
786 -|reportingEndDate|com: BasicTimePeriodType|The reportingEndDate indicates the inclusive end time of the data reported in the data or metadata set.
787 -|validFromDate|xs:dateTime|The validFromDate indicates the inclusive start time indicating the validity of the information in the data or metadata set.
788 -|validToDate|xs:dateTime|The validToDate indicates the inclusive end time indicating the validity of the information in the data or metadata set.
789 -|publicationYear|xs:gYear|The publicationYear holds the ISO 8601 four-digit year.
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 -
792 792  Element Documentation:
723 +(% style="width:1006.29px" %)
724 +|**Name**|**Type**|(% style="width:631px" %)**Documentation**
725 +|com:Annotations|com:AnnotationsType|(% style="width:631px" %)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.
726 +|com:Name|com:TextType|(% style="width:631px" %)Name is a reusable element, used for providing a human-readable name for an object.
727 +|DataProvider|com: DataProviderReferenceType|(% style="width:631px" %)>DataProviderReference provides a references to an organisation with the role of data provider that is providing this metadata set.
728 +|Report|//ReportType//|(% style="width:631px" %)Report contains the details of a the reported metadata, including the identification of the target and the report attributes. This element is unqualified so that the metadata structure definition specific schema can refine the type of the element such that it requires types built according to the metadata structure definition. This allows the metadata structure definition to validate the structure of the reported metadata against the metadata structure definition while still allowing the content to be processed in a generic manner.
793 793  
794 -|**Name**|**Type**|**Documentation**
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 -|com:Name|com:TextType|Name is a reusable element, used for providing a human-readable name for an object.
797 -|DataProvider|com: DataProviderReferenc eType|>DataProviderReference provides a references to an organisation with the role of data provider that is providing this metadata set.
798 -|Report|//ReportType//|Report contains the details of a the reported metadata, including the identification of the target and the report attributes. This element is unqualified so that the metadata structure definition specific schema can refine the type of the element such that it requires types built according to the metadata structure definition. This allows the metadata structure definition to validate the structure of the reported metadata against the metadata structure definition while still allowing the content to be processed in a generic manner.
799 -
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:
733 +* //com:AnnotableType// (extension) 
734 +** //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:
743 +(% style="width:1003.29px" %)
744 +|**Name**|**Type**|(% style="width:837px" %)**Documentation**
745 +|id|com:IDType|(% style="width:837px" %)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.
816 816  
817 -|**Name**|**Type**|**Documentation**
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 -
820 820  Element Documentation:
748 +(% style="width:1005.29px" %)
749 +|**Name**|**Type**|(% style="width:695px" %)**Documentation**
750 +|com:Annotations|com:AnnotationsType|(% style="width:695px" %)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.
751 +|Target|//TargetType//|(% style="width:695px" %)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.
752 +|AttributeSet|xs:anyType|(% style="width:695px" %)AttributeSet contains the reported metadata attribute values for the reported metadata. 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 report structure. 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.
821 821  
822 -|**Name**|**Type**|**Documentation**
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 -|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.
825 -|AttributeSet|xs:anyType|AttributeSet contains the reported metadata attribute values for the reported metadata. 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 report structure. 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.
826 -
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:
763 +(% style="width:999.294px" %)
764 +|**Name**|**Type**|(% style="width:833px" %)**Documentation**
765 +|id|com:IDType|(% style="width:833px" %)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.
838 838  
839 -|**Name**|**Type**|**Documentation**
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 -
842 842  Element Documentation:
768 +(% style="width:999.294px" %)
769 +|**Name**|**Type**|(% style="width:700px" %)**Documentation**
770 +|ReferenceValue|//ReferenceValueType//|(% style="width:700px" %)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.
843 843  
844 -|**Name**|**Type**|**Documentation**
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 -
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:
781 +(% style="width:1013.29px" %)
782 +|**Name**|**Type**|(% style="width:847px" %)**Documentation**
783 +|id|com:IDType|(% style="width:847px" %)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.
858 858  
859 -|**Name**|**Type**|**Documentation**
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 -
862 862  Element Documentation:
786 +(% style="width:1000.29px" %)
787 +|**Name**|**Type**|(% style="width:563px" %)**Documentation**
788 +|ObjectReference|//com:ReferenceType//|(% style="width:563px" %)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.
789 +|DataKey|com:DataKeyType|(% style="width:563px" %)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.
790 +|DataSetReference|com:SetReferenceType|(% style="width:563px" %)DataSetReference provides a reference to a data set for the purpose of reporting metadata against the data. A data set target will utilize this option as the representation of the target reference value.
791 +|ConstraintContentRef erence|com: AttachmentConstraint ReferenceType|(% style="width:563px" %)ConstraintContentReference provides a reference to an attachment constraint for the purpose of reporting metadata against the data identified in the key sets and/or cube regions identified by the constraint. A constraint target will utilize this option as the representation of the target reference value.
792 +|ReportPeriod|com: ObservationalTimePeriodType|(% style="width:563px" %)ReportPeriod provides a report period for the purpose of qualifying the target reporting period of reported metadata. A report period 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. This element is unqualified so that the metadata structure definition specific schema can refine the type of the element such that the specific type of time value prescribed in the metadata structure definition can be validated.
863 863  
864 -|**Name**|**Type**|**Documentation**
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 -|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.
867 -|DataSetReference|com:SetReferenceType|DataSetReference provides a reference to a data set for the purpose of reporting metadata against the data. A data set target will utilize this option as the representation of the target reference value.
868 -|ConstraintContentRef erence|com: AttachmentConstraint ReferenceType|ConstraintContentReference provides a reference to an attachment constraint for the purpose of reporting metadata against the data identified in the key sets and/or cube regions identified by the constraint. A constraint target will utilize this option as the representation of the target reference value.
869 -|ReportPeriod|com: ObservationalTimePer iodType|ReportPeriod provides a report period for the purpose of qualifying the target reporting period of reported metadata. A report period 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. This element is unqualified so that the metadata structure definition specific schema can refine the type of the element such that the specific type of time value prescribed in the metadata structure definition can be validated.
870 -
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:
797 +* //com:AnnotableType// (extension) 
798 +** //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:
807 +(% style="width:999.294px" %)
808 +|**Name**|**Type**|(% style="width:660px" %)**Documentation**
809 +|id|com:IDType|(% style="width:660px" %)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.
810 +|value|xs:anySimpleType|(% style="width:660px" %)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.
811 +|isMetadataAttribute (fixed: true)|xs:boolean|(% style="width:660px" %)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.
887 887  
888 -|**Name**|**Type**|**Documentation**
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 -|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 -|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 -
893 893  Element Documentation:
814 +(% style="width:997.294px" %)
815 +|**Name**|**Type**|(% style="width:668px" %)**Documentation**
816 +|com:Annotations|com:AnnotationsType|(% style="width:668px" %)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.
817 +|com:Text|com:TextType|(% style="width:668px" %)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.
818 +|com:StructuredText|com:XHTMLType|(% style="width:668px" %)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.
819 +|AttributeSet|xs:anyType|(% style="width:668px" %)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.
894 894  
895 -|**Name**|**Type**|**Documentation**
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 -|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 -|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 -|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.
821 += 3. Mapping to Structure-Specific Schemas =
900 900  
901 -1. Mapping to Structure-Specific Schemas
902 -11. General
823 +== 3.1 General ==
903 903  
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 -Data  - http:~/~/www.SDMX.org/resources/SDMXML/schemas/v2_1/data/structurespecific
827 +Data - http:~/~/www.SDMX.org/resources/SDMXML/schemas/v2_1/data/structurespecific
907 907  
908 908  Metadata - http:~/~/www.SDMX.org/resources/SDMXML/schemas/v2_1/data/structurespecific
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
833 +=== 3.1.1 Basic Terminology ===
915 915  
916 916  In the subsequent sections, the following namespace prefixes are used:
917 917  
918 -|**Namespace**|**Prefix**
919 -|http:~/~/www.w3.org/2001/XMLSchema|xs
920 -|http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|common
921 -|http:~/~/www.sdmx.org/resources/sdmxml/schemas/ v2_1/data/structurespecific|dsd
922 -|http:~/~/www.sdmx.org/resources/sdmxml/schemas/ v2_1/metadata/structurespecific|msd
837 +(% style="width:763.294px" %)
838 +|(% style="width:623px" %)**Namespace**|(% style="width:137px" %)**Prefix**
839 +|(% style="width:623px" %)http:~/~/www.w3.org/2001/XMLSchema|(% style="width:137px" %)xs
840 +|(% style="width:623px" %)http:~/~/www.sdmx.org/resources/sdmxml/schemas/v2_1/common|(% style="width:137px" %)common
841 +|(% style="width:623px" %)http:~/~/www.sdmx.org/resources/sdmxml/schemas/ v2_1/data/structurespecific|(% style="width:137px" %)dsd
842 +|(% style="width:623px" %)http:~/~/www.sdmx.org/resources/sdmxml/schemas/ v2_1/metadata/structurespecific|(% style="width:137px" %)msd
923 923  
924 924  It is assumed that in order to use this guide, the reader is familiar with schema terminology. However, for convenience the following is list of the terminology used here:
925 925  
... ... @@ -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
880 +== 3.2 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,22 +966,19 @@
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
888 +== 3.3 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
892 +=== 3.3.1 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 980  1. If the component defines an identifier, the element or attribute name is the value of that identifier
981 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
984 984  
899 +=== 3.3.2 Representation Determination ===
900 +
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  
987 987  The representation of a component is determined by the following precedence:
... ... @@ -994,103 +994,89 @@
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
913 +=== 3.3.3 Simple / Primitive Type Determination ===
1000 1000  
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:]].
915 +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.
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
919 +=== 3.3.4 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  
923 +> <xs:simpleType name="ESTAT.CL_COUNTRY.1.0">
924 +> <xs:restriction base="common:IDType">
925 +> <xs:enumeration value="BE">
926 +> <xs:annotation>
927 +> <xs:documentation xml:lang="en">Belgium</xs:documentation>
928 +> </xs:annotation>
929 +> </xs:enumeration>
1011 1011  
1012 -<xs:simpleType name="ESTAT.CL_COUNTRY.1.0">
931 +=== 3.3.5 Representation with Text Format ===
1013 1013  
1014 -<xs:restriction base="common:IDType">
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 -|**SDMX Data Type**|**XML Schema Data Type**
1034 -|String|xs:string
1035 -|AlphaNumeric|common:AlphaNumericType
1036 -|Alpha|common:AlphaType
1037 -|Numeric|common:NumericType
1038 -|BigInteger|xs:integer
1039 -|Integer|xs:int
1040 -|Long|xs:long
1041 -|Short|xs:short
1042 -|Decimal|xs:decimal
1043 -|Float|xs:float
1044 -|Double|xs:double
1045 -|Boolean|xs:boolean
1046 -|URI|xs:anyURI
1047 -|Count|xs:integer
1048 -|InclusiveValueRange|xs:decimal
1049 -|ExclusiveValueRange|xs: decimal
1050 -|Incremental|xs: decimal
1051 -|ObservationalTimePeriod|common:ObservationalTimePeriodType
1052 -|StandardTimePeriod|common:StandardTimePeriodType
1053 -|BasicTimePeriod|common:BasicTimePeriodType
1054 -|GregorianTimePeriod|common:GregorianTimePeriodType
1055 -|GregorianYear|xs:gYear
1056 -|GregorianYearMonth|xs:gYearMonth
1057 -|GregorianDay|xs:date
1058 -|ReportingTimePeriod|common:ReportingTimePeriodType
1059 -|ReportingYear|common:ReportingYearType
1060 -|ReportingSemester|common:ReportingSemesterType
1061 -|ReportingTrimester|common:ReportingTrimesterType
1062 -|ReportingQuarter|common:ReportingQuarterType
1063 -|ReportingMonth|common:ReportingMonthType
1064 -|ReportingWeek|common:ReportingWeekType
1065 -|ReportingDay|common:ReportingDayType
1066 -|DateTime|xs:dateTime
1067 -|TimeRange|common:TimeRangeType
1068 -|Month|xs:gMonth
1069 -|MonthDay|xs:gMonthDay
1070 -|Day|xs:gDay
1071 -|Time|xs:time
1072 -|Duration|xs:duration
1073 -|XHTML|N/A[[~[1~]>>path:#_ftn1]]
1074 -|KeyValues|N/A^^1^^
1075 -|IdentifiableReference|N/A^^1^^
1076 -|DataSetReference|N/A^^1^^
1077 -|AttachmentConstraintReference|N/A^^1^^
935 +(% style="width:698.294px" %)
936 +|(% style="width:286px" %)**SDMX Data Type**|(% style="width:409px" %)**XML Schema Data Type**
937 +|(% style="width:286px" %)String|(% style="width:409px" %)xs:string
938 +|(% style="width:286px" %)AlphaNumeric|(% style="width:409px" %)common:AlphaNumericType
939 +|(% style="width:286px" %)Alpha|(% style="width:409px" %)common:AlphaType
940 +|(% style="width:286px" %)Numeric|(% style="width:409px" %)common:NumericType
941 +|(% style="width:286px" %)BigInteger|(% style="width:409px" %)xs:integer
942 +|(% style="width:286px" %)Integer|(% style="width:409px" %)xs:int
943 +|(% style="width:286px" %)Long|(% style="width:409px" %)xs:long
944 +|(% style="width:286px" %)Short|(% style="width:409px" %)xs:short
945 +|(% style="width:286px" %)Decimal|(% style="width:409px" %)xs:decimal
946 +|(% style="width:286px" %)Float|(% style="width:409px" %)xs:float
947 +|(% style="width:286px" %)Double|(% style="width:409px" %)xs:double
948 +|(% style="width:286px" %)Boolean|(% style="width:409px" %)xs:boolean
949 +|(% style="width:286px" %)URI|(% style="width:409px" %)xs:anyURI
950 +|(% style="width:286px" %)Count|(% style="width:409px" %)xs:integer
951 +|(% style="width:286px" %)InclusiveValueRange|(% style="width:409px" %)xs:decimal
952 +|(% style="width:286px" %)ExclusiveValueRange|(% style="width:409px" %)xs: decimal
953 +|(% style="width:286px" %)Incremental|(% style="width:409px" %)xs: decimal
954 +|(% style="width:286px" %)ObservationalTimePeriod|(% style="width:409px" %)common:ObservationalTimePeriodType
955 +|(% style="width:286px" %)StandardTimePeriod|(% style="width:409px" %)common:StandardTimePeriodType
956 +|(% style="width:286px" %)BasicTimePeriod|(% style="width:409px" %)common:BasicTimePeriodType
957 +|(% style="width:286px" %)GregorianTimePeriod|(% style="width:409px" %)common:GregorianTimePeriodType
958 +|(% style="width:286px" %)GregorianYear|(% style="width:409px" %)xs:gYear
959 +|(% style="width:286px" %)GregorianYearMonth|(% style="width:409px" %)xs:gYearMonth
960 +|(% style="width:286px" %)GregorianDay|(% style="width:409px" %)xs:date
961 +|(% style="width:286px" %)ReportingTimePeriod|(% style="width:409px" %)common:ReportingTimePeriodType
962 +|(% style="width:286px" %)ReportingYear|(% style="width:409px" %)common:ReportingYearType
963 +|(% style="width:286px" %)ReportingSemester|(% style="width:409px" %)common:ReportingSemesterType
964 +|(% style="width:286px" %)ReportingTrimester|(% style="width:409px" %)common:ReportingTrimesterType
965 +|(% style="width:286px" %)ReportingQuarter|(% style="width:409px" %)common:ReportingQuarterType
966 +|(% style="width:286px" %)ReportingMonth|(% style="width:409px" %)common:ReportingMonthType
967 +|(% style="width:286px" %)ReportingWeek|(% style="width:409px" %)common:ReportingWeekType
968 +|(% style="width:286px" %)ReportingDay|(% style="width:409px" %)common:ReportingDayType
969 +|(% style="width:286px" %)DateTime|(% style="width:409px" %)xs:dateTime
970 +|(% style="width:286px" %)TimeRange|(% style="width:409px" %)common:TimeRangeType
971 +|(% style="width:286px" %)Month|(% style="width:409px" %)xs:gMonth
972 +|(% style="width:286px" %)MonthDay|(% style="width:409px" %)xs:gMonthDay
973 +|(% style="width:286px" %)Day|(% style="width:409px" %)xs:gDay
974 +|(% style="width:286px" %)Time|(% style="width:409px" %)xs:time
975 +|(% style="width:286px" %)Duration|(% style="width:409px" %)xs:duration
976 +|(% style="width:286px" %)XHTML|(% style="width:409px" %)N/A{{footnote}}These types are only used in complex types and will be discussed within their appropriate context.{{/footnote}}
977 +|(% style="width:286px" %)KeyValues|(% style="width:409px" %)N/A^^1^^
978 +|(% style="width:286px" %)IdentifiableReference|(% style="width:409px" %)N/A^^1^^
979 +|(% style="width:286px" %)DataSetReference|(% style="width:409px" %)N/A^^1^^
980 +|(% style="width:286px" %)AttachmentConstraintReference|(% style="width:409px" %)N/A^^1^^
1078 1078  
1079 1079  If the text format does not specify any further facets, then the determined type is the listed type or a type which derives from the listed type without placing any addition restrictions on it. However, if one or more facets are specified, then a simple type based on the listed type is necessary. The simple type derives via restriction from the listed type and adds facets according to the following table (the values are mapped as is):
1080 1080  
1081 -|**SDMX Facet**|**XML Schema Facet**
1082 -|minLength|xs:minLength
1083 -|maxLength|xs:maxLength
1084 -|minValue[[~[2~]>>path:#_ftn2]]|if ExclusiveValueRange: xs:minExclusives, else: xs:minInclusive
1085 -|maxValue^^2^^|if ExclusiveValueRange: xs:maxExclusives, else: xs:maxInclusive
1086 -|decimals^^2^^|xs:fractionDigits
1087 -|pattern|xs:pattern
984 +(% style="width:773.294px" %)
985 +|(% style="width:291px" %)**SDMX Facet**|(% style="width:479px" %)**XML Schema Facet**
986 +|(% style="width:291px" %)minLength|(% style="width:479px" %)xs:minLength
987 +|(% style="width:291px" %)maxLength|(% style="width:479px" %)xs:maxLength
988 +|(% style="width:291px" %)minValue{{footnote}}Note that these options only apply to numeric representations and should be ignored if the data type is non-numeric{{/footnote}}|(% style="width:479px" %)if ExclusiveValueRange: xs:minExclusives, else: xs:minInclusive
989 +|(% style="width:291px" %)maxValue^^2^^|(% style="width:479px" %)if ExclusiveValueRange: xs:maxExclusives, else: xs:maxInclusive
990 +|(% style="width:291px" %)decimals^^2^^|(% style="width:479px" %)xs:fractionDigits
991 +|(% style="width:291px" %)pattern|(% style="width:479px" %)xs:pattern
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//
995 +=== 3.3.6 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  
... ... @@ -1099,129 +1099,125 @@
1099 1099  * If the type is based on a text format of a component local representation, and;
1100 1100  ** 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]
1101 1101  ** 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]
1102 -**1. Type Reuse
1103 1103  
1005 +=== 3.3.7 Type Reuse ===
1006 +
1104 1104  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.
1105 1105  
1106 1106  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:
1107 1107  
1108 -Does the component define a local type?
1011 +> Does the component define a local type?
1012 +> Yes: Is that type enumerated?
1013 +> Yes: Type is the qualified type name for the item scheme
1014 +> No: Generate simple type for text format
1015 +> No: Type is the qualified name for the concept from which the component takes its semantic.
1109 1109  
1110 -Yes: Is that type enumerated?
1111 -
1112 -Yes: Type is the qualified type name for the item scheme
1113 -
1114 -No: Generate simple type for text format
1115 -
1116 -No: Type is the qualified name for the concept from which the component takes its semantic.
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
1019 +== 3.4 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
1025 +=== 3.4.1 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  
1133 -1. A sequence consisting of:
1134 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1135 -11. A local element named DataProvider with the type common:DataProviderReferenceType, a form of unqualified and a minimum occurrence of 0
1136 -11. If the data structure defines groups, a local element named Group with a form of unqualified, a minimum occurrence of 0, and a maximum occurrence of unbounded. The type of this element should be the type that is described in the GroupType section which follows.
1137 -11. A choice with a minimum occurrence of 0 consisting of:
1138 -111. If the dimension at the observation level is not AllDimensions, a local element named Series with a form of unqualified, a maximum occurrence of unbounded, and a type of SeriesType (as defined in the SeriesType section which follows)
1139 -111. If the dimension at the observation level is AllDimensions, a local element named Obs with a form of unqualified, a maximum occurrence of unbounded, and a type of ObsType (as defined in the ObsType section which follows)
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 -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 -11.
1143 -111. GroupType
1029 +~1. A sequence consisting of:
1030 +* a. An element reference to common:Annotations, with a minimum occurrence of 0
1031 +* b. A local element named DataProvider with the type common:DataProviderReferenceType, a form of unqualified and a minimum occurrence of 0
1032 +* c. If the data structure defines groups, a local element named Group with a form of unqualified, a minimum occurrence of 0, and a maximum occurrence of unbounded. The type of this element should be the type that is described in the GroupType section which follows.
1033 +* d. A choice with a minimum occurrence of 0 consisting of:
1034 +** i. If the dimension at the observation level is not AllDimensions, a local element named Series with a form of unqualified, a maximum occurrence of unbounded, and a type of SeriesType (as defined in the SeriesType section which follows)
1035 +** ii. If the dimension at the observation level is AllDimensions, a local element named Obs with a form of unqualified, a maximum occurrence of unbounded, and a type of ObsType (as defined in the ObsType section which follows)
1036 +2. 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
1037 +3. An attribute for each attribute defined in the data structured definition that declares an attribute relationship of None. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is optional
1144 1144  
1039 +=== 3.4.2 GroupType ===
1040 +
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 -1. A sequence consisting of:
1148 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1149 -1. An attribute for each dimension referenced by the 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 required
1150 -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
1151 -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
1152 -1. An attribute named type with a type of common:IDType, usage of optional, and a fixed value of the identifier of the group
1043 +~1. A sequence consisting of:
1044 +* a. An element reference to common:Annotations, with a minimum occurrence of 0
1045 +2. An attribute for each dimension referenced by the group. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is required
1046 +3. 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
1047 +4. 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 and type are defined according to the general rules defined in the previous section, and the usage is optional
1048 +5. An attribute named type with a type of common:IDType, usage of optional, and a fixed value of the identifier of the group
1153 1153  
1154 1154  If the data structure definitions defines more than one group, an abstract complex type with name GroupType must be created. This type is used for the Group element in the DataSetType. Its content model will be derived via restriction of the dsd:GroupType. The complex type content model will be as follows:
1155 1155  
1156 -1. A sequence consisting of:
1157 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1158 -1. An attribute named type with a type of Group.ID, and a usage of optional
1159 -1. An anyAttribute declaration with a namespace of ~#~#local
1052 +~1. A sequence consisting of:
1053 +* a. An element reference to common:Annotations, with a minimum occurrence of 0
1054 +2. An attribute named type with a type of Group.ID, and a usage of optional
1055 +3. An anyAttribute declaration with a namespace of ~#~#local
1160 1160  
1161 1161  A simple type named Group.ID must be created. This should restrict the common:IDType. For each group defined by the data structure definition, an enumeration will be created within the restriction with a value of the group identifier.
1162 1162  
1163 1163  For each group defined in the data structure definition, a complex type with its name taken from the group identifier is defined. Its content model will be derived via restriction of the previously defined GroupType. The complex type content model will be as follows:
1164 1164  
1165 -1. A sequence consisting of:
1166 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1167 -1. An attribute for each dimension referenced by the 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 required
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 -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 -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
1061 +~1. A sequence consisting of:
1062 +* a. An element reference to common:Annotations, with a minimum occurrence of 0
1063 +2. An attribute for each dimension referenced by the group. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is required
1064 +3. 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
1065 +4. 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 and type are defined according to the general rules defined in the previous section, and the usage is optional
1066 +5. An attribute named type with a type of Group.ID, usage of optional, and a fixed value of the identifier of the group
1173 1173  
1068 +=== 3.4.3 SeriesType ===
1069 +
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 -1. A sequence consisting of:
1177 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1178 -11. A local element named Obs with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of ObsType (as defined in the ObsType section which follows)
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 -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 -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
1072 +~1. A sequence consisting of:
1073 +* a. An element reference to common:Annotations, with a minimum occurrence of 0
1074 +2. A local element named Obs with a form of unqualified, a minimum occurrence of 0, a maximum occurrence of unbounded, and a type of ObsType (as defined in the ObsType section which follows)
1075 +3. An attribute for each dimension defined by the data structure definition, except for the dimension at the observation level. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is required
1076 +4. 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
1077 +5. 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 and type are defined according to the general rules defined in the previous section, and the usage is optional.
1184 1184  
1079 +=== 3.4.4 ObsType ===
1080 +
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 -1. A sequence consisting of:
1188 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1189 -1. If the dimension at the observation level is not the time dimension (TIME_PERIOD) an attribute named TIME_PERIOD with a type of common:TimePeriodType and a usage of prohibited
1190 -1. If the dimension at the observation level is not the time dimension (TIME_PERIOD) an attribute 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
1191 -1. An attribute for the primary measure (OBS_VALUE) defined by the data structure definition. The XML attribute [[name>>path:#_Component_Name_Determination]] and [[type>>path:#_Simple_/_Primitive]] is defined according to the general rules defined in the previous section, and the usage is optional
1192 -1. An attribute for each attribute defined in the data structure that declares an attribute relationship with the dimension at the observation level or the primary measure (OBS_VALUE). 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
1193 -1. An attribute named type. If the explicit measure option is not used, this attribute must have a type of common:IDType and a usage of prohibited. If the explicit measure option is used, this attribute must have a type of the simple type generated for the representation of the measure dimension that is the dimension at the observation level (this will be an simple type with enumerations with values of the concept identifiers which make up the concept scheme that is the representation of the measure dimension) a and a usage of optional
1083 +~1. A sequence consisting of:
1084 +* a. An element reference to common:Annotations, with a minimum occurrence of 0
1085 +2. If the dimension at the observation level is not the time dimension (TIME_PERIOD) an attribute named TIME_PERIOD with a type of common:TimePeriodType and a usage of prohibited
1086 +3. If the dimension at the observation level is not the time dimension (TIME_PERIOD) an attribute for the dimension at the observation level. The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is required
1087 +4. An attribute for the primary measure (OBS_VALUE) defined by the data structure definition. The XML attribute name and type is defined according to the general rules defined in the previous section, and the usage is optional
1088 +5. An attribute for each attribute defined in the data structure that declares an attribute relationship with the dimension at the observation level or the primary measure (OBS_VALUE). The XML attribute name and type are defined according to the general rules defined in the previous section, and the usage is optional
1194 1194  
1090 +An attribute named type. If the explicit measure option is not used, this attribute must have a type of common:IDType and a usage of prohibited. If the explicit measure option is used, this attribute must have a type of the simple type generated for the representation of the measure dimension that is the dimension at the observation level (this will be an simple type with enumerations with values of the concept identifiers which make up the concept scheme that is the representation of the measure dimension) a and a usage of optional
1091 +
1195 1195  If the explicit measure option is used, then complex type must be created for every concept which make up the representation of the measure dimension which is the dimension at the observation level. The name of this complex type will be taken from the identifier of the concept. Its content model will be derived via restriction of the ObsType. The complex type content model will be as follows:
1196 1196  
1197 -1. A sequence consisting of:
1198 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1199 -1. If the core representation of the Concept differs from that of the primary measure, an attribute for the primary measure (OBS_VALUE) defined by the data structure definition, except for the dimension at the observation level. The XML [[name>>path:#_Component_Name_Determination]] is defined according to the general rules defined in the previous section, and the usage is optional. The type of the attribute is the type that is generated for the core representation of the measure concept. Note that this representation type must have an explicit derivation from the type resulting from the primary measure. For example, if the primary measure type is xyz:CodeType, then the simple type which is defined for the core representation of the concept must restrict xyz:CodeType or one another type which restricts it
1200 -1. An attribute named type with a type of the simple type generated for the representation of the measure dimension that is the dimension at the observation level, a usage of optional, and a fixed value of the concept identifier.
1201 -11. Metadata Structure Specific Schema
1094 +~1. A sequence consisting of:
1095 +* a. An element reference to common:Annotations, with a minimum occurrence of 0
1096 +2. If the core representation of the Concept differs from that of the primary measure, an attribute for the primary measure (OBS_VALUE) defined by the data structure definition, except for the dimension at the observation level. The XML name is defined according to the general rules defined in the previous section, and the usage is optional. The type of the attribute is the type that is generated for the core representation of the measure concept. Note that this representation type must have an explicit derivation from the type resulting from the primary measure. For example, if the primary measure type is xyz:CodeType, then the simple type which is defined for the core representation of the concept must restrict xyz:CodeType or one another type which restricts it
1202 1202  
1098 +3. An attribute named type with a type of the simple type generated for the representation of the measure dimension that is the dimension at the observation level, a usage of optional, and a fixed value of the concept identifier.
1099 +
1100 +== 3.5 Metadata Structure Specific Schema ==
1101 +
1203 1203  One schema will be created for each metadata structure. This schema will define the contents of all report structures defined by the metadata structure. The recommended target namespace of the data structured specific schema is the URN of the metadata structure.
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
1106 +=== 3.5.1 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  
1213 -1. A sequence consisting of:
1214 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1215 -11. An element reference to common:Name, with a minimum occurrence of 0 and a maximum occurrence of unbounded
1216 -11. A local element named DataProvider with the type common:DataProviderReferenceType, a form of unqualified and a minimum occurrence of 0
1217 -11. A local element named Report with a type ReportType, a form of unqualified, a minimum occurrence of 0, and a maximum occurrence of unbounded.
1218 -111. TargetType
1110 +~1. A sequence consisting of:
1111 +* a. An element reference to common:Annotations, with a minimum occurrence of 0
1112 +* b. An element reference to common:Name, with a minimum occurrence of 0 and a maximum occurrence of unbounded
1113 +* c. A local element named DataProvider with the type common:DataProviderReferenceType, a form of unqualified and a minimum occurrence of 0
1114 +* d. A local element named Report with a type ReportType, a form of unqualified, a minimum occurrence of 0, and a maximum occurrence of unbounded.
1219 1219  
1116 +=== 3.5.2 TargetType ===
1117 +
1220 1220  An abstract complex type with a recommended name of TargetType must be created. Its content model will be derived via restriction of the msd:TargetType. The complex type content model will be as follows:
1221 1221  
1222 -1. A sequence consisting of:
1223 -11. A local element named ReferenceValue with a type of msd:ReferenceValueType, a form of unqualified, and a maximum occurrence of unbounded
1224 -1. An attribute named id with a type of Target.ID, and a usage of optional
1120 +~1. A sequence consisting of:
1121 +* a. A local element named ReferenceValue with a type of msd:ReferenceValueType, a form of unqualified, and a maximum occurrence of unbounded
1122 +2. An attribute named id with a type of Target.ID, and a usage of optional
1225 1225  
1226 1226  A simple type with a recommended name of Target.ID must be created. This should 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.
1227 1227  
... ... @@ -1229,38 +1229,38 @@
1229 1229  
1230 1230  An abstract complex type with a recommended name of [metadata target identifier].ReferenceValueType will be created. Its content model will be derived via restriction of the msd:ReferenceValueType. The complex type content model will be as follows:
1231 1231  
1232 -1. A choice consisting of:
1233 -11. A local element named ObjectReference with a type of common:ReferenceType, and a form of unqualified
1234 -11. A local element named DataKey with a type of common:DataKeyType, and a form of unqualified
1235 -11. A local element named DataSetReference with a type of common:SetReferenceType, and a form of unqualified
1236 -11. A local element named ReportPeriod with a type of common:ObservationalTimePeriodType, and a form of unqualified
1237 -1. An attribute named id with the type defined previously as [metadata target identifier].TargetObject.ID, and a usage of optional
1130 +~1. A choice consisting of:
1131 +* a. A local element named ObjectReference with a type of common:ReferenceType, and a form of unqualified
1132 +* b. A local element named DataKey with a type of common:DataKeyType, and a form of unqualified
1133 +* c. A local element named DataSetReference with a type of common:SetReferenceType, and a form of unqualified
1134 +* d. A local element named ReportPeriod with a type of common:ObservationalTimePeriodType, and a form of unqualified
1135 +2. An attribute named id with the type defined previously as [metadata target identifier].TargetObject.ID, and a usage of optional
1238 1238  
1239 1239  For each metadata target defined in the metadata structure definition, a content group with a recommended name of [metadata target identifier] with be defined. Its content model will be as follows:
1240 1240  
1241 -1. A sequence consisting of:
1242 -11. A local element named ReferenceValue with the type previously defined as [metadata target identifier].ReferenceValueType, a form of unqualified, and a minimum and maximum occurrence of the number of target objects defined within the metadata target
1139 +~1. A sequence consisting of:
1140 +* a. A local element named ReferenceValue with the type previously defined as [metadata target identifier].ReferenceValueType, a form of unqualified, and a minimum and maximum occurrence of the number of target objects defined within the metadata target
1243 1243  
1244 1244  For each target object defined by the metadata target, a complex type that must be named [metadata target identifier].[target object identifier] must be created. Its content model will be derived via restriction of the type previously created as [metadata target identifier].ReferenceValueType type created prior to this. The complex type content model will be as follows:
1245 1245  
1246 -1. A choice consisting of:
1247 -11. If the target object is an identifiable object target, a local element named ObjectReference with a type determined as defined in Identifiable Object Target Type Determination:
1248 -11. If the target object is an key descriptor values target, a local element named DataKey with a type of common:DataKeyType, and a form of unqualified
1249 -11. If the target object is a data set target, a local element named DataSetReference with a type of common:SetReferenceType, and a form of unqualified
1250 -11. If the target object is a constraint target, a local element named ConstraintReference with a type of common:AttachmentConstraintReferenceType, and a form of unqualified
1251 -11. If the target object is report period target, a local element named ReportPeriod with a form of unqualified, and a [[type>>path:#_Simple_/_Primitive]] as defined based on the data type of the local representation according to the general rules defined in the previous section
1252 -1. An attribute named id with a type previously created as [metadata target identifier].TargetObject.ID, a usage of optional, and fixed value of the target object identifier
1144 +~1. A choice consisting of:
1145 +* a. If the target object is an identifiable object target, a local element named ObjectReference with a type determined as defined in Identifiable Object Target Type Determination:
1146 +* b. If the target object is an key descriptor values target, a local element named DataKey with a type of common:DataKeyType, and a form of unqualified
1147 +* c. If the target object is a data set target, a local element named DataSetReference with a type of common:SetReferenceType, and a form of unqualified
1148 +* d. If the target object is a constraint target, a local element named ConstraintReference with a type of common:AttachmentConstraintReferenceType, and a form of unqualified
1149 +* e. If the target object is report period target, a local element named ReportPeriod with a form of unqualified, and a [[type>>path:#_Simple_/_Primitive]] as defined based on the data type of the local representation according to the general rules defined in the previous section
1150 +2. An attribute named id with a type previously created as [metadata target identifier].TargetObject.ID, a usage of optional, and fixed value of the target object identifier
1253 1253  
1254 1254  The final complex type (which will be the determined type) is derived by restriction from the reference type determined above. The suggested name of this type is [metadata target identifier].[target object identifier].Reference. The content model of this type will be as follows:
1255 1255  
1256 -1. A choice consisting of:
1257 -11. A sequence consisting of
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 -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 -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
1154 +~1. A choice consisting of:
1155 +* a. A sequence consisting of
1156 +** i. A local element named Ref, with a form of unqualified and a the type defined above as is [metadata target].[target object].Ref
1157 +** ii. 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
1158 +* b. 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
1263 1263  
1160 +==== 3.5.2.1 Identifiable Object Target Type Determination ====
1161 +
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,18 +1277,18 @@
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  
1179 +=== 3.5.3 ReportType ===
1180 +
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:
1286 1286  
1287 -1. A sequence consisting of:
1288 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1289 -11. A local element named Target with the type previously defined as TargetType and a form of unqualified
1290 -11. A local element named AttributeSet with no type assigned and a form of unqualified
1291 -1. An attribute named id with a type previously defined as Report.ID, and a usage of optional
1185 +~1. A sequence consisting of:
1186 +* a. An element reference to common:Annotations, with a minimum occurrence of 0
1187 +* b. A local element named Target with the type previously defined as TargetType and a form of unqualified
1188 +* c. A local element named AttributeSet with no type assigned and a form of unqualified
1189 +2. An attribute named id with a type previously defined as Report.ID, and a usage of optional
1292 1292  
1293 1293  For each report structure defined in the metadata structure definition, a complex type with its name taken from the report structure identifier must be defined. In order to construct this type, some other complex type must be defined first.
1294 1294  
... ... @@ -1296,9 +1296,9 @@
1296 1296  
1297 1297  An abstract complex type must be create, with a recommended name of [report structure identifier].TargetType. Its content model will be derived by restriction of the type previously created as TargetType. The content model of this type must be as follows:
1298 1298  
1299 -1. A sequence consisting of:
1300 -11. A local element named ReferenceValue with a type of msd:ReferenceValueType, a form of unqualified, and a maximum occurrence of unbounded
1301 -1. An attribute named id with the type previously created as [report structure identifier].Target.ID, and a use of optional
1197 +~1. A sequence consisting of:
1198 +* a. A local element named ReferenceValue with a type of msd:ReferenceValueType, a form of unqualified, and a maximum occurrence of unbounded
1199 +2. An attribute named id with the type previously created as [report structure identifier].Target.ID, and a use of optional
1302 1302  
1303 1303  For each metadata target referenced from the report structure, a complex type that must be named [report structure identifier].[metadata target identifier] must be created. This type must derived its content by restriction of the type previously defined as [report structure identifier].TargetType. The content model is as follows:
1304 1304  
... ... @@ -1307,54 +1307,48 @@
1307 1307  
1308 1308  For every metadata attribute defined by the report structure a complex type must be created with the recommended name of [report structure identifier].[nested metadata attribute identifier]. Note that the recommend name assumes the metadata attribute identifier is the nested identifier for the full hierarchy in which the metadata attribute was defined. This content model of this type is derived from restriction of the msd:ReportedAttributeType. The content of this must consists be as follows:
1309 1309  
1310 -1. A sequence consisting of:
1311 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1312 -11. If the isPresentational flag is not set to true:
1313 -111. If the [[determined representation>>path:#_Representation_Determination:]] has data type of XHTML, an element reference to common:StructuredText with a maximum occurrence of unbounded
1314 -111. If the [[determined representation>>path:#_Representation_Determination:]] has is not XHTML, but has a facet of isMultiLinguale, an element reference to common: Text with a maximum occurrence of unbounded
1315 -11. If the metadata attribute defines which child metadata attributes, 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
1316 -1. An attribute named id with a type of common:IDType, a use of optional, and a fixed value of [metadata attribute identifier], where this identifier is not nested
1317 -1. If the isPresentational flag is not set to true, and the [[determined representation>>path:#_Representation_Determination:]] is not XHTML and does not have a facet of isMultiLingual, an attribute named value where the [[type>>path:#_Simple_/_Primitive]] is defined according to the general rules defined in the previous section, and the use is required
1208 +~1. A sequence consisting of:
1209 +a. An element reference to common:Annotations, with a minimum occurrence of 0
1210 +* a. If the isPresentational flag is not set to true:
1211 +* b. If the determined representation has data type of XHTML, an element reference to common:StructuredText with a maximum occurrence of unbounded
1212 +** i. If the determined representation has is not XHTML, but has a facet of isMultiLinguale, an element reference to common: Text with a maximum occurrence of unbounded
1213 +** ii. If the metadata attribute defines which child metadata attributes, 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
1214 +2. An attribute named id with a type of common:IDType, a use of optional, and a fixed value of [metadata attribute identifier], where this identifier is not nested
1318 1318  
1216 +If the isPresentational flag is not set to true, and the determined representation is not XHTML and does not have a facet of isMultiLingual, an attribute named value where the [[type>>path:#_Simple_/_Primitive]] is defined according to the general rules defined in the previous section, and the use is required
1217 +
1319 1319  For each report structure defined in the metadata structure, a complex type that must be named [report structure identifier] must be created. Its content model will be derived via restriction of the previously defined ReportType. The complex type content model will be as follows:
1320 1320  
1321 -1. A sequence consisting of:
1322 -11. An element reference to common:Annotations, with a minimum occurrence of 0
1323 -11. A local element named Target with the type previously defined as [report structure identifier].TargetType, and a form of unqualified. This element must define a uniqueness constraint with a recommended name of [report structure identifier].Target.ReferenceValue.Unique. This uniqueness constraint must contain:
1324 -111. A selector with an xpath of "*"
1325 -111. A field with an xpath of "@id"
1220 +~1. A sequence consisting of:
1221 +* a. An element reference to common:Annotations, with a minimum occurrence of 0
1222 +* b. A local element named Target with the type previously defined as [report structure identifier].TargetType, and a form of unqualified. This element must define a uniqueness constraint with a recommended name of [report structure identifier].Target.ReferenceValue.Unique. This uniqueness constraint must contain:
1223 +** i. A selector with an xpath of "*"
1224 +** ii. A field with an xpath of "@id"
1225 +* c. 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
1226 +2. An attribute named id with the type previously defined as Report.ID, a use of optional, and a fixed value of [report structure identifier]
1326 1326  
1327 -1.
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 -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
1228 +==== 3.5.3.1 Attribute Set Complex Type Creation ====
1333 1333  
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 -1. A sequence consisting of:
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].
1232 +~1. A sequence consisting of:
1233 +* a. 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
1235 += 4. Special data functions =
1341 1341  
1237 +== 4.1 Updates ==
1238 +
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  
1344 -
1345 1345  A dataset with an action of Append is assumed to be an incremental update. This means that one the information provided explicitly in the message should be altered. Any data attribute or observation value that is to be changed must be provided. However, the absence of an observation value or a data attribute at any level does not imply deletion; instead it is simply implied that the value is to remain unchanged. Therefore, it is valid and acceptable to send a data message with an action of Append which contains only a Series elements with attribute values. In this case, the values for the attributes will be updated. Note that it is not permissible to update data attributes using partial keys (outside of those associated with defined groups). In order to update an attribute, a full key must always be provided even if the message format does not require this.
1346 1346  
1347 -1.
1348 -11. Deletes
1349 1349  
1244 +== 4.2 Deletes ==
1245 +
1350 1350  Both the generic and the structure-specific data messages allow for incremental deletion 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.
1351 1351  
1352 -
1353 1353  A dataset with an action of Delete is assumed to be an incremental deletion. The deletion is assumed to take place of the lowest level of detail provided in the message. For example, if a delete message is sent with only a data set element, the entire data set will be deleted. On the other hand, if that data set contains a data attribute, only that data attribute value will be deleted. This same dynamic continues through the data set hierarchy. A data set containing only a series with no data attributes or observations will result in that entire series (all observations and data attributes) being deleted. If the series contains data attributes, only the supplied data attributes for that series will be deleted. Finally, if a series contains observations, then only the specified observations will be deleted. If an entire observation is to be deleted (value and data attributes), only the observation dimension should be provided. If only the observation value or particular data attributes are to be deleted, then these should be specified for the observation. Note that a group can only be used to delete the data attributes associated with it. Although the format might not require it, a full key must be provided to delete a series or observation. It is not permissible to wild card a key in order to delete more than one series or observation. Finally, to delete a data attribute or observation value it is recommended that the value to be deleted be supplied; however, it is only required that any valid value be provided.
1354 1354  
1355 -
1356 1356  ----
1357 1357  
1358 -[[~[1~]>>path:#_ftnref1]] These types are only used in complex types and will be discussed within their appropriate context.
1359 -
1360 -[[~[2~]>>path:#_ftnref2]] Note that these options only apply to numeric representations and should be ignored if the data type is non-numeric
1252 +{{putFootnotes/}}