Version 9.1 by Helena on 2025/05/16 13:54

Hide last authors
Helena 7.2 1 {{box title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
Helena 2.1 4
5 == 5.1 Introduction ==
6
7 The DataStructureDefiniton is the class name for a structure definition for data. Some organisations know this type of definition as a “Key Family” and so the two names are synonymous. The term Data Structure Definition (also referred to as DSD) is used in this specification.
8
9 Many of the constructs in this layer of the model inherit from the SDMX Base Layer. Therefore, it is necessary to study both the inheritance and the relationship diagrams to understand the functionality of individual packages. In simple sub models these are shown in the same diagram but are omitted from the more complex sub models for the sake of clarity. In these cases, the inheritance diagram below shows the full inheritance tree for the classes concerned with data structure definitions.
10
11 There are very few additional classes in this sub model other than those shown in the inheritance diagram below. In other words, the SDMX Base gives most of the structure of this sub model both in terms of associations and in terms of attributes. The relationship diagrams shown in this section show clearly when these associations are inherited from the SDMX Base (see the Appendix “A Short Guide to UML in the SDMX Information Model” to see the diagrammatic notation used to depict this).
12
13 The actual SDMX Base construct from which the concrete classes inherit depends upon the requirements of the class for:
14
15 Annotation – //AnnotableArtefact//
16 Identification – //IdentifiableArtefact//
17 Naming – //NameableArtefact//
18 Versioning – //VersionableArtefact//
19 Maintenance – //MaintainableArtefact//
20
21 == 5.2 Inheritance View ==
22
23 === 5.2.1 Class Diagram ===
24
25 [[image:SDMX 3-0-0 SECTION 2 FINAL-1.0 (1)_en_91284c0b.jpg||height="762" width="598"]]
26
27 **Figure 27 Class inheritance in the Data Structure Definition and Data Set Packages**
28
29 === 5.2.2 Explanation of the Diagram ===
30
31 ==== 5.2.2.1 Narrative ====
32
33 Those classes in the SDMX metamodel which require annotations inherit from //AnnotableArtefact//. These are:
34
Helena 8.3 35 //IdentifiableArtefact
36 DataSet
37 Key// (and therefore //SeriesKey// and //GroupKey//)
Helena 2.1 38 //Observation//
39
40 Those classes in the SDMX metamodel which require annotations and global identity are derived from //IdentifiableArtefact//. These are:
41
Helena 8.3 42 //NameableArtefact
43 ComponentList
44 Component//
Helena 2.1 45
46 Those classes in the SDMX metamodel which require annotations, global identity, multilingual name and multilingual description are derived from //NameableArtefact//. These are:
47
Helena 8.3 48 //VersionableArtefact
49 Item//
Helena 2.1 50
51 The classes in the SDMX metamodel which require annotations, global identity, multilingual name and multilingual description, and versioning are derived from //VersionableArtefact//. These are:
52
53 //MaintainableArtefact//
54
55 Abstract classes which represent information that is maintained by Maintenance Agencies all inherit from //MaintainableArtefact//, they also inherit all the features of a //VersionableArtefact//, and are:
56
Helena 8.3 57 //StructureUsage
58 Structure
59 ItemScheme//
Helena 2.1 60
61 All the above classes are abstract. The key to understanding the class diagrams presented in this section are the concrete classes that inherit from these abstract classes.
62
63 Those concrete classes in the SDMX Data Structure Definition and Dataset packages of the metamodel which require to be maintained by Agencies all inherit (via other abstract classes) from //MaintainableArtefact//, these are:
64
65 Dataflow
66 DataStructureDefinition
67
68 The component structures that are lists of lists, inherit directly from //Structure//. A //Structure// contains several lists of components. The concrete class that inherits from //Structure// is:
69
70 DataStructureDefinition
71
72 A DataStructureDefinition contains a list of dimensions, a list of measures and a list of attributes.
73
74 The concrete classes which inherit from //ComponentList// and are subcomponents of the DataStructureDefinition are:
75
76 DimensionDescriptor – content is Dimension and TimeDimension
77 DimensionGroupDescriptor – content is an association to Dimension, TimeDimension
78 MeasureDescriptor – content is Measure
79 AttributeDescriptor – content is DataAttribute and an association to MetadataAttribute
80
81 The classes that inherit from //Component// are:
82
83 Measure
84
85 //DimensionComponent// and thereby its sub classes of Dimension and TimeDimension
86 //Attribute// and thereby its sub classes of DataAttribute and MetadataAttribute
87
88 The concrete classes identified above are the majority of the classes required to define the metamodel for the DataStructureDefinition. The diagrams and explanations in the rest of this section show how these concrete classes are related in order to support the functionality required.
89
90 == 5.3 Data Structure Definition – Relationship View ==
91
92 === 5.3.1 Class Diagram ===
93
94 [[image:SDMX 3-0-0 SECTION 2 FINAL-1.0 (1)_en_c415af49.jpg||height="478" width="583"]]
95
96 **Figure 28 Relationship class diagram of the Data Structure Definition excluding representation**
97
98 === 5.3.2 Explanation of the Diagrams ===
99
100 ==== 5.3.2.1 Narrative ====
101
102 A DataStructureDefinition defines the Dimensions, TimeDimension, DataAttributes, and Measures, and associated Representations, that comprise the valid structure of data and related attributes that are contained in a DataSet, which is defined by a Dataflow. In addition, a DataStructureDefinition may be related to one MetadataStructureDefinition, in order to use the latter’s MetadataAttributes, by relating them to other //Components// within the DSD, as explained below.
103
104 The Dataflow may also have additional metadata attached that define qualitative information and Constraints on the use of the DataStructureDefinition such as the subset of Codes used in a Dimension (this is covered later in this document – see sections “Constraints” and “Data Provisioning”). Each Dataflow has a maximum of one DataStructureDefinition specified which defines the structure of any DataSets to be reported/disseminated.
105
106 There are two types of dimensions each having a common association to Concept:
107
108 * Dimension
109 * TimeDimension
110
111 Note that DimensionComponent can be any or all its sub classes i.e., Dimension, TimeDimension.
112
113 The //DimensionComponent//, DataAttribute, MetadataAttribute and Measure link to the Concept that defines its name and semantic (/conceptIdentity association to Concept). The DataAttribute, Dimension (but not TimeDimension) and Measure can optionally have a +conceptRole association with a Concept that identifies its role in the DataStructureDefinition, or one of the standard pre-defined roles, i.e., those published in "GUIDELINES FOR SDMX CONCEPT ROLES" by the SDMX SWG. The use of these roles is to enable applications to process the data in a meaningful way (e.g., relating a dimension value to a mapping vector). It is expected, beyond the standard roles published by the SWG, that communities (such as the official statistics community) will harmonise such roles within their community so that data can be exchanged and shared in a meaningful way within that community.
114
115 The valid values for a //DimensionComponent//, Measure, DataAttribute or MetadataAttribute, when used in this DataStructureDefinition, are defined by the Representation. This Representation is taken from the Concept definition (coreRepresentation) unless it is overridden in this DataStructureDefinition (localRepresentation) – see Figure 28. Note also that TimeDimension is constrained to specific FacetValueTypes. Moreover, the Representations of MetadataAttributes are specified in the corresponding MetadataStructureDefinition, linked by the DataStructureDefinition.
116
117 There will always be a DimensionDescriptor grouping that identifies all of the Dimension comprising the full key. Together the Dimensions specify the key of an Observation.
118
119 The //DimensionComponent// can optionally be grouped by multiple GroupDimensionDescriptors each of which identifies the group of Dimensions that can form a partial key. The GroupDimensionDescriptor must be identified (GroupDimensionDescriptor.id) and this is used in the GroupKey of the DataSet to declare which DataAttributes or MetadataAttributes are reported at this group level in the DataSet.
120
121 There can be a maximum of one TimeDimension specified in the DimensionDescriptor. The TimeDimension is used to specify the Concept used to convey the time period of the observation in a data set. The TimeDimension must contain a valid representation of time and cannot be coded.
122
123 here can be one or more Measures under the MeasureDescriptor. Measures represent the observable phenomena. Each Measure may have a valid representation, a maxOccurs attribute limiting the maximum number of values per Measure (which may be set to 'unbounded' for unlimited occurrences), as well as a minOccurs attribute, indicating the minimum required number of values, when the Measure is reported. If minOccurs or maxOccurs are omitted (they both default to ‘1’), the Measure is considered to take a single value; otherwise, it is an array. Moreover, the usage attribute indicates whether a Measure must be reported or not, by the corresponding values: mandatory or optional.
124
125 The AttributeDescriptor may contain one or more //Attribute//s, i.e., at least one DataAttribute definition or one MetadataAttribute reference.
126
127 The DataAttribute defines a characteristic of data that are collected or disseminated and is grouped in the DataStructureDefinition by a single AttributeDescriptor. The DataAttribute can be indicated if it must be reported or not, by the corresponding value of the usage attribute: i.e., mandatory or optional. The property minOccurs specifies the minimum number of array values to be included when the DataAttribute is reported. Moreover, a maxOccurs attribute indicates whether the DataAttribute may need to report more than one values, i.e., an array of values. The DataAttribute may play a specific role in the structure and this is specified by the +role association to the Concept that identifies its role.
128
129 The MetadataAttribute defines reference metadata that may be collected or disseminated and is grouped together with DataAttribute under the AttributeDescriptor.
130
131 A DataAttribute or a MetadataAttribute (i.e., an //AttributeComponent//) is specified as being +relatedTo an AttributeRelationship, which defines the constructs to which the //AttributeComponent// is to be reported within a //DataSet//. An //AttributeComponent// can be specified as being related to one of the following artefacts:
132
133 * All data within the dataset (DataflowRelationship) – this is equivalent to attaching an Attribute to all data within the Dataflow.
134 * Dimension or set of Dimensions (DimensionRelationship)
135 * Set of Dimensions specified by a GroupKey (GroupRelationship – this is retained for compatibility reasons – or +groupKey of the DimensionRelationship)
136 * Observation (ObservationRelationship)
137 * In addition to the positioning of an //AttributeComponent// within a //DataSet//, another relationship indicates the Measure(s) for which the //AttributeComponent// is reported. Regardless of the position of the //AttributeComponent// within the //DataSet//, the //AttributeComponent// may concern one, more than one, or all Measures included in the DSD. This is expressed using the MeasureRelationship class, which relates a DataAttribute to one or more Measures. Lack of the MeasureRelationship defaults to a relationship to all Measures.
138
139 [[image:SDMX 3-0-0 SECTION 2 FINAL-1.0 (1)_en_f235bfd4.jpg||height="542" width="604"]]
140
141 **Figure 29: Attribute Attachment Defined in the Data Structure Definition**
142
143 The following table details the possible relationships a DataAttribute may specify. Note that these relationships are mutually exclusive, and therefore only one of the following is possible.
144
Helena 7.3 145 (% style="width:839.039px" %)
146 |**Relationship**|(% style="width:384px" %)**Meaning**|(% style="width:303px" %)**Location in Data Set at which the Attribute is reported**
147 |DataflowRelationship|(% style="width:384px" %)The value of the attribute is fixed for all data contained in the dataset. The Attribute value applies to all data defined by the underlying Dataflow.|(% style="width:303px" %)The attribute is reported at the Dataset level.
148 |Dimension (1..n)|(% style="width:384px" %)The value of the attribute will vary with the value(s) of the referenced Dimension(s). In this case, Group(s) to which the attribute should be attached may optionally be specified.|(% style="width:303px" %)The attribute is reported at the lowest level of the Dimension to which the Attribute is related, otherwise at the level of the Group if Attachment Group(s) is specified.
149 |Group|(% style="width:384px" %)The value of the Attribute varies with combination of values for all of the Dimensions contained in the Group. This is added as a convenience to listing all Dimensions and the attachment Group, but should only be used when the Attribute value varies based on __all__ Group Dimension values.|(% style="width:303px" %)The attribute is reported at the level of Group.
150 |Observation|(% style="width:384px" %)The value of the Attribute varies with the observed value.|(% style="width:303px" %)The attribute is reported at the level of Observation.
Helena 2.1 151
152 [[image:SDMX 3-0-0 SECTION 2 FINAL-1.0 (1)_en_42ff01fb.jpg||height="380" width="590"]]
153
154 **Figure 30: Representation of DSD Components**
155
Helena 8.4 156 Each of Dimension, TimeDimension, Measure, DataAttribute and MetadataAttribute can have a Representation specified (using the localRepresentation association). If this is not specified in the DataStructureDefinition then the representation specified for Concept (coreRepresentation) is used. Measure, and DataAttribute may be also represented by multilingual text (as seen in the DataSet diagram further down). An exception is the MetadataAttribute, where its Representation is specified in the MetadataStructureDefinition.
Helena 2.1 157
158 A DataStructureDefinition can be extended to form a derived DataStructureDefinition. This is supported in the StructureMap.
159
160 ==== 5.3.2.2 Definitions ====
161
Helena 7.2 162 :
Helena 2.1 163
164 (((
Helena 7.4 165 (% style="width:834.039px" %)
166 |**Class**|(% style="width:194px" %)**Feature**|(% style="width:454px" %)**Description**
167 |StructureUsage|(% style="width:194px" %) |(% style="width:454px" %)See “SDMX Base”.
168 |Dataflow|(% style="width:194px" %)(((
Helena 2.1 169 Inherits from
170 //StructureUsage//
Helena 7.4 171 )))|(% style="width:454px" %)Abstract concept (i.e., the structure without any data) of a flow of data that providers will provide for different reference periods.
172 | |(% style="width:194px" %)/structure|(% style="width:454px" %)Associates a Dataflow to the Data Structure Definition.
173 |DataStructureDefiniti on|(% style="width:194px" %) |(% style="width:454px" %)A collection of metadata concepts, their structure and usage when used to collect or disseminate data.
174 | |(% style="width:194px" %)/grouping|(% style="width:454px" %)An association to a set of metadata concepts that have an identified structural role in a Data Structure Definition.
175 |GroupDimensionDescrip tor|(% style="width:194px" %)(((
Helena 2.1 176 Inherits from
177 //ComponentList//
Helena 7.4 178 )))|(% style="width:454px" %)A set of metadata concepts that define a partial key derived from the Dimension Descriptor in a Data Structure Definition.
179 | |(% style="width:194px" %)/components|(% style="width:454px" %)An association to the Dimension components that comprise the group.
180 |DimensionDescriptor|(% style="width:194px" %)(((
Helena 2.1 181 Inherits from
182 //ComponentList//
Helena 7.4 183 )))|(% style="width:454px" %)An ordered set of metadata concepts that, combined, classify a statistical series, and whose values, when combined (the key) in an instance such as a data set, uniquely identify a specific observation.
184 | |(% style="width:194px" %)/components|(% style="width:454px" %)(((
185 An association to the Dimension and Time Dimension comprising the Key Descriptor.
Helena 2.1 186 )))
Helena 7.4 187 |AttributeDescriptor|(% style="width:194px" %)(((
Helena 2.1 188 Inherits from
189 //ComponentList//
Helena 7.4 190 )))|(% style="width:454px" %)A set metadata concepts that define the Attributes of a Data Structure Definition.
191 | |(% style="width:194px" %)/components|(% style="width:454px" %)An association to a Data Attribute component.
192 |MeasureDescriptor|(% style="width:194px" %)(((
Helena 2.1 193 Inherits from
194 //ComponentList//
Helena 7.4 195 )))|(% style="width:454px" %)A metadata concept that defines the Measures of a Data Structure Definition.
196 | |(% style="width:194px" %)/components|(% style="width:454px" %)An association to a Measure component.
197 |//DimensionComponent//|(% style="width:194px" %)(((
Helena 2.1 198 Inherits from
199 //Component//
200
201 Sub class Dimension
202 TimeDimension
Helena 7.4 203 )))|(% style="width:454px" %)An abstract class representing any Component that can be used for identifying observations.
204 | |(% style="width:194px" %)order|(% style="width:454px" %)Specifies the order of the Dimension Components within the DSD. The property is used to indicate the position of the Dimension Component and determines the Key for identifying observations, or series. The Time Dimension, when specified, must be the last within the Dimension Descriptor.
205 |Dimension|(% style="width:194px" %)(((
Helena 2.1 206 Inherits from
207 //DimensionComponent//
Helena 7.4 208 )))|(% style="width:454px" %)A metadata concept used (most probably together with other metadata concepts) to classify a statistical series, e.g., a statistical concept indicating a certain economic activity or a geographical reference area.
209 | |(% style="width:194px" %)/role|(% style="width:454px" %)Association to the Concept that specifies the role that that the Dimension plays in the Data Structure Definition.
210 | |(% style="width:194px" %)/conceptIdentity|(% style="width:454px" %)An association to the metadata concept which defines the semantic of the Dimension.
211 |TimeDimension|(% style="width:194px" %)(((
Helena 2.1 212 Inherits from
213 //DimensionComponent//
Helena 7.4 214 )))|(% style="width:454px" %)A metadata concept that identifies the component in the key structure that has the role of “time”.
215 |DataAttribute|(% style="width:194px" %)(((
Helena 2.1 216 Inherits from
217
218 //Component//
Helena 7.4 219 )))|(% style="width:454px" %)A characteristic of an object or entity.
220 | |(% style="width:194px" %)/role|(% style="width:454px" %)Association to the Concept that specifies the role that that the Data Attribute plays in the Data Structure Definition.
221 | |(% style="width:194px" %)minOccurs|(% style="width:454px" %)Defines the minimum required occurrences for the Attribute. When equals to zero, the Attribute is conditional.
222 | |(% style="width:194px" %)maxOccurs|(% style="width:454px" %)Defines the maximum allowed occurrences for the Attribute.
223 | |(% style="width:194px" %)usage|(% style="width:454px" %)Defines whether a Data Attribute must be reported or not.
224 | |(% style="width:194px" %)+relatedTo|(% style="width:454px" %)Association to an Attribute Relationship.
225 | |(% style="width:194px" %)/conceptIdentity|(% style="width:454px" %)An association to the Concept which defines the semantic of the component.
226 |Measure|(% style="width:194px" %)(((
Helena 2.1 227 Inherits from
228 //Component//
Helena 7.4 229 )))|(% style="width:454px" %)The metadata concept that is the phenomenon to be measured in a data set. In a data set the instance of the measure is often called the observation.
230 | |(% style="width:194px" %)/conceptIdentity|(% style="width:454px" %)An association to the Concept which carries the values of the measures.
231 | |(% style="width:194px" %)minOccurs|(% style="width:454px" %)Defines the minimum required occurrences for the Measure. When equals to zero, the Measure is conditional.
232 | |(% style="width:194px" %)maxOccurs|(% style="width:454px" %)Defines the maximum allowed occurrences for the Measure.
233 | |(% style="width:194px" %)usage|(% style="width:454px" %)Defines whether a Measure must be reported or not.
234 |//AttributeRelationship//|(% style="width:194px" %)(((
Helena 2.1 235 Abstract Class
236 Sub classes
237 ObservationRelationship
238 GroupRelationship DimensionRelationshi p
Helena 7.4 239 )))|(% style="width:454px" %)Specifies the type of artefact to which a Data Attribute can be attached in a Data Set.
240 |ObservationRelationsh ip|(% style="width:194px" %) |(% style="width:454px" %)The Data Attribute is related to the observations of the Data Set.
241 |GroupRelationship|(% style="width:194px" %) |(% style="width:454px" %)The Data Attribute is related to a Group Dimension Descriptor construct.
242 | |(% style="width:194px" %)+groupKey|(% style="width:454px" %)An association to the Group Dimension Descriptor
243 |DimensionRelationship|(% style="width:194px" %) |(% style="width:454px" %)The Data Attribute is related to a set of Dimensions.
244 | |(% style="width:194px" %)+dimensions|(% style="width:454px" %)Association to the set of Dimensions to which the Data Attribute is related.
245 | |(% style="width:194px" %)+groupKey|(% style="width:454px" %)Association to the Group Dimension Descriptor which specifies the set of Dimensions to which the Data Attribute is attached.
246 |MeasureRelationship|(% style="width:194px" %) |(% style="width:454px" %)The Measures that a Data Attribute is reported for.
247 | |(% style="width:194px" %)+measures|(% style="width:454px" %)Association to the set of Measures to which a Data Attribute is related to.
248 |SentinelValuesType|(% style="width:194px" %) |(% style="width:454px" %)This facet indicates that an Attribute or a Measure has sentinel values with special meaning within their data type. This is realised by providing such values within the TextFormat, in addition to any textType or other Facet.
249 |SentinelValue|(% style="width:194px" %) |(% style="width:454px" %)A value that has a special meaning within the text format representation of the Component.
250 | |(% style="width:194px" %)+name|(% style="width:454px" %)An association of a Sentinel Value to a multilingual name.
251 | |(% style="width:194px" %)+description|(% style="width:454px" %)An association of a Sentinel Value to a multilingual description.
Helena 2.1 252 )))
253
254 The explanation of the classes, attributes, and associations comprising the Representation is described in the section on the SDMX Base.
255
256 == 5.4 Data Set – Relationship View ==
257
258 === 5.4.1 Context ===
259
260 A data set comprises the collection of data values and associated metadata that are collected or disseminated according to a known DataStructureDefinition.
261
262 === 5.4.2 Class Diagram ===
263
264 [[image:SDMX 3-0-0 SECTION 2 FINAL-1.0 (1)_en_78f5c87f.jpg||height="822" width="535"]]
265
266 **Figure 31: Class Diagram of the Data Set**
267
268 === 5.4.3 Explanation of the Diagram ===
269
270 ==== 5.4.3.1 Narrative – Data Set ====
271
272 Note that the //DataSet// must conform to the DataStructureDefinition associated to the Dataflow for which this DataSet is an “instance of data”. Whilst the model shows the association to the classes of the DataStructureDefinition, this is for conceptual purposes to show the link to the DataStructureDefinition. In the actual //DataSet// as exchanged there must, of course, be a reference to the DataStructureDefinition and optionally a Dataflow or a ProvisionAgreement, but the DataStructureDefinition is not necessarily exchanged with the data. Therefore, the DataStructureDefinition classes are shown in the grey areas, as these are not a part of the //DataSet// when the //DataSet// is exchanged. However, the structural metadata in the DataStructureDefinition can be used by an application to validate the contents of the //DataSet// in terms of the valid content of a //KeyValue// as defined by the Representation in the DataStructureDefinition.
273
274 An organisation playing the role of DataProvider can be responsible for one or more //DataSet//.
275
276 A //DataSet// is formatted as a DataStructureDefinition specific data set (StructureSpecificDataSet). The structured data set is structured according to one specific DataStructureDefinition; hence the latter is required for validation at the syntax level.
277
Helena 8.6 278 A //DataSet// is a collection of a set of //Observation//s that share the same dimensionality, which is specified by a set of unique components (Dimension, TimeDimension) defined in the DimensionDescriptor of the DataStructureDefinition, together with associated
Helena 2.1 279
280 //AttributeValue//s that define specific characteristics about the artefact to which it is attached – //Observation//s, set of Dimensions. It can be structured in terms of a SeriesKey to which //Observation//s are reported.
281
282 The //Observation// can be the value(s) of the variable(s) being measured for the Concept associated to the Measure(s) in the MeasureDescriptor of the DataStructureDefinition. Each //Observation// associates one or more //ObservationValue//s with a KeyValue (+observationDimension) which is the value for the “Dimension at the Observation Level”. Any Dimension can be specified as being the “Dimension at the Observation Level”, and this specification is made at the level of the //DataSet// (i.e., it must be the same Dimension for the entire //DataSet//).
283
284 The //KeyValue// is a value for one of TimeDimension or Dimension specified in the DataStructureDefinition. If it is a Dimension, it can be coded (CodedKeyValue) or uncoded (UncodedKeyValue). If it is the TimeDimension then it is a TimeKeyValue. The actual value that the CodedDimensionValue can take must be one of the Codes in the Codelist specified as the Representation of the Dimension in the DataStructureDefinition.
285
286 An ObservationValue can be coded – this is the CodedObservation – or it can be uncoded – this is the UncodedObservation. In the case of uncoded observations, the values may be multilingual – expressed via the TextMeasureValue – or not (OtherUncodedMeasureValue).
287
288 The GroupKey is a subunit of the //Key// that has the same dimensionality as the SeriesKey but defines a subset of the KeyValues of the SeriesKey. Its sub dimension structure is defined in the GroupDimensionDescriptor of the DataStructureDefinition identified by the same id as the GroupKey. The id identifies a “type” of group and the purpose of the GroupKey is to report one or more //AttributeValue// that are contained at this group level. The GroupKey is present when the GroupDimensionDescriptor is related to the GroupRelationship in the DataStructureDefinition. There can be many types of groups in a //DataSet//. If the Group is related to the DimensionRelationship in the DataStructureDefinition then the //AttributeValue// will be reported with the appropriate dimension in the SeriesKey or Observation.
289
290 In this way each of SeriesKey, GroupKey, and Observation can have zero or more //AttributeValue//s that define some metadata about the object to which it is associated. The //AttributeValue// may be either a //DataAttributeValue// or a //MetadataAttributeValue//, representing values of DataAttributes defined in the DSD or MetadataAttributes of the linked MSD, respectively. The allowable Concepts and the objects to which these metadata can be associated (attached) are defined in the DataStructureDefinition and the linked MetadataStructureDefinition.
291
292 The //AttributeValue// links to the object type (SeriesKey, GroupKey, Observation) to which it is associated.
293
294 ==== 5.4.3.2 Definitions ====
295
Helena 7.5 296 (% style="width:812.039px" %)
Helena 9.1 297 |(% style="width:147px" %)**Class**|(% style="width:246px" %)**Feature**|(% style="width:395px" %)**Description**
298 |(% style="width:147px" %)//DataSet//|(% style="width:246px" %)(((
Helena 2.1 299 Abstract Class
300 Sub classes
301 StructureSpecificData
302 Set
Helena 9.1 303 )))|(% style="width:395px" %)An organised collection of data.
304 |(% style="width:147px" %) |(% style="width:246px" %)reportingBegin|(% style="width:395px" %)A specific time period in a known system of time periods that identifies the start period of a report.
305 |(% style="width:147px" %) |(% style="width:246px" %)reportingEnd|(% style="width:395px" %)A specific time period in a known system of time periods that identifies the end period of a report.
306 |(% style="width:147px" %) |(% style="width:246px" %)dataExtractionDate|(% style="width:395px" %)A specific time period that identifies the date and time that the data are extracted from a data source.
307 |(% style="width:147px" %) |(% style="width:246px" %)validFrom|(% style="width:395px" %)Indicates the inclusive start time indicating the validity of the information in the data set.
308 |(% style="width:147px" %) |(% style="width:246px" %)validTo|(% style="width:395px" %)Indicates the inclusive end time indicating the validity of the information in the data set.
309 |(% style="width:147px" %) |(% style="width:246px" %)publicationYear|(% style="width:395px" %)Specifies the year of publication of the data or metadata in terms of whatever provisioning agreements might be in force.
310 |(% style="width:147px" %) |(% style="width:246px" %)publicationPeriod|(% style="width:395px" %)Specifies the period of publication of the data or metadata in terms of whatever provisioning agreements might be in force.
311 |(% style="width:147px" %) |(% style="width:246px" %)setId|(% style="width:395px" %)Provides an identification of the data set.
312 |(% style="width:147px" %) |(% style="width:246px" %)action|(% style="width:395px" %)Defines the action to be taken by the recipient system (information, append, replace, delete)
313 |(% style="width:147px" %) |(% style="width:246px" %)describedBy|(% style="width:395px" %)Associates a Dataflow and thereby a Data Structure Definition to the data set.
314 |(% style="width:147px" %) |(% style="width:246px" %)+structuredBy|(% style="width:395px" %)Associates the Data Structure Definition that defines the structure of the Data Set. Note that the Data Structure Definition is the same as that associated (non-mandatory) to the Dataflow.
315 |(% style="width:147px" %) |(% style="width:246px" %)+publishedBy|(% style="width:395px" %)Associates the Data Provider that reports/publishes the data.
316 |(% style="width:147px" %)StructureSpecific DataSet|(% style="width:246px" %) |(% style="width:395px" %)An XML specific data format structure that contains data corresponding to one specific Data Structure Definition.
317 |(% style="width:147px" %)//Key//|(% style="width:246px" %)(((
Helena 2.1 318 Abstract class Sub classes
319 SeriesKey
320 GroupKey
Helena 9.1 321 )))|(% style="width:395px" %)Comprises the cross product of values of dimensions that identify uniquely an Observation.
322 |(% style="width:147px" %) |(% style="width:246px" %)keyValues|(% style="width:395px" %)Association to the individual Key Values that comprise the Key.
323 |(% style="width:147px" %) |(% style="width:246px" %)+attachedAttribute|(% style="width:395px" %)Association to the Attribute Values relating to the Series Key or Group Key.
324 |(% style="width:147px" %)//KeyValue//|(% style="width:246px" %)(((
Helena 2.1 325 Abstract class Sub classes
326 TimeKeyValue
327 CodedKeyValue
328 UncodedKeyValue
Helena 9.1 329 )))|(% style="width:395px" %)The value of a component of a key such as the value of the instance a Dimension in a Dimension Descriptor of a Data Structure Definition.
330 |(% style="width:147px" %) |(% style="width:246px" %)+valueFor|(% style="width:395px" %)(((
Helena 2.1 331 Association to the key component in the Data Structure Definition for which this Key Value is a valid representation.
332 Note that this is conceptual association as the key component is identified explicitly in the data set.
333 )))
Helena 9.1 334 |(% style="width:147px" %)TimeKeyValue|(% style="width:246px" %)(((
Helena 2.1 335 Inherits from
336 //KeyValue//
Helena 9.1 337 )))|(% style="width:395px" %)The value of the Time Dimension component of the key.
338 |(% style="width:147px" %)CodedKeyValue|(% style="width:246px" %)(((
Helena 2.1 339 Inherits from
340 //KeyValue//
Helena 9.1 341 )))|(% style="width:395px" %)The value of a coded component of the key. The value is the Code to which this class is associated.
342 |(% style="width:147px" %) |(% style="width:246px" %)+valueOf|(% style="width:395px" %)Association to the Code. Note that this is a conceptual association showing that the Code must exist in the Code list associated with the Dimension in the Data Structure Definition. In the actual Data Set the value of the Code is placed in the Key Value.
343 |(% style="width:147px" %)UnCodedKeyValue|(% style="width:246px" %)(((
Helena 2.1 344 Inherits from
345 //KeyValue//
Helena 9.1 346 )))|(% style="width:395px" %)The value of an uncoded component of the key.
347 |(% style="width:147px" %) |(% style="width:246px" %)value|(% style="width:395px" %)The value of the key component.
348 |(% style="width:147px" %) |(% style="width:246px" %)startTime|(% style="width:395px" %)This attribute is only used if the textFormat of the attribute is of the Timespan type in the Data Structure Definition (in which case the value field takes a duration).
349 |(% style="width:147px" %)GroupKey|(% style="width:246px" %)(((
Helena 2.1 350 Inherits from
351 //Key//
Helena 9.1 352 )))|(% style="width:395px" %)A set of Key Values that comprise a partial key, of the same dimensionality as the Time Series Key for the purpose of attaching Data Attributes.
353 |(% style="width:147px" %) |(% style="width:246px" %)+describedBy|(% style="width:395px" %)Associates the Group Dimension Descriptor defined in the Data Structure Definition.
354 |(% style="width:147px" %)SeriesKey|(% style="width:246px" %)(((
Helena 2.1 355 Inherits from
356 //Key//
Helena 9.1 357 )))|(% style="width:395px" %)Comprises the cross product of values of all the Key Values that, together with the Key Value of the +observation Dimension identify uniquely an Observation.
358 |(% style="width:147px" %) |(% style="width:246px" %)+describedBy|(% style="width:395px" %)Associates the Dimension Descriptor defined in the Data Structure Definition.
359 |(% style="width:147px" %)Observation|(% style="width:246px" %) |(% style="width:395px" %)The value(s) of the observed phenomenon in the context of the Key Values comprising the key.
360 |(% style="width:147px" %) |(% style="width:246px" %)+valueFor|(% style="width:395px" %)(((
Helena 2.1 361 Associates the Measure(s) defined in the Data Structure Definition.
362
363 The source multiplicity (1..*) indicates that more than one values may be provided for a Measure, if the latter allows it.
364 )))
Helena 9.1 365 |(% style="width:147px" %) |(% style="width:246px" %)+attachedAttribute|(% style="width:395px" %)Association to the Attribute Values relating to the Observation.
366 |(% style="width:147px" %) |(% style="width:246px" %)+observationDimension|(% style="width:395px" %)Association to the Key Value that holds the value of the “Dimension at the Observation Level”.
367 |(% style="width:147px" %)//ObservationValue//|(% style="width:246px" %)(((
Helena 2.1 368 Abstract class
369 Sub classes
Helena 9.1 370 //UncodedObservationValue//
Helena 2.1 371 CodedObservation
Helena 9.1 372 )))|(% style="width:395px" %)
373 |(% style="width:147px" %)//UncodedObservatio nValue//|(% style="width:246px" %)(((
Helena 2.1 374 Abstract class
375 Inherits from
376 //ObservationValue//
377 Sub classes
Helena 9.1 378 OtherUncodedMeasureValue
Helena 2.1 379 TextMeasureValue
Helena 9.1 380 )))|(% style="width:395px" %)
381 |(% style="width:147px" %)OtherUncodedMeasu reValue|(% style="width:246px" %)(((
Helena 2.1 382 Inherits from
383
Helena 9.1 384 //UncodedObservationValue//
385 )))|(% style="width:395px" %)An observation that has a text value.
386 |(% style="width:147px" %) |(% style="width:246px" %)value|(% style="width:395px" %)The value of the Uncoded Observation.
387 |(% style="width:147px" %) |(% style="width:246px" %)startTime|(% style="width:395px" %)This attribute is only used if the textFormat of the Measure is of the Timespan type in the Data Structure Definition (in which case the value field takes a duration).
388 |(% style="width:147px" %)TextMeasureValue|(% style="width:246px" %)(((
Helena 2.1 389 Inherits from
Helena 9.1 390 //UncodedObservationValue//
391 )))|(% style="width:395px" %)An observation that has a localised text value
392 |(% style="width:147px" %) |(% style="width:246px" %)text|(% style="width:395px" %)The localised text values.
393 |(% style="width:147px" %)CodedObservation|(% style="width:246px" %)(((
Helena 2.1 394 Inherits from
395 //ObservationValue//
Helena 9.1 396 )))|(% style="width:395px" %)An Observation that takes its value from a code in a Code list.
397 |(% style="width:147px" %) |(% style="width:246px" %)+valueOf|(% style="width:395px" %)Association to the Code that is the value of the Observation. Note that this is a conceptual association showing that the Code must exist in the Codelist(s) associated with the Measure(s) in the Data Structure Definition. In the actual Data Set the value of the Code is placed in the Observation.
398 |(% style="width:147px" %)//AttributeValue//|(% style="width:246px" %)(((
Helena 2.1 399 Abstract class
400 Sub classes
Helena 9.1 401 //DataAttributeValue// //MetadataAttributeValue//
402 )))|(% style="width:395px" %)Represents the value for any Attribute reported in the Dataset, i.e., Data or Metadata Attribute.
403 |(% style="width:147px" %)//DataAttributeValue//|(% style="width:246px" %)(((
Helena 2.1 404 Abstract class
405 Inherits from
406 //AttributeValue//
407 Sub classes
Helena 9.1 408 //UncodedAttributeValue
409 CodedAttributeValue//
410 )))|(% style="width:395px" %)The value of a Data Attribute, such as the instance of a Coded Attribute or of an Uncoded Attribute in a structure such as a Data Structure Definition.
411 |(% style="width:147px" %) |(% style="width:246px" %)+valueFor|(% style="width:395px" %)(((
Helena 2.1 412 Association to the Data Attribute defined in the Data Structure Definition. Note that this is conceptual association as the Concept is identified explicitly in the data set.
413 The source multiplicity (1..*) indicates the possibility to provide more than one values for a Data Attribute, if the latter allows it.
414 )))
Helena 9.1 415 |(% style="width:147px" %)//MetadataAttribute Value//|(% style="width:246px" %)(((
416 (explained further in section “Metadata Set”)
417 )))|(% style="width:395px" %)(((
Helena 2.1 418 The value of a Metadata Attribute, as specified in the Metadata Structure Definition, which is linked in the Data Structure
419
420 Definition
421 )))
Helena 9.1 422 |(% style="width:147px" %)//UncodedAttributeV alue//|(% style="width:246px" %)(((
Helena 2.1 423 Inherits from
424 //AttributeValue//
425 Sub classes
426 OtherUncodedAttribute Value
427 TextAttributeValue
Helena 9.1 428 )))|(% style="width:395px" %)
429 |(% style="width:147px" %)OtherUncodedAttri buteValue|(% style="width:246px" %)(((
Helena 2.1 430 Inherits from
Helena 9.1 431 //UncodedObservationValue//
432 )))|(% style="width:395px" %)An attribute value that has a text value
433 |(% style="width:147px" %) |(% style="width:246px" %)value|(% style="width:395px" %)The value of the Uncoded attribute.
434 |(% style="width:147px" %) |(% style="width:246px" %)startTime|(% style="width:395px" %)This attribute is only used if the textFormat of the attribute is of the Timespan type in the Data Structure Definition (in which case the value field takes a duration).
435 |(% style="width:147px" %)TextAttributeValu e|(% style="width:246px" %)(((
Helena 2.1 436 Inherits from
437 //UncodedAttributeValue//
Helena 9.1 438 )))|(% style="width:395px" %)An attribute that has a localised text value
439 |(% style="width:147px" %) |(% style="width:246px" %)text|(% style="width:395px" %)The localised text values.
440 |(% style="width:147px" %)CodedAttributeVal ue|(% style="width:246px" %)(((
Helena 2.1 441 Inherits from
442 //AttributeValue//
Helena 9.1 443 )))|(% style="width:395px" %)An attribute that takes it value from a Code in Code list.
444 |(% style="width:147px" %) |(% style="width:246px" %)+valueOf|(% style="width:395px" %)Association to the Code that is the value of the Attribute Value. Note that this is a conceptual association showing that the Code must exist in the Code list associated with the Data Attribute in the Data Structure Definition. In the actual Data Set the value of the Code is placed in the Attribute Value.
Helena 2.1 445
Helena 7.2 446