Wiki source code of 4 Specific Item Schemes

Version 36.8 by Helena K. on 2026/06/08 16:29

Show last authors
1 {{box title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 == 4.1 Introduction ==
6
7 The structures that are an arrangement of objects into [[hierarchies>>doc:sdmx:Glossary 2\.1.Hierarchy.WebHome]] or lists based on characteristics, and which are maintained as a group inherit from //ItemScheme//. These concrete classes are:
8
9 [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]]
10 ConceptScheme
11 CategoryScheme
12 AgencyScheme, DataProviderScheme, MetadataProviderScheme, DataConsumerScheme, OrganisationUnitScheme, which all inherit from the abstract class //OrganisationScheme//
13 ReportingTaxonomy
14 TransformationScheme
15 RulesetScheme
16 UserDefinedOperatorScheme
17 NamePersonalisationScheme
18 CustomTypeScheme
19 VtlMappingScheme
20
21 Note that the [[VTL>>doc:sdmx:Glossary 2\.1.Validation and transformation language.WebHome]] related schemes (the last 6 of the above list) are detailed in a dedicated section below ([[section 15>>doc:Methodology.SDMX 3\.1 Standards\. Section 2\. Information model.15 Validation and Transformation Language.WebHome]]).
22
23 == 4.2 Inheritance View ==
24
25 The inheritance and relationship views are shown together in each of the diagrams in the specific sections below.
26
27 == 4.3 Codelist ==
28
29 === 4.3.1 Class Diagram ===
30
31 [[image:image42.png]]
32
33 **Figure 16: Class diagram of the Codelist**
34
35 === 4.3.2 Explanation of the Diagram ===
36
37 ==== 4.3.2.1 Narrative ====
38
39 The [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] inherits from the //ItemScheme// and therefore has the following [[attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]]: id uri urn [[version>>doc:sdmx:Glossary 2\.1.Version.WebHome]] validFrom validTo [[isExternalReference>>doc:sdmx:Glossary 2\.1.isExternalReference.WebHome]] serviceURL structureURL isPartial
40
41 The [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] inherits from //Item// and has the following [[attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]]:
42
43 id
44 uri
45 urn
46
47 Both [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] and [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] have the association to InternationalString to support a multilingual name, an optional multi-lingual description, and an association to [[Annotation>>doc:sdmx:Glossary 2\.1.Annotation.WebHome]] to support notes (not shown).
48
49 Through the inheritance the [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] comprise one or more [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]], and the [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] itself can have one or more child [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] in the (inherited) [[hierarchy>>doc:sdmx:Glossary 2\.1.Hierarchy.WebHome]] association. Note that a child [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] can have only one parent [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] in this association. A more complex Hierarhcy, which allows multiple parents is described later.
50
51 A partial [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] (where isPartial is set to 'true') is identical to a [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] and contains the [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] and associated names and descriptions, just as in a normal [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]]. However, its content is a subset of the full [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]]. The way this works is described in section [[3.5.3.1>>doc:Methodology.SDMX 3\.1 Standards\. Section 2\. Information model.3 SDMX Base Package.WebHome||anchor="H3.5.3.1Narrative"]] on //ItemScheme//.
52
53 ==== 4.3.2.2 Definitions ====
54
55 (% style="width:912.835px" %)
56 |**Class**|**Feature**|(% style="width:656px" %)**Description**
57 |(%%)(% style="background-color:#d35400" %)[[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]]|(((
58 Inherits from
59 //ItemScheme//
60 )))|(% style="width:656px" %)A list from which some statistical [[concepts>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] (coded [[concepts>>doc:sdmx:Glossary 2\.1.Concept.WebHome]]) take their values.
61 |[[Code>>doc:Glossary 2\.1.Code.WebHome]]|(((
62 Inherits from
63 Item
64 )))|(% style="width:656px" %)A [[language>>doc:sdmx:Glossary 2\.1.Language.WebHome]] independent set of letters, numbers or symbols that represent a [[concept>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] whose meaning is described in a natural [[language>>doc:sdmx:Glossary 2\.1.Language.WebHome]].
65 | |[[hierarchy>>doc:sdmx:Glossary 2\.1.Hierarchy.WebHome]]|(% style="width:656px" %)Associates the parent and the child [[codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]].
66 | |extends|(% style="width:656px" %)Associates a [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] with any [[Codelists>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] that it may extend.
67
68 ==== 4.3.3 Class Diagram – Codelist Extension ====
69
70 [[image:image43.png]]
71
72 **Figure 17: Class diagram for Codelist Extension**
73
74 ==== 4.3.3.1 Narrative ====
75
76 A [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] may extend other [[Codelists>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] via the CodelistExtension class. The latter, via the sequence, indicates the order of precedence of the extended [[Codelists>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] for conflict resolution of [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]]. Besides that, the prefix property is used to ensure uniqueness of inherited [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] in the extending{{footnote}}The Codelist that extends 0..* Codelists is the 'extending' Codelist, while the Codelist(s) that are inherited is/are the 'extended' Codelist(s).{{/footnote}} [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] in case conflicting [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] must be included in the latter. Each CodelistExtension association may include one InclusiveCodeSelection or one ExclusiveCodeSelection; those allow including or excluding a specific selection of [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] from the extended [[Codelists>>doc:sdmx:Glossary 2\.1.Code list.WebHome]].
77
78 The [[code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] selection classes may have MemberValues in order to specify the subset of the [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] that should be included or excluded from the extended [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]]. A MemberValue may have a value that corresponds to a [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]], including its children [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] (via the cascadeValues property), or even include instances of the wildcard character ‘%’ in order to point to a set of [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] with common parts in their identifiers.
79
80 ==== 4.3.3.2 Definitions ====
81
82 (% style="width:970.835px" %)
83 |**Class**|**Feature**|(% style="width:655px" %)**Description**
84 |CodelistExtension| |(% style="width:655px" %)The association between [[Codelists>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] that may extend other [[Codelists>>doc:sdmx:Glossary 2\.1.Code list.WebHome]].
85 | |prefix|(% style="width:655px" %)A prefix to be used for a [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] used in a extension, in order to avoid [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] Conflicts.
86 | |sequence|(% style="width:655px" %)(((
87 The order that will be used when extending a [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]], for resolving [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] conflicts. The latest [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] used overrides any previous [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]].
88 )))
89 |InclusiveCodeSelection| |(% style="width:655px" %)The subset of [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] to be included when extending a [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]].
90 |ExclusiveCodeSelection| |(% style="width:655px" %)The subset of [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] to be excluded when extending a [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]].
91 |MemberValue|(((
92 Inherits from:
93 //SelectionValue//
94 )))|(% style="width:655px" %)A collection of values based on [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] and their children.
95 | |cascadeValues|(% style="width:655px" %)A property to indicate if the child [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]] of the selected [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] shall be included in the selection. It is also possible to include children and exclude the [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] by using the 'excluderoot' value.
96 | |value|(% style="width:655px" %)The value of the [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] to include in the selection. It may include the ‘%’ character as a wildcard.
97
98 === 4.3.4 Class Diagram – Geospatial Codelist ===
99
100 The geospatial support is implemented via an extension of the normal Codelist. This is illustrated in the following diagrams.
101
102 [[image:image44.png]]
103
104 **Figure 18: Inheritance for the GeoCodelist**
105
106 [[image:image45.png]]
107
108 **Figure 19: Class diagram for Geospatial Codelist**
109
110 ==== 4.3.4.1 Narrative ====
111
112 A //GeoCodelist// is a specialisation of [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] that includes geospatial information, by comprising a set of special [[Codes>>doc:sdmx:Glossary 2\.1.Code.WebHome]], i.e., //GeoRefCode//s. A //GeoCodelist// may be implemented by any of the two following classes, via the geoType property:
113
114 GeographicCodelist
115
116 GeoGridCodelist
117
118 The former, i.e., GeographicCodelist, comprises a set of GeoFeatureSetCodes, by adding a value in the [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] that follows a pattern to represent a geo feature set.
119
120 The latter, i.e., GeoGridCodelist, comprises a set of GridCodes, which are related to the gridDefinition specified in the GeoGridCodelist.
121
122 ==== 4.3.4.2 Definitions ====
123
124 (% style="width:960.835px" %)
125 |**Class**|**Feature**|(% style="width:559px" %)**Description**
126 |//GeoCodelist//|(((
127 Abstract Class Sub Classes:
128 GeographicCodelist
129 GeoGridCodelist
130 )))|(% style="width:559px" %)The abstract class that represents a special type of [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]], which includes geospatial information.
131 | |geoType|(% style="width:559px" %)The type of Geo [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] that the [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] will become.
132 |//GeoRefCode//|(((
133 Abstract Class
134 Sub Classes:
135 GeoFeatureSetCode
136 GeoGridCode
137 )))|(% style="width:559px" %)The abstract class that represents a special type of [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]], which includes geospatial information.
138 |GeographicCodelist| |(% style="width:559px" %)A special [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] that has been extended to add a geographical feature set to each of its items, typically, this would include all types of administrative geographies.
139 |GeoGridCodelist| |(% style="width:559px" %)A [[code list>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] that has defined a geographical grid composed of cells representing regular squared portions of the Earth.
140 | |gridDefinition|(% style="width:559px" %)Contains a regular expression string corresponding to the grid definition for the GeoGridCodelist.
141 |GeoFeatureSetCode| |(% style="width:559px" %)A [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] that has a geo feature set.
142 | |value|(% style="width:559px" %)The geo feature set of the [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]], which represents a set of points defining a feature in a format defined a predefined pattern (see section 6).
143 |GeoGridCode| |(% style="width:559px" %)A [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] that represents a Geo Grid Cell belonging in a specific grid definition.
144 | |geoCell|(% style="width:559px" %)The value used to assign the [[Code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] to one cell in the grid.
145
146 == 4.4 ValueList ==
147
148 === 4.4.1 Class Diagram ===
149
150 [[image:image46.png]]
151
152 **Figure 20: Class diagram of the ValueList**
153
154 === 4.4.2 Explanation of the Diagram ===
155
156 ==== 4.4.2.1 Narrative ====
157
158 A ValueList inherits from //EnumeratedList// (and hence the //MaintenableArtefact//) and thus has the following [[attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]]:
159
160 id
161 uri
162 urn
163
164 [[version>>doc:sdmx:Glossary 2\.1.Version.WebHome]]
165 validFrom
166 validTo
167 [[isExternalReference>>doc:sdmx:Glossary 2\.1.isExternalReference.WebHome]]
168 registryURL
169 structureURL
170 repositoryURL
171
172 ValueItem inherits from //EnumeratedItem//, which adds an id, with relaxed [[constraints>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]], to the former.
173
174 Through the inheritance from //NameableArtefact// the ValueList has the association to InternationalString to support a multi-lingual name, an optional multi-lingual description, and an association to [[Annotation>>doc:sdmx:Glossary 2\.1.Annotation.WebHome]] to support notes (not shown). Similarly, the ValueItem, inherits the association to InternationalString and to the [[Annotation>>doc:sdmx:Glossary 2\.1.Annotation.WebHome]] from the //EnumeratedItem//.
175
176 The ValueList can have one or more ValueItems.
177
178 ==== 4.4.2.2 Definitions ====
179
180 (% style="width:929.835px" %)
181 |**Class**|(% style="width:175px" %)**Feature**|(% style="width:632px" %)**Description**
182 |ValueList|(% style="width:175px" %)(((
183 Inherits from
184 //EnumeratedList//
185 )))|(% style="width:632px" %)A list from which some statistical [[concepts>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] (enumerated [[concepts>>doc:sdmx:Glossary 2\.1.Concept.WebHome]]) take their values.
186 |ValueItem|(% style="width:175px" %)(((
187 Inherits from
188 //EnumeratedItem//
189 )))|(% style="width:632px" %)A [[language>>doc:sdmx:Glossary 2\.1.Language.WebHome]] independent set of letters, numbers or symbols that represent a [[concept>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] whose meaning is described in a natural [[language>>doc:sdmx:Glossary 2\.1.Language.WebHome]].
190
191 == 4.5 Concept Scheme and Concepts ==
192
193 === 4.5.1 Class Diagram - Inheritance ===
194
195 [[image:image47.png]]
196
197 **Figure 21 Class diagram of the Concept Scheme**
198
199 === 4.5.2 Explanation of the Diagram ===
200
201 The ConceptScheme inherits from the //ItemScheme //and therefore has the following [[attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]]:
202
203 id
204 uri
205 urn
206 [[version>>doc:sdmx:Glossary 2\.1.Version.WebHome]] validFrom validTo
207 [[isExternalReference>>doc:sdmx:Glossary 2\.1.isExternalReference.WebHome]]
208 registryURL
209 structureURL
210 repositoryURL
211 isPartial
212
213 [[Concept>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] inherits from Item and has the following [[attributes>>doc:sdmx:Glossary 2\.1.Attribute.WebHome]]:
214
215 id
216 uri
217 urn
218
219 Through the inheritance from //NameableArtefact// both ConceptScheme and [[Concept>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] have the association to InternationalString to support a multi-lingual name, an optional multilingual description, and an association to [[Annotation>>doc:sdmx:Glossary 2\.1.Annotation.WebHome]] to support notes (not shown).
220
221 Through the inheritance from //ItemScheme// the ConceptScheme comprise one or more [[Concepts>>doc:sdmx:Glossary 2\.1.Concept.WebHome]], and the [[Concept>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] itself can have one or more child [[Concepts>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] in the (inherited) [[hierarchy>>doc:sdmx:Glossary 2\.1.Hierarchy.WebHome]] association. Note that a child [[Concept>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] can have only one parent [[Concept>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] in this association.
222
223 A partial ConceptScheme (where isPartial is set to “true”) is identical to a ConceptScheme and contains the [[Concept>>doc:sdmx:Glossary 2\.1.Concept.WebHome]] and associated names and descriptions, just as in a normal ConceptScheme. However, its content is a subset of the full ConceptScheme. The way this works is described in section [[3.5.3.1>>doc:Methodology.SDMX 3\.1 Standards\. Section 2\. Information model.3 SDMX Base Package.WebHome||anchor="H3.5.3.1Narrative"]] on ItemScheme.
224
225 === 4.5.3 Class Diagram Relationship ===
226
227 [[image:image48.png]]
228
229 **Figure 22: Relationship class diagram of the Concept Scheme**
230
231 === 4.5.4 Explanation of the diagram ===
232
233 ==== 4.5.4.1 Narrative ====
234
235 The ConceptScheme can have one or more Concepts. A Concept can have zero or more child Concepts, thus supporting a hierarchy of Concepts. Note that a child Concept can have only one parent Concept in this association. The purpose of the hierarchy is to relate concepts that have a semantic relationship: for example, a Reporting_Country and Vis_a_Vis_Country may both have Country as a parent concept, or a CONTACT may have a PRIMARY_CONTACT as a child concept. It is not the purpose of such schemes to define reporting structures: these reporting structures are defined in the MetadataStructureDefinition.
236
237 The Concept can be associated with a coreRepresentation. The coreRepresentation is the specification of the format and value domain of the Concept when used on a structure like a DataStructureDefinition or a MetadataStructureDefinition, unless the specification of the Representation is overridden in the relevant structure definition. In a hierarchical ConceptScheme the Representation is inherited from the parent Concept unless overridden at the level of the child Concept.
238
239 The Representation is documented in more detail in the section on the SDMX Base.
240
241 The Concept may be related to a concept described in terms of the ISO/IEC 11179 standard. The ISOConceptReference identifies this concept and concept scheme in which it is contained.
242
243 ==== 4.5.4.2 Definitions ====
244
245 (% style="width:912.835px" %)
246 |(% style="width:170px" %)**Class**|(% style="width:184px" %)**Feature**|(% style="width:548px" %)**Description**
247 |(% style="width:170px" %)(((
248 ConceptScheme
249 )))|(% style="width:184px" %)(((
250 Inherits from
251 //ItemScheme//
252 )))|(% style="width:548px" %)The descriptive information for an arrangement or division of concepts into groups based on characteristics, which the objects have in common.
253 |(% style="width:170px" %)Concept|(% style="width:184px" %)(((
254 Inherits from
255 //Item//
256 )))|(% style="width:548px" %)A concept is a unit of knowledge created by a unique combination of characteristics.
257 |(% style="width:170px" %) |(% style="width:184px" %)/hierarchy|(% style="width:548px" %)Associates the parent and the child concept.
258 |(% style="width:170px" %) |(% style="width:184px" %)coreRepresentation|(% style="width:548px" %)Associates a Representation.
259 |(% style="width:170px" %) |(% style="width:184px" %)+ISOConcept|(% style="width:548px" %)Association to an ISO concept reference.
260 |(% style="width:170px" %)ISOConceptReference|(% style="width:184px" %) |(% style="width:548px" %)The identity of an ISO concept definition.
261 |(% style="width:170px" %) |(% style="width:184px" %)conceptAgency|(% style="width:548px" %)The maintenance agency of the concept scheme containing the concept.
262 |(% style="width:170px" %) |(% style="width:184px" %)conceptSchemeID|(% style="width:548px" %)The identifier of the concept scheme.
263 |(% style="width:170px" %) |(% style="width:184px" %)conceptID|(% style="width:548px" %)The identifier of the concept.
264
265 == 4.6 Category Scheme ==
266
267 === 4.6.1 Context ===
268
269 This package defines the structure that supports the definition of and relationships between categories in a category scheme. It is similar to the package for concept scheme. An example of a category scheme is one which categorises data – sometimes known as a subject matter domain scheme or a data category scheme. Importantly, as will be seen later, the individual nodes in the scheme (the “categories”) can be associated to any set of IdentiableArtefacts in a Categorisation.
270
271 === 4.6.2 Class diagram Inheritance ===
272
273 [[image:image49.png]]
274
275 **Figure 23 Inheritance Class diagram of the Category Scheme**
276
277 === 4.6.3 Explanation of the Diagram ===
278
279 ==== 4.6.3.1 Narrative ====
280
281 The categories are modelled as a hierarchical //ItemScheme//. The CategoryScheme inherits from the //ItemScheme// and has the following attributes:
282
283 id
284 uri
285 urn
286 version
287 validFrom
288 validTo
289 isExternalReference
290 structureURL
291 serviceURL
292 isPartial
293
294 Category inherits from //Item// and has the following attributes:
295
296 id
297 uri
298 urn
299
300 Both CategoryScheme and Category have the association to InternationalString to support a multi-lingual name, an optional multi-lingual description, and an association to Annotation to support notes (not shown on the model).
301
302 Through the inheritance the CategoryScheme comprise one or more Categorys, and the Category itself can have one or more child Category in the (inherited) hierarchy association. Note that a child Category can have only one parent Category in this association.
303
304 A partial CategoryScheme (where isPartial is set to “true”) is identical to a CategoryScheme and contains the Category and associated names and descriptions, just as in a normal CategoryScheme. However, its content is a subset of the full CategoryScheme. The way this works is described in section [[3.5.3.1>>doc:Methodology.SDMX 3\.1 Standards\. Section 2\. Information model.3 SDMX Base Package.WebHome||anchor="H3.5.3.1Narrative"]] on ItemScheme.
305
306 === 4.6.4 Class diagram Relationship ===
307
308 [[image:image50.png]]
309
310 **Figure 24: Relationship Class diagram of the Category Scheme**
311
312 The CategoryScheme can have one or more Categorys. The Category is Identifiable and has identity information. A Category can have zero or more child Categorys, thus supporting a hierarchy of Categorys. Any IdentifiableArtefact can be +categorisedBy a Category. This is achieved by means of a Categorisation. Each Categorisation can associate one IdentifiableArtefact with one Category. Multiple Categorisations can be used to build a set of IdentifiableArtefacts that are +categorisedBy the same Category. Note that there is no navigation (i.e. no embedded reference) to the Categorisation from the Category. From an implementation perspective this is necessary as Categorisation has no effect on the versioning of either the CategoryScheme or the IdentifiableArtefact.
313
314 ==== 4.6.4.1 Definitions ====
315
316 (% style="width:935.835px" %)
317 |**Class**|**Feature**|(% style="width:601px" %)**Description**
318 |CategoryScheme|(((
319 Inherits from
320 //ItemScheme//
321 )))|(% style="width:601px" %)The descriptive information for an arrangement or division of categories into groups based on characteristics, which the objects have in common.
322 | |/items|(% style="width:601px" %)Associates the categories.
323 |Category|(((
324 Inherits from
325 //Item//
326 )))|(% style="width:601px" %)An item at any level within a classification, typically tabulation categories, sections, subsections, divisions, subdivisions, groups, subgroups, classes and subclasses.
327 | |/hierarchy|(% style="width:601px" %)Associates the parent and the child Category.
328 |Categorisation|(((
329 Inherits from
330 //MaintainableArtefact//
331 )))|(% style="width:601px" %)Associates an Identifable Artefact with a Category.
332 | |+categorisedArtefact|(% style="width:601px" %)Associates the Identifable Artefact.
333 | |+categorisedBy|(% style="width:601px" %)Associates the Category.
334
335 == 4.7 Organisation Scheme ==
336
337 === 4.7.1 Class Diagram ===
338
339 [[image:image51.png]]
340
341 **Figure 25 The Organisation Scheme class diagram**
342
343 === 4.7.2 Explanation of the Diagram ===
344
345 ==== 4.7.2.1 Narrative ====
346
347 The //OrganisationScheme// is abstract. It contains //Organisation// which is also abstract. The //Organisation// can have child //Organisation//.
348
349 The //OrganisationScheme// can be one of five types:
350
351 1. AgencyScheme – contains Agency which is restricted to a flat list of agencies (i.e., there is no hierarchy). Note that the SDMX system of (Maintenance) Agency can be hierarchic and this is explained in more detail in the SDMX Standards Section 6 “Technical Notes”.
352 1. DataProviderScheme – contains DataProvider which is restricted to a flat list of agencies (i.e., there is no hierarchy).
353 1. MetadataProviderScheme – contains MetadataProvider which is restricted to a flat list of agencies (i.e., there is no hierarchy).
354 1. DataConsumerScheme – contains DataConsumer which is restricted to a flat list of agencies (i.e., there is no hierarchy).
355 1. (% style="background-color:#d35400" %)OrganisationUnitScheme(%%) – contains OrganisationUnit which does inherit the /hierarchy association from Organisation.
356
357 Reference metadata can be attached to the //Organisation// by means of the metadata attachment mechanism. This mechanism is explained in the Reference Metadata section of this document (see section 7). This means that the model does not specify the specific reference metadata that can be attached to a DataProvider, MetadataProvider, DataConsumer, OrganisationUnit or Agency, except for limited Contact information.
358
359 A partial //OrganisationScheme// (where isPartial is set to “true”) is identical to an //OrganisationScheme// and contains the //Organisation// and associated names and descriptions, just as in a normal //OrganisationScheme//. However, its content is a subset of the full //OrganisationScheme//. The way this works is described in section [[3.5.3.1>>doc:Methodology.SDMX 3\.1 Standards\. Section 2\. Information model.3 SDMX Base Package.WebHome||anchor="H3.5.3.1Narrative"]] on //ItemScheme//.
360
361 ==== 4.7.2.2 Definitions ====
362
363 (% style="width:946.835px" %)
364 |**Class**|**Feature**|(% style="width:540px" %)**Description**
365 |//OrganisationScheme//|(((
366 Abstract Class
367 Inherits from
368 //ItemScheme//
369 Sub classes are:
370 AgencyScheme
371 DataProviderScheme
372 MetadataProviderScheme
373 DataConsumerScheme
374 OrganisationUnitScheme
375 )))|(% style="width:540px" %)A maintained collection of Organisations.
376 | |/items|(% style="width:540px" %)Association to the Organisations in the scheme.
377 |//Organisation//|(((
378 Abstract Class
379 Inherits from
380 //Item//
381 Sub classes are:
382 Agency
383 DataProvider
384 MetadataProvider
385 DataConsumer
386 OrganisationUnit
387 )))|(% style="width:540px" %)An organisation is a unique framework of authority within which a person or persons act, or are designated to act, towards some purpose.
388 | |+contact|(% style="width:540px" %)Association to the Contact information.
389 | |/hierarchy|(% style="width:540px" %)Association to child Organisations.
390 |Contact| |(% style="width:540px" %)An instance of a role of an individual or an organization (or organization part or organization person) to whom an information item(s), a material object(s) and/or person(s) can be sent to or from in a specified context.
391 | |name|(% style="width:540px" %)The designation of the Contact person by a linguistic expression.
392 | |organisationUnit|(% style="width:540px" %)The designation of the organisational structure by a linguistic expression, within which Contact person works.
393 | |responsibility|(% style="width:540px" %)The function of the contact person with respect to the organisation role for which this person is the Contact.
394 | |telephone|(% style="width:540px" %)The telephone number of the Contact.
395 | |fax|(% style="width:540px" %)The fax number of the Contact.
396 | |email|(% style="width:540px" %)The Internet e-mail address of the Contact.
397 | |X400|(% style="width:540px" %)The X400 address of the Contact.
398 | |uri|(% style="width:540px" %)The URL address of the Contact.
399 |AgencyScheme| |(% style="width:540px" %)A maintained collection of Maintenance Agencies.
400 | |/items|(% style="width:540px" %)Association to the Maintenance Agency in the scheme.
401 |DataProviderScheme| |(% style="width:540px" %)A maintained collection of Data Providers.
402 | |/items|(% style="width:540px" %)Association to the Data Providers in the scheme.
403 |MetadataProviderScheme| |(% style="width:540px" %)A maintained collection of Metadata Providers.
404 | |/items|(% style="width:540px" %)Association to the Metadata Providers in the scheme.
405 |DataConsumerScheme| |(% style="width:540px" %)A maintained collection of Data Consumers.
406 | |/items|(% style="width:540px" %)Association to the Data Consumers in the scheme.
407 |(%%)(% style="background-color:#d35400" %)OrganisationUnitScheme| |(% style="width:540px" %)A maintained collection of Organisation Units.
408 | |/items|(% style="width:540px" %)Association to the Organisation Units in the scheme.
409 |Agency|(((
410 Inherits from
411 //Organisation//
412 )))|(% style="width:540px" %)Responsible agency for maintaining artefacts such as statistical classifications, glossaries, structural metadata such as Data and Metadata Structure Definitions, Concepts and Code lists.
413 |DataProvider|(((
414 Inherits from
415 //Organisation//
416 )))|(% style="width:540px" %)An organisation that produces data.
417 |MetadataProvider|(((
418 Inherits from
419 //Organisation//
420 )))|(% style="width:540px" %)An organisation that produces reference metadata.
421 |DataConsumer|(((
422 Inherits from
423 //Organisation//
424 )))|(% style="width:540px" %)An organisation using data as input for further processing.
425 |OrganisationUnit|(((
426 Inherits from
427 //Organisation//
428 )))|(% style="width:540px" %)A designation in the organisational structure.
429 | |/hierarchy|(% style="width:540px" %)Association to child Organisation Units
430
431 (% style="width:946.835px" %)
432 |(% style="width:540px" %)
433
434 == 4.8 Reporting Taxonomy ==
435
436 === 4.8.1 Class Diagram ===
437
438 [[image:image52.png]]
439
440 **Figure 26: Class diagram of the Reporting Taxonomy**
441
442 === 4.8.2 Explanation of the Diagram ===
443
444 ==== 4.8.2.1 Narrative ====
445
446 In some data reporting environments, and in particular those in primary reporting, a report may comprise a variety of heterogeneous data, each described by a different //Structure//. Equally, a specific disseminated or published report may also comprise a variety of heterogeneous data. The definition of the set of linked sub reports is supported by the ReportingTaxonomy.
447
448 The ReportingTaxonomy is a specialised form of //ItemScheme//. Each ReportingCategory of the ReportingTaxonomy can link to one or more //StructureUsage// which itself can be one of Dataflow, or Metadataflow, and one or more //Structure//, which itself can be one of DataStructureDefinition or MetadataStructureDefinition. It is expected that within a specific ReportingTaxonomy each Category that is linked in this way will be linked to the same class (e.g. all Category in the scheme will link to a Dataflow). Note that a ReportingCategory can have child ReportingCategory and in this way it is possible to define a hierarchical ReportingTaxonomy. It is possible in this taxonomy that some ReportingCategory are defined just to give a reporting structure. For instance:
449
450 Section 1
451
452 1. linked to Datafow_1
453 1. linked to Datafow_2
454
455 Section 2
456
457 1. linked to Datafow_3
458 1. linked to Datafow_4
459
460 Here, the nodes of Section 1 and Section 2 would not be linked to Dataflow but the other would be linked to a Dataflow (and hence the DataStructureDefinition).
461
462 A partial ReportingTaxonomy (where isPartial is set to “true”) is identical to a ReportingTaxonomy and contains the ReportingCategory and associated names and descriptions, just as in a normal ReportingTaxonomy. However, its content is a sub set of the full ReportingTaxonomy The way this works is described in section [[3.5.3.1>>doc:Methodology.SDMX 3\.1 Standards\. Section 2\. Information model.3 SDMX Base Package.WebHome||anchor="H3.5.3.1Narrative"]] on //ItemScheme//.
463
464 ==== 4.8.2.2 Definitions ====
465
466 (% style="width:969.835px" %)
467 |**Class**|**Feature**|(% style="width:668px" %)**Description**
468 |ReportingTaxonomy|(((
469 Inherits from
470 //ItemScheme//
471 )))|(% style="width:668px" %)A scheme which defines the composition structure of a data report where each component can be described by an independent Dataflow or Metadataflow.
472 | |/items|(% style="width:668px" %)Associates the Reporting Category
473 |ReportingCategory|Inherits from //Item//|(% style="width:668px" %)A component that gives structure to the report and links to data and metadata.
474 | |/hierarchy|(% style="width:668px" %)Associates child Reporting Category.
475 | |+flow|(% style="width:668px" %)Association to the data and metadata flows that link to metadata about the provisioning and related data and metadata sets, and the structures that define them.
476 | |+structure|(% style="width:668px" %)Association to the Data Structure Definition and Metadata Structure Definitions which define the structural metadata describing the data and metadata that are contained at this part of the report.
477
478 ----
479
480 {{putFootnotes/}}
© Semantic R&D Group, 2026