Changes for page 5 Data Structure Definition and Dataset
Last modified by Elena on 2025/09/10 11:19
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -13,9 +13,13 @@ 13 13 The actual SDMX Base construct from which the concrete classes inherit depends upon the requirements of the class for: 14 14 15 15 Annotation – //AnnotableArtefact// 16 + 16 16 Identification – //IdentifiableArtefact// 18 + 17 17 Naming – //NameableArtefact// 20 + 18 18 Versioning – //VersionableArtefact// 22 + 19 19 Maintenance – //MaintainableArtefact// 20 20 21 21 == 5.2 Inheritance View == ... ... @@ -32,22 +32,28 @@ 32 32 33 33 Those classes in the SDMX metamodel which require annotations inherit from //AnnotableArtefact//. These are: 34 34 35 -//IdentifiableArtefact 36 -DataSet 37 -Key// (and therefore //SeriesKey// and //GroupKey//) 39 +//IdentifiableArtefact// 40 + 41 +//DataSet// 42 + 43 +//Key// (and therefore //SeriesKey// and //GroupKey//) 44 + 38 38 //Observation// 39 39 40 40 Those classes in the SDMX metamodel which require annotations and global identity are derived from //IdentifiableArtefact//. These are: 41 41 42 -//NameableArtefact 43 -ComponentList 44 -Component// 49 +//NameableArtefact// 45 45 51 +//ComponentList// 52 + 53 +//Component// 54 + 46 46 Those classes in the SDMX metamodel which require annotations, global identity, multilingual name and multilingual description are derived from //NameableArtefact//. These are: 47 47 48 -//VersionableArtefact 49 -Item// 57 +//VersionableArtefact// 50 50 59 +//Item// 60 + 51 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 52 53 53 //MaintainableArtefact// ... ... @@ -54,17 +54,22 @@ 54 54 55 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 56 57 -//StructureUsage 58 -Structure 59 -ItemScheme// 67 +//StructureUsage// 60 60 69 +//Structure// 70 + 71 +//ItemScheme// 72 + 61 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 62 63 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 64 65 65 Dataflow 78 + 66 66 DataStructureDefinition 80 + 67 67 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: 82 + 68 68 DataStructureDefinition 69 69 70 70 A DataStructureDefinition contains a list of dimensions, a list of measures and a list of attributes. ... ... @@ -72,14 +72,19 @@ 72 72 The concrete classes which inherit from //ComponentList// and are subcomponents of the DataStructureDefinition are: 73 73 74 74 DimensionDescriptor – content is Dimension and TimeDimension 90 + 75 75 DimensionGroupDescriptor – content is an association to Dimension, TimeDimension 92 + 76 76 MeasureDescriptor – content is Measure 94 + 77 77 AttributeDescriptor – content is DataAttribute and an association to MetadataAttribute 78 78 79 79 The classes that inherit from //Component// are: 80 80 81 81 Measure 100 + 82 82 //DimensionComponent// and thereby its sub classes of Dimension and TimeDimension 102 + 83 83 //Attribute// and thereby its sub classes of DataAttribute and MetadataAttribute 84 84 85 85 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. ... ... @@ -139,12 +139,11 @@ 139 139 140 140 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. 141 141 142 -(% style="width:1142.83px" %) 143 -|**Relationship**|(% style="width:537px" %)**Meaning**|(% style="width:434px" %)**Location in Data Set at which the Attribute is reported** 144 -|DataflowRelationship|(% style="width:537px" %)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:434px" %)The attribute is reported at the Dataset level. 145 -|Dimension (1..n)|(% style="width:537px" %)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:434px" %)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. 146 -|Group|(% style="width:537px" %)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:434px" %)The attribute is reported at the level of Group. 147 -|Observation|(% style="width:537px" %)The value of the Attribute varies with the observed value.|(% style="width:434px" %)The attribute is reported at the level of Observation. 162 +|**Relationship**|**Meaning**|**Location in Data Set at which the Attribute is reported** 163 +|DataflowRelationship|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.|The attribute is reported at the Dataset level. 164 +|Dimension (1..n)|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.|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. 165 +|Group|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.|The attribute is reported at the level of Group. 166 +|Observation|The value of the Attribute varies with the observed value.|The attribute is reported at the level of Observation. 148 148 149 149 [[image:1749246368790-555.jpeg]] 150 150 ... ... @@ -204,6 +204,9 @@ 204 204 TimeDimension 205 205 )))|An abstract class representing any Component that can be used for identifying observations. 206 206 226 + 227 + 228 + 207 207 |**Class**|**Feature**|**Description** 208 208 | |Order|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. 209 209 |Dimension|((( ... ... @@ -266,11 +266,11 @@ 266 266 267 267 ==== //5.4 Data Set – Relationship View// ==== 268 268 269 -=== 5.4.1 Context === 291 +===== 5.4.1 Context ===== 270 270 271 271 A data set comprises the collection of data values and associated metadata that are collected or disseminated according to a known DataStructureDefinition. 272 272 273 -=== 5.4.2 Class Diagram === 295 +===== 5.4.2 Class Diagram ===== 274 274 275 275 [[image:1749246368794-672.jpeg]] 276 276 ... ... @@ -296,7 +296,7 @@ 296 296 297 297 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. 298 298 299 -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.321 +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. 300 300 301 301 The //AttributeValue// links to the object type (SeriesKey, GroupKey, Observation) to which it is associated. 302 302 ... ... @@ -403,46 +403,61 @@ 403 403 404 404 Sub classes 405 405 406 -//UncodedObservationValue// 428 +//UncodedObservationVal ue// 407 407 408 408 CodedObservation 409 409 )))| 410 410 |//UncodedObservatio nValue//|((( 411 411 Abstract class 434 + 412 412 Inherits from 436 + 413 413 //ObservationValue// 438 + 414 414 Sub classes 415 -OtherUncodedMeasureValue 440 + 441 +OtherUncodedMeasureVa lue 442 + 416 416 TextMeasureValue 417 417 )))| 418 418 |OtherUncodedMeasu reValue|((( 419 419 Inherits from 420 -//UncodedObservationValue// 447 + 448 +//UncodedObservationVal ue// 421 421 )))|An observation that has a text value. 422 422 | |value|The value of the Uncoded Observation. 423 423 | |startTime|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). 424 424 |TextMeasureValue|((( 425 425 Inherits from 426 -//UncodedObservationValue// 454 + 455 +//UncodedObservationVal ue// 427 427 )))|An observation that has a localised text value 428 428 | |text|The localised text values. 429 429 |CodedObservation|((( 430 430 Inherits from 460 + 431 431 //ObservationValue// 432 432 )))|An Observation that takes its value from a code in a Code list. 433 433 | |+valueOf|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. 434 434 |//AttributeValue//|((( 435 435 Abstract class 466 + 436 436 Sub classes 468 + 437 437 //DataAttributeValue// //MetadataAttributeValu e// 438 438 )))|Represents the value for any Attribute reported in the Dataset, i.e., Data or Metadata Attribute. 439 439 |//DataAttributeValu e//|((( 440 440 Abstract class 473 + 441 441 Inherits from 475 + 442 442 //AttributeValue// 477 + 443 443 Sub classes 444 -//UncodedAttributeValue 445 -CodedAttributeValue// 479 + 480 +//UncodedAttributeValue// 481 + 482 +//CodedAttributeValue// 446 446 )))|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. 447 447 | |+valueFor|((( 448 448 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. ... ... @@ -456,14 +456,20 @@ 456 456 )))|The value of a Metadata Attribute, as specified in the Metadata Structure Definition, which is linked in the Data Structure Definition 457 457 |//UncodedAttributeV alue//|((( 458 458 Inherits from 496 + 459 459 //AttributeValue// 498 + 460 460 Sub classes 500 + 461 461 OtherUncodedAttribute 502 + 462 462 Value 504 + 463 463 TextAttributeValue 464 464 )))| 465 465 |OtherUncodedAttri buteValue|((( 466 466 Inherits from 509 + 467 467 //UncodedObservationVal ue// 468 468 )))|An attribute value that has a text value 469 469 | |value|The value of the Uncoded attribute. ... ... @@ -470,11 +470,13 @@ 470 470 | |startTime|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). 471 471 |TextAttributeValu e|((( 472 472 Inherits from 516 + 473 473 //UncodedAttributeValue// 474 474 )))|An attribute that has a localised text value 475 475 | |text|The localised text values. 476 476 |CodedAttributeVal ue|((( 477 477 Inherits from 522 + 478 478 //AttributeValue// 479 479 )))|An attribute that takes it value from a Code in Code list. 480 480 | |+valueOf|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.