Last modified by Artur K. on 2026/05/29 14:28

From version 1.5
edited by Helena K.
on 2026/01/15 12:30
Change comment: There is no comment for this version
To version 1.21
edited by Helena K.
on 2026/01/15 13:01
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -245,50 +245,29 @@
245 245  
246 246  The range of options between the “//just one//”// //(mixed) and “//all component//” subject-matter dimensions approaches is subject to the comprehensiveness (i.e. size, coverage) of the data exchange that the DSD is being developed for. If using a “mixed dimensions” approach, rules for the composition of the mixed dimension(s) may be specified (e.g. concatenate concepts A, B, and C to get mixed dimension X), allowing their easy re-decomposition. In general composite dimensions should be avoided as previously recommended by the SDMX Technical Notes, but there are cases that suggest the usage of composite dimensions. Table 4 juxtaposes general pros and cons of the “//many pure concepts//” and “//fewer composite concepts//” approaches.
247 247  
248 -|**Many pure concepts**|**Few composite concepts**
249 -|cleaner data structure|(((
250 -Mixed dimensions may be composed inconsistently making the decomposition into purer concepts and code lists difficult
251 -
252 -(requiring complex mapping etc.). Information that corresponds to the same concept may be included in different dimensions, e.g. reference year is contained in the indicator dimension in the first example but in the unit in the second example below. The optimal common data structure would consist of Economic Indicator, Unit, and Base period.
253 -)))
254 -
255 255  **Table 4. General comparison of data structuring approaches**
256 256  
257 -|(% rowspan="3" %)(((
258 -
250 +|(% style="width:416px" %)**Many pure concepts**|(% style="width:1199px" %)**Few composite concepts**
251 +|(% style="width:416px" %)cleaner data structure|(% style="width:1199px" %)(((
252 +Mixed dimensions may be composed inconsistently making the decomposition into purer concepts and code lists difficult (requiring complex mapping etc.). Information that corresponds to the same concept may be included in different dimensions, e.g. reference year is contained in the indicator dimension in the first example but in the unit in the second example below. The optimal common data structure would consist of Economic Indicator, Unit, and Base period.
259 259  
260 -
261 -)))|**Economic Indicator**|**Unit**
262 -|Industrial production (2000=100)|Index
263 -|GDP real|US Dollars at 2005 prices
254 +[[image:1768469652632-803.png||height="106" width="352"]]
255 +)))
256 +|(% style="width:416px" %)shorter and simpler code lists|(% style="width:1199px" %)code lists longer and more complex, may require hierarchy to be “readable”
257 +|(% style="width:416px" %)more flexible in terms of defining constraints, but constraints more complex|(% style="width:1199px" %)simpler constraints, but some constraints may be difficult to be represented because of mixed dimensions. Consider for instance a constraint “Base period = 1995” in the above example, where some observations include the base period in the Economic Indicator dimension, others in the Unit dimension. Instead of specifying a constraint on a pure Base Period dimension, the constraints may have to be specified at observation (or time series) level
258 +|(% style="width:416px" %)more flexible in terms of mapping to other data structures (used by other systems), further processing and analysis (e.g. tabulation, dissemination format), and future needs|(% style="width:1199px" %)“mixed” dimensions make data structure less flexible in these respects
259 +|(% style="width:416px" %)longer (i.e. more complex) observation keys|(% style="width:1199px" %)shorter keys
260 +|(% style="width:416px" %)special values of code lists such as “not applicable”, “total” may be rather heavily used|(% style="width:1199px" %)less usage of these special values
261 +|(% style="width:416px" %)creates sparse data if many observations use “not applicable”|(% style="width:1199px" %)way to avoid sparseness
262 +|(% style="width:416px" %)many constraints may be necessary due to sparseness|(% style="width:1199px" %)typically fewer constraints required because data are less sparse
263 +|(% style="width:416px" %)many dimensions are tantamount to many attachment levels for attributes (i.e. DSD more flexible in terms of attribute attachment)|(% style="width:1199px" %)less dimensions = less possible attribute attachment levels
264 +|(% style="width:416px" %)more difficult to handle by an end user|(% style="width:1199px" %)presumably more easily comprehensible and manageable by an end user
265 +|(% style="width:416px" %)more flexible in terms of defining queries; can be mapped to any “mixed” representation|(% style="width:1199px" %)less flexible in terms of search and retrieval
264 264  
265 -shorter and simpler code lists code lists longer and more complex, may
266 -
267 -require hierarchy to be “readable”
268 -
269 -
270 -**Many pure concepts Few composite concepts**
271 -
272 -more flexible in terms of defining constraints, simpler constraints, but some constraints may
273 -
274 -but constraints more complex be difficult to be represented because of mixed
275 -
276 -dimensions. Consider for instance a constraint “Base period = 1995” in the above example, where some observations include the base period in the Economic Indicator dimension, others in the Unit dimension. Instead of specifying a constraint on a pure Base Period dimension, the constraints may have to be specified at observation (or time series) level
277 -
278 -|more flexible in terms of mapping to other data structures (used by other systems), further processing and analysis (e.g. tabulation, dissemination format), and future needs|“mixed” dimensions make data structure less flexible in these respects
279 -|longer (i.e. more complex) observation keys|shorter keys
280 -|special values of code lists such as “not applicable”, “total” may be rather heavily used|less usage of these special values
281 -|creates sparse data if many observations use “not applicable”|way to avoid sparseness
282 -|many constraints may be necessary due to sparseness|typically fewer constraints required because data are less sparse
283 -|many dimensions are tantamount to many attachment levels for attributes (i.e. DSD more flexible in terms of attribute attachment)|less dimensions = less possible attribute attachment levels
284 -|more difficult to handle by an end user|presumably more easily comprehensible and manageable by an end user
285 -|more flexible in terms of defining queries; can be mapped to any “mixed” representation|less flexible in terms of search and retrieval
286 -
287 -
288 -
289 289  The latter two aspects mentioned in the table could be summarized as the “many pure dimensions” approach being more difficult to handle for a “basic” user, but providing fewer options for an “advanced” user. When it comes to dissemination to end users, a purer data structure is the appropriate format for consumption by applications and advanced users. For less advanced user groups it makes sense to hide the (for them: unnecessary) complexity by means of concatenating dimensions, for instance to create a time series view.
290 290  
291 -Comparing single-purpose and single-domain exchange scenarios with multi-domain and/or multi-purpose scenarios, pure concepts are typically easier to achieve in the former, whereas composite concepts/dimensions may make life easier in the latter, especially because certain cross-classification concepts may only apply to some domains and/or purposes covered. “Purpose” means either a certain data exchange exercise or data flow, for instance in the BOP DSD endeavor mentioned above each column represents one “purpose”, e.g. ECB IRT or OECD BOP. In multi-domain or –purpose scenarios, pure concepts are more easily obtained by a “many DSDs” approach, no matter if those are independent from each other or linked by a “master DSD”. Although it does not rule out the specification of pure concepts, a “one DSD” approach typically leads to using fewer, composite concepts (dimensions) in those scenarios.
269 +Comparing single-purpose and single-domain exchange scenarios with multi-domain and/or multi-purpose scenarios, pure concepts are typically easier to achieve in the former, whereas composite concepts/dimensions may make life easier in the latter, especially because certain cross-classification concepts may only apply to some domains and/or purposes covered. “Purpose” mean“mixed” dimensions make data structure less
270 +flexible in these respectsither a certain data exchange exercise or data flow, for instance in the BOP DSD endeavor mentioned above each column represents one “purpose”, e.g. ECB IRT or OECD BOP. In multi-domain or –purpose scenarios, pure concepts are more easily obtained by a “many DSDs” approach, no matter if those are independent from each other or linked by a “master DSD”. Although it does not rule out the specification of pure concepts, a “one DSD” approach typically leads to using fewer, composite concepts (dimensions) in those scenarios.
292 292  
293 293  Table 5 provides an overview of the pros and cons of the “many pure concepts" and “fewer composite concepts” approaches in different data exchange settings with respect to the type of organizations involved. In any of these settings it is always possible to use one of the data structures that may already exist at one of the involved parties as DSD for the data exchange. The benefits and drawbacks discussed in the table assume that a new DSD is to be defined. A distinction between two different types of intended recipients is implicitly made. Inter-organizational data exchange is mostly machine-to-machine, whereas dissemination of data to end-users is often machine-to-user.
294 294  
... ... @@ -297,18 +297,13 @@
297 297  |**Level of data exchange**|**Pure vs. composite concepts approach**
298 298  |**within an organization**|(((
299 299  Depends on diversity of systems involved in data exchange.
300 -
301 301  The approach that requires the least mapping (and similar processing) steps between the two communicating data structures is preferable in terms of a “quick win” solution.
302 -
303 303  In general, a more granular model is preferable due to its flexibility that helps support potential future needs (with respect to processing, analysis, exchange, dissemination, etc.).
304 -
305 305  However, an internal exchange should not be made more complex than necessary. If the structures of the communicating systems are comparable, it may not make sense to create an artificial intermediary structure that is more pure, but also more complex than both underlying structures.
306 -
307 307  Still, as a longer-term strategy it seems reasonable to define a set of internal “standard” code lists that all systems can map to. This allows bilateral communication via the shared concepts and code lists meaning that every data structure only has to be mapped once – to the internal standard – to be able to communicate with all other participating (i.e. mapped) systems.
308 308  )))
309 309  |**between organizations at national level**|(((
310 310  The pros and cons at this level of exchange are comparable to those at the “within organization” level. If the data structures of the communicating systems are comparable, there is no need to introduce complexity by a conceptually optimal, pure data structure. However, if the data structures deviate to a greater extent (and they often do), they should both be decomposed to find a “common denominator”, a more granular “exchange vocabulary” which they can be mapped to.
311 -
312 312  If related international or national standards exist, they should be used, even though national labels and/or additional levels of detail may be required in the code lists.
313 313  )))
314 314  |**between international organization and national organizations of member countries**|International organizations should collect data at a level of granularity and purity that is most suitable for the intended (and potential future) analyses. The tradeoff with the higher complexity of constraints required to check structural validity of collected data needs to be taken into account as well. Also it is recommended to consider the burden that a more complex data structure may put on national data providers. However, once a DSD is defined, its lifetime is expected to be a number of years. The main effort of the data provider is to specify the mapping from the production data structure to the DSD. Once this is done the data exchange can be automated and the complexity of the DSD does not matter that much.
... ... @@ -322,15 +322,14 @@
322 322  
323 323  **Table 6. Data structuring approaches by role in data exchange**
324 324  
325 -|**Role in data exchange**|**Pure vs. composite concepts approach**
326 -|**Data provider**|(((
299 +|(% style="width:215px" %)**Role in data exchange**|(% style="width:1400px" %)**Pure vs. composite concepts approach**
300 +|(% style="width:215px" %)**Data provider**|(% style="width:1400px" %)(((
327 327  If the composition of the concepts in the data provider's production system largely differs from the one in the DSD, mapping it to a few composite concepts may be more complex than mapping it to many pure concepts. (Mapping to just one mixed concept is straightforward, though.) This is due to the need to decompose and recombine concepts in case of a “mixed concepts” DSD. If the data provider’s internal data structure is very granular or very similar to the DSD, it does not make a huge difference if the concepts in that DSD are pure or not.
328 -
329 329  For a “final” data provider disseminating data to the public, the flexibility offered by a pure data structure in terms of defining different output formats may be beneficial.
330 330  )))
331 -|**Data collector**|Defining constraints for data validation is more complex for a highdimensional, pure DSD. But such a DSD provides more flexibility in terms of consumption and reuse, i.e. mapping to the data collector’s internal data model mapping easier.
332 -|**DSD maintenance**|Pure concepts usually have shorter, less complex code lists and are thus easier to maintain. In contrast, the maintenance of constraints, hierarchical code lists, and derived, composite concepts (e.g. for dissemination) requires more effort.
333 -|**End user (“the public”)**|Consumption and reuse are more flexible in a pure data structure, but it is more difficult to identify observation keys that actually have data because of the created sparseness. (Constraints may help in this respect.) Frequent occurrences of “non applicable” values may also make data usage cumbersome.
304 +|(% style="width:215px" %)**Data collector**|(% style="width:1400px" %)Defining constraints for data validation is more complex for a highdimensional, pure DSD. But such a DSD provides more flexibility in terms of consumption and reuse, i.e. mapping to the data collector’s internal data model mapping easier.
305 +|(% style="width:215px" %)**DSD maintenance**|(% style="width:1400px" %)Pure concepts usually have shorter, less complex code lists and are thus easier to maintain. In contrast, the maintenance of constraints, hierarchical code lists, and derived, composite concepts (e.g. for dissemination) requires more effort.
306 +|(% style="width:215px" %)**End user (“the public”)**|(% style="width:1400px" %)Consumption and reuse are more flexible in a pure data structure, but it is more difficult to identify observation keys that actually have data because of the created sparseness. (Constraints may help in this respect.) Frequent occurrences of “non applicable” values may also make data usage cumbersome.
334 334  
335 335  == 4.2 Number and relations of DSDs ==
336 336  
... ... @@ -352,38 +352,23 @@
352 352  
353 353  **Table 7. Data structuring approaches by level of data exchange**
354 354  
355 -|**Level of data exchange**|**Data structuring approa one DSD**|(% colspan="2" %)(((
356 -**ch**
357 -
358 -**master + satellite DSDs**
359 -)))|**multiple, indep. DSDs**
328 +|(% colspan="1" rowspan="2" %)**Level of data exchange**|(% colspan="4" rowspan="1" %)**Data structuring approach**
329 +|**one DSD**|(% colspan="2" %)**master + satellite DSDs**|**multiple, indep. DSDs**
360 360  |**within organization**|(((
361 -best for single-domain, single-purpose can be created on the
362 -
363 -fly from structured databases
331 +best for single-domain, single-purpose can be created on the fly from structured databases
364 364  )))|(% colspan="2" %)use if harmonization is important in covered domains or purposes or if such a set of DSDs is already available at international level|easier to do than master + satellite approach each domain/purpose can maintain DSDs independently can be created on the fly from structured databases
365 365  |**between national organizations**|(% colspan="4" %)the same applies as to the “within organization” scenario
366 -|**Level of data exchange**|(% colspan="3" %)(((
367 -**Data structuring approach**
368 -
369 -**one DSD master + satellite DSDs**
370 -)))|**multiple, indep. DSDs**
371 371  |**between int. organization and national organizations**|(% colspan="2" %)best for single domain, single purpose scenarios that are usually rather restricted with very clear specification of what needs to be exchanged|preferable over multiDSD approach in case of multi-domain and/or multi-purpose scenarios with highly correlated data flows for maintenance reasons|(((
372 -for multi-domain and/or multipurpose scenarios; only recommended if overlap of domains/purposes is minor (e.g. just w.r.t. cross-domain concepts)
373 -
374 -equivalent to multiple “one DSD” solutions, one for each domain / purpose
335 +for multi-domain and/or multipurpose scenarios; only recommended if overlap of domains/purposes is minor (e.g. just w.r.t. cross-domain concepts) equivalent to multiple “one DSD” solutions, one for each domain / purpose
375 375  )))
376 376  |**between international organizations**|(% colspan="3" %)comparable to “national to international” scenario|
377 377  |**dissemination to public**|(% colspan="2" %)for single-domain, single-purpose cases in more complex cases this may be the preferable approach for data discovery tools (one data structure to find and access all data)|(% colspan="2" %)(((
378 378  in multi-purpose or –domain scenarios:
379 379  
380 -if it is relevant for the public to see the relationship between the data structures: use master + satellites approach
381 -
382 -otherwise the multi-DSD option is preferable, although with the highest possible degree of re-use of code lists and concepts
383 -
384 -in both cases: important to include only concepts, code lists, and codes actually available / used by the data
341 +* if it is relevant for the public to see the relationship between the data structures: use master + satellites approach
342 +* otherwise the multi-DSD option is preferable, although with the highest possible degree of re-use of code lists and concepts
343 +* in both cases: important to include only concepts, code lists, and codes actually available / used by the data
385 385  )))
386 -| | | | |
387 387  
388 388  In general, finding the “perfect” data structure is less important for bilateral data exchange. Independent, custom-tailored DSDs may do the job quite well, as harmonization and standardization are typically not of high importance. If the data exchange is just a part of a more comprehensive scenario (e.g. multi-purpose, multi-domain, gateway, or data-sharing scenarios), a master DSD with satellite DSDs is preferable.
389 389  
... ... @@ -391,20 +391,17 @@
391 391  
392 392  **Table 8. Data structuring approaches by role in data exchange**
393 393  
394 -|**Role in data exchange**|**One DSD vs. master + satellite DSDs vs. multiple, indep. DSDs**
395 -|**Data provider**|It is easier to set up a data submission process against a single DSD (= less initial costs) than against multiple DSDs.
396 -|**Data collector**|(((
352 +|(% style="width:216px" %)**Role in data exchange**|(% style="width:1399px" %)**One DSD vs. master + satellite DSDs vs. multiple, indep. DSDs**
353 +|(% style="width:216px" %)**Data provider**|(% style="width:1399px" %)It is easier to set up a data submission process against a single DSD (= less initial costs) than against multiple DSDs.
354 +|(% style="width:216px" %)**Data collector**|(% style="width:1399px" %)(((
397 397  Data validation is easier with DSDs that only cover what needs to be collected. This is achieved via constraints in the master + satellites approach or via tailor-made independent DSDs. If a single DSD is used in a multi-domain or –purpose scenario, necessary constraints can be specified in the data flow definition or data provision agreement.
398 -
399 399  Further processing of collected data is more flexible and easier if relations are transparent and code lists are shared as in the one DSD or master + satellite DSDs approaches. The “shared context” created through the master DSD increases harmonization and standardization and this way facilitates combined usage of data.
400 400  )))
401 -|**Role in data exchange**|**One DSD vs. master + satellite DSDs vs. multiple, indep. DSDs**
402 -|**DSD maintenance**|(((
358 +|(% style="width:216px" %)**DSD maintenance**|(% style="width:1399px" %)(((
403 403  The complexity and initial costs for developing and maintaining master + satellite DSDs are higher than for independent DSDs as this involves managing constraints and managing impacts of changes in shared code lists to all DSDs.
404 -
405 405  In the multiple independent DSDs approach, development and maintenance efforts may be distributed. This can be seen as an advantage, but on the other hand requires coordination in case the DSDs are only partially independent (i.e. share some code lists).
406 406  )))
407 -|**End user (“the public”)**|For data discovery and retrieval the user needs to know what data is actually available (instead of what might be collected/disseminated with a certain data structure). This means that the potential sparseness should be hidden from the user. A reduced DSD derived from the data structure used in the background is more useful in most cases. Whether this is done via one DSD and constraints, master + satellite DSDs, or independent DSDs does not matter that much for the user.
362 +|(% style="width:216px" %)**End user (“the public”)**|(% style="width:1399px" %)For data discovery and retrieval the user needs to know what data is actually available (instead of what might be collected/disseminated with a certain data structure). This means that the potential sparseness should be hidden from the user. A reduced DSD derived from the data structure used in the background is more useful in most cases. Whether this is done via one DSD and constraints, master + satellite DSDs, or independent DSDs does not matter that much for the user.
408 408  
409 409  = 5 MINIMUM STRUCTURAL AND SEMANTIC REQUIREMENTS =
410 410  
... ... @@ -434,19 +434,20 @@
434 434  
435 435  **Table 9. Minimum requirements for DSDs~*~***
436 436  
437 -|**Question**|**Concept**|**COG**|**Code list**|**Time series Cross-section**
438 -|Where?|reference area|X|revision|mand. attribute or dimension
439 -|What?|“indicator”|-|domain|one or multiple dimensions
440 -|How?|unit of measure|X|development|mand. attribute or dimension
441 -|How?|unit multiplier|X|available|mandatory attribute
442 -|How?|decimals|X|available|mandatory attribute
443 -|How?|//adjustment//|X|development|mand. att. not relevant
444 -|When?|time period|X|format|dimension mand. att.
445 -|When?|time format|X|available|mandatory attribute
446 -|When?|time period – collection|X|development|mand. att. cond. att.
447 -|When?|data update – last update|X|time stamp|mandatory attribute
448 -|How often?|//frequency//|X|available|mand. att. or not relevant
449 -|(% colspan="2" %)How much? observation value|-|numeric|dimension measure
392 +(% style="width:1308.83px" %)
393 +|(% style="width:205px" %)**Question**|(% style="width:272px" %)**Concept**|(% style="width:178px" %)**COG**|(% style="width:270px" %)**Code list**|(% style="width:290px" %)**Time series**|(% style="width:221px" %)**Cross-section**
394 +|(% style="width:205px" %)Where?|(% style="width:272px" %)reference area|(% style="width:178px" %)X|(% style="width:270px" %)revision|(% colspan="2" rowspan="1" style="width:478px" %)mand. attribute or dimension
395 +|(% style="width:205px" %)What?|(% style="width:272px" %)“indicator”|(% style="width:178px" %)-|(% style="width:270px" %)domain|(% colspan="2" rowspan="1" style="width:478px" %)one or multiple dimensions
396 +|(% style="width:205px" %)How?|(% style="width:272px" %)unit of measure|(% style="width:178px" %)X|(% style="width:270px" %)development|(% colspan="2" rowspan="1" style="width:478px" %)mand. attribute or dimension
397 +|(% style="width:205px" %)How?|(% style="width:272px" %)unit multiplier|(% style="width:178px" %)X|(% style="width:270px" %)available|(% colspan="2" rowspan="1" style="width:478px" %)mandatory attribute
398 +|(% style="width:205px" %)How?|(% style="width:272px" %)decimals|(% style="width:178px" %)X|(% style="width:270px" %)available|(% colspan="2" rowspan="1" style="width:478px" %)mandatory attribute
399 +|(% style="width:205px" %)How?|(% style="width:272px" %)//adjustment//|(% style="width:178px" %)X|(% style="width:270px" %)development|(% style="width:290px" %)mand. att.|(% style="width:221px" %) not relevant
400 +|(% style="width:205px" %)When?|(% style="width:272px" %)time period|(% style="width:178px" %)X|(% style="width:270px" %)format|(% style="width:290px" %)dimension|(% style="width:221px" %)mand. att.
401 +|(% style="width:205px" %)When?|(% style="width:272px" %)time format|(% style="width:178px" %)X|(% style="width:270px" %)available|(% colspan="2" rowspan="1" style="width:478px" %)mandatory attribute
402 +|(% style="width:205px" %)When?|(% style="width:272px" %)time period – collection|(% style="width:178px" %)X|(% style="width:270px" %)development|(% style="width:290px" %)mand. att.|(% style="width:221px" %)cond. att.
403 +|(% style="width:205px" %)When?|(% style="width:272px" %)data update – last update|(% style="width:178px" %)X|(% style="width:270px" %)time stamp|(% colspan="2" rowspan="1" style="width:478px" %)mandatory attribute
404 +|(% style="width:205px" %)How often?|(% style="width:272px" %)//frequency//|(% style="width:178px" %)X|(% style="width:270px" %)available|(% style="width:290px" %)mand. att. or|(% style="width:221px" %)not relevant
405 +|(% style="width:205px" %)How much?|(% style="width:272px" %)observation value|(% style="width:178px" %)-|(% style="width:270px" %)numeric|(% colspan="2" rowspan="1" style="width:290px" %) measure
450 450  
451 451  ~*~*Concepts in //italics// are only relevant for time series DSDs. An “X” in the COG column means the concept is defined in the COG. Code list “development” means that the SWG will develop a code list to be recommended in the COG; “revision” means that the code list is recommended by the COG and under revision by the SWG; “format” means that a format is defined by another concept; “text”, “time stamp”, and “numeric” provide data types used for uncoded concepts.
452 452  
... ... @@ -454,33 +454,25 @@
454 454  
455 455  **Table 10. Suggested additional concepts for certain scenarios~*~***
456 456  
457 -|**Question**|**Concept**|**COG**|**Code list**|**TS CS**|**Scenario**
413 +|**Question**|**Concept**|**COG**|**Code list**|**TS**|**CS**|**Scenario**
458 458  |Who?|compiling agency|X|development|(((
459 -conditional conditional
460 -
461 - (sibling) (obs. level)
462 -)))|data provider different from data compiler
415 +conditional (sibling)
416 +)))|conditional (obs. level)|data provider different from data compiler
463 463  |Who?|(((
464 -confidentiality
465 -
466 -status – observation
467 -)))|X|available|mandatory (obs. level)|except dissemination
468 -|How?|observation status|X|available|conditional (obs. level)|except orig. collection
418 +confidentiality status – observation
419 +)))|X|available|(% colspan="2" rowspan="1" %)mandatory (obs. level)|except dissemination
420 +|How?|observation status|X|available|(% colspan="2" rowspan="1" %)conditional (obs. level)|except orig. collection
469 469  |How much?|(((
470 -//observation pre-//
422 +//observation pre-break value//
423 +)))|-|numeric|cond. (obs.)|not relevant|except orig. collection
424 +|What and how?|//time series title//|X|text|cond. (TS)|not relevant|dissemination
471 471  
472 -//break value//
473 -)))|-|numeric|cond. (obs.) not relevant|except orig. collection
474 -|What and how?|//time series title//|X|text|cond. (TS) not relevant|dissemination
475 -
476 476  ~** The legend of Table 9 applies to Table 10 as well. The suggested attachment level of attributes (if any) is provided in parentheses in the TS (time series) or CS (cross-section) columns. In case an attribute does not vary at that level in a certain use case, it should be attached at the highest possible level.
477 477  
478 478  == 5.2 Attribute attachment levels and definition of groups ==
479 479  
480 -Each concept can only be used once as a dimension or an attribute in one DSD. Each attribute must be explicitly attached to an observation, series, or group. The attachment level
430 +Each concept can only be used once as a dimension or an attribute in one DSD. Each attribute must be explicitly attached to an observation, series, or group. The attachment level depends on whether the value of the attribute changes by observation, observation group, or time series, or is the same for all observations. In the latter case, the attribute has to be specified at the //data flow// or //dataset// level. For some attributes described in the previous section, a certain attachment level applies, for others the attachment level depends on the data. For example, the time series title has to be attached at the time series level and the observation status at the observation level.
481 481  
482 -depends on whether the value of the attribute changes by observation, observation group, or time series, or is the same for all observations. In the latter case, the attribute has to be specified at the //data flow// or //dataset// level. For some attributes described in the previous section, a certain attachment level applies, for others the attachment level depends on the data. For example, the time series title has to be attached at the time series level and the observation status at the observation level.
483 -
484 484  Series and groups are useful groupings of data that allow the specification of attributes for a set of observations instead of having to declare those attributes for every data point thereby. This increases the readability of an SDMX data file, reduces the size of the data file, and (in some cases) even increases the processing efficiency.
485 485  
486 486  Series is relevant for time series data only. It refers to a group of observations that differ only with respect to the time dimension, i.e. all dimensions except time define the series attachment level. The best-known example of a group definition is the sibling group that combines time series with different frequencies. Observations in a sibling group differ with respect to frequency and time; all other dimensions are used to define the sibling group. A sibling group can be regarded as a time series group with the frequency excluded from the group definition. Any other combination of dimensions (or a single dimension) can also be used to define an observation group. An example for a group defined by a single dimension is reporting country. For instance, attributes related to methodology are often the same for all data of a country. In order to attach attributes to a group, a name for that group has to be specified.
... ... @@ -496,10 +496,8 @@
496 496  * //ID//: a unique identifier of the message
497 497  * //Test//: a Boolean attribute that indicates whether the message is for test purposes or not
498 498  * //Prepared//: the date the message was prepared
499 -* //Sender//: the identification of the organization that is transmitting the message
447 +* //Sender//: the identification of the organization that is transmitting the message (recommended: code from the agency code list in the SDMX COG)
500 500  
501 -(recommended: code from the agency code list in the SDMX COG)
502 -
503 503  From a business perspective, the inclusion of the //Name// element is highly recommended, as it can help to understand the purpose of the exchange message. Other header elements such as //Receiver// are optional.
504 504  
505 505  = 6 STEP-BY-STEP GUIDE =
... ... @@ -510,13 +510,15 @@
510 510  
511 511  Figure 1 provides an overview of the overall process. As a first step, the context of the data exchange(s) that should be covered by the DSD(s) is defined in terms of purpose, domains, level of exchange, type of data, type of recipient, role of in data exchange, process pattern, and GSBPM phase (see Figure 2). Since reusing existing artefacts is one of the guiding principles, the second step identifies existing DSDs that may be reused (see Figure 3). In case relevant DSDs are available, their suitability in the present context is evaluated in step 3. Aspects to be taken into account are concept coverage, concept roles, attribute attachment levels, and code lists (see Figure 4). Step 4 is subject to the outcome of step 3. In case of a favorable assessment, the DSDs are simply reused. If the DSDs are partly suitable, modified versions can be derived. See section 2. for a summary of possible DSD modification scenarios. If the DSDs are not suitable or if no relevant DSDs are available at all, new DSDs will be defined as described in section 3. Finally, supporting artefacts such as data flow definitions and data provision agreements are defined (see Figure 5).
512 512  
459 +(% class="wikigeneratedid" %)
460 +[[image:1768470533088-795.png]]
513 513  
514 514  (% class="wikigeneratedid" id="HFigure1.OverviewoftheDSDdesignprocess" %)
515 515  Figure 1. Overview of the DSD design process
516 516  
517 -
518 518  Figure 2 summarizes the characteristics of the data exchange context that is defined in step 1. These characteristics affect the decision on the data structuring approach that is part of the process of defining the concepts of a new DSD (step 4.3. in Figure 1; see Figure 7 in section 2.).
519 519  
467 +[[image:1768470575978-226.png]]
520 520  
521 521  (% class="wikigeneratedid" id="HFigure2.Characteristicsofdataexchangecontext" %)
522 522  Figure 2. Characteristics of data exchange context
... ... @@ -523,20 +523,23 @@
523 523  
524 524  Figure 3 recaps the priorities given to different types of existing DSDs when searching for candidates for reuse in step 2. Global DSDs maintained by the SDMX consortium are ranked the highest. They can be found via the Global SDMX Registry.
525 525  
474 +(% class="wikigeneratedid" %)
475 +[[image:1768470596130-305.png]]
526 526  
527 527  (% class="wikigeneratedid" id="HFigure3.PriorityrankingofexistingDSDsforreuse" %)
528 528  Figure 3. Priority ranking of existing DSDs for reuse
529 529  
530 -
531 531  Figure 4 summarizes the aspects to be considered in the assessment of the suitability of existing DSDs in step 3. For a detailed description of the cases of partial unsuitability see section 2.1. above.
532 532  
482 +(% class="wikigeneratedid" %)
483 +[[image:1768470626558-321.png]]
533 533  
534 534  (% class="wikigeneratedid" id="HFigure4.AspectsofDSDsuitability" %)
535 535  Figure 4. Aspects of DSD suitability
536 536  
537 -
538 538  Figure 5 lists the most relevant artefacts required in addition to a DSD, its concept scheme, and code lists.
539 539  
490 +[[image:1768470646456-652.png]]
540 540  
541 541  Figure 5. Supporting artefacts
542 542  
... ... @@ -544,48 +544,83 @@
544 544  
545 545  Figure 6 briefly recapitulates the actions that can be taken to overcome partial unsuitability of DSDs. As far as possible, existing artefacts should be reused in this case. This means that even if a DSD cannot be reused as a whole, concepts and code lists from that DSD can be included in the new DSD by reference.
546 546  
547 -**Figure 6. DSD modification scenarios**
498 +[[image:1768470678965-391.png]]
548 548  
500 +Figure 6. DSD modification scenarios
501 +
549 549  == 6.3 Defining new DSDs ==
550 550  
551 551  In case no (suitable) DSD is available, the actual process of specifying a new DSD is started. Figure 7 depicts this process (step 4.3. in Figure 1). It encompasses the specification of concepts, code lists, and data formats. All three specification steps include the identification of already existing artefacts that could be reused or modified to satisfy the requirements at hand and the definition of new artefacts in case no suitable artefacts are detected. Several iterations of steps 1 (specification of concepts; see Figure 8) and 2 (specification of code lists; see Figure°13) may be necessary, including revisions of the decision concerning the data structuring approach. Finally all artefacts defined in the previous steps are put together into a DSD.
552 552  
553 -==== Figure 7. New DSD specification process ====
506 +(% class="wikigeneratedid" %)
507 +[[image:1768470705894-724.png]]
554 554  
509 +(% class="wikigeneratedid" id="HFigure7.NewDSDspecificationprocess" %)
510 +Figure 7. New DSD specification process
511 +
555 555  Figure 8 outlines step 4.3.1, the process of concept specification. It covers the decision on the structuring approach, the identification of relevant concepts and the assessment of their suitability, the definition of new concepts, concept roles, and attribute attachment levels.
556 556  
557 -==== Figure 8. Concept specification process ====
514 +(% class="wikigeneratedid" %)
515 +[[image:1768470729899-225.png]]
558 558  
517 +(% class="wikigeneratedid" id="HFigure8.Conceptspecificationprocess" %)
518 +Figure 8. Concept specification process
519 +
559 559  Both, the decision on reuse of existing concepts as well as the definition of new ones, may lead back to a revision of the data structuring approach. For example, it could turn out that a certain concept needs to be broken down further which may lead from a “few composite dimensions” to a “many pure dimensions” approach. Figure 9 provides the design options involved in the decision on a data structuring approach. The options are defined in terms of the number of DSDs and the number of concepts (especially dimensions). The reasonability and feasibility of these options depend on the context of the present data exchange(s) as defined in the first step of the overall design process and on the content of the data exchange with respect to concepts.
560 560  
561 -==== Figure 9. DSD design options ====
522 +(% class="wikigeneratedid" %)
523 +[[image:1768470752201-691.png]]
562 562  
525 +(% class="wikigeneratedid" id="HFigure9.DSDdesignoptions" %)
526 +Figure 9. DSD design options
527 +
563 563  In the second step of new DSD design, relevant existing concepts are identified. Figure 10 indicates potential sources of those concepts such as the SDMX COG for cross-domain concepts, global or other DSDs as already identified earlier in the process, and domain standards such as the UN's System of National Accounts Manual 2008 for domain-specific concepts.
564 564  
565 -==== Figure 10. Potential sources of concepts and definitions ====
530 +(% class="wikigeneratedid" %)
531 +[[image:1768470775109-874.png]]
566 566  
533 +(% class="wikigeneratedid" id="HFigure10.Potentialsourcesofconceptsanddefinitions" %)
534 +Figure 10. Potential sources of concepts and definitions
535 +
567 567  The definition of new concepts (step 4.3.1.4.2.) is necessary if no (suitable) concept can be reused. It entails giving each concept a name, a code, and a definition. Further details about the usage of the concepts in the DSD are specified in steps 4.3.1.5. (concept roles), 4.3.1.6. (dimension groups), and 4.3.1.7. (attribute attachment levels). Figure 11 and 12 summarize the possible concept roles and attribute attachment levels.
568 568  
569 569  The second step in the process of defining a new DSD is the specification of code lists for all coded concepts. All dimensions must be coded (with time being an exception to this rule); attributes may be coded. For uncoded concepts, a data format has to be specified. Existing formats may be reused or new ones defined. An example is the time format that is specified in the SDMX COG. Figure 13 illustrates the code list specification process. If no relevant and suitable code list exists, a new one will be defined or a partially suitable one will be adapted (see Figure 16). Suitable code lists can simply be reused via reference.
570 570  
540 +[[image:1768470796725-270.png]]
571 571  
542 +(% class="wikigeneratedid" %)
543 +Figure 11. Possible concept roles
544 +
545 +(% class="wikigeneratedid" %)
546 +[[image:1768470829131-599.png]]
547 +
548 +(% class="wikigeneratedid" %)
549 +Figure 12. Possible attribute attachment levels
550 +
551 +(% class="wikigeneratedid" %)
552 +[[image:1768470860119-204.png]]
553 +
572 572  (% class="wikigeneratedid" id="HFigure13.Codelistspecificationprocess" %)
573 573  Figure 13. Code list specification process
574 574  
575 -
557 +(% class="wikigeneratedid" %)
576 576  Figure 14 recaps the priorities given to different types of existing code lists when searching for candidates for reuse (step 4.3.2.1.). Code lists recommended by the SDMX COG (and maintained by the SDMX consortium) are ranked the highest.
577 577  
560 +[[image:1768470878394-873.png]]
578 578  
579 579  (% class="wikigeneratedid" id="HFigure14.Priorityrankingofexistingcodelistsforreuse" %)
580 580  Figure 14. Priority ranking of existing code lists for reuse
581 581  
582 -
565 +(% class="wikigeneratedid" %)
583 583  Figure 15 summarizes the aspects to be considered in the evaluation of the suitability of existing code lists (step 4.3.2.2.). Figure 16 summarizes the scenarios of adapting existing code lists that do not fully meet the specified needs (step 4.3.2.3.2). For a detailed description of the cases of partial unsuitability see section 2.1. above.
584 584  
568 +[[image:1768470896763-366.png]]
585 585  
586 586  (% class="wikigeneratedid" id="HFigure15.Aspectsofcodelistsuitability" %)
587 587  Figure 15. Aspects of code list suitability
588 588  
573 +(% class="wikigeneratedid" %)
574 +[[image:1768470911321-123.png]]
589 589  
590 590  (% class="wikigeneratedid" id="HFigure16.Codelistmodificationscenarios" %)
591 591  Figure 16. Code list modification scenarios
... ... @@ -598,8 +598,11 @@
598 598  
599 599  Figure 17 provides an overview of all steps in the DSD design process as described in the previous subsections 1. to 3. Figure 18 compiles those steps into a checklist for DSD designers to help them make sure all aspects are considered.
600 600  
587 +[[image:1768471052577-528.png]]
588 +
601 601  Figure 17. DSD design process
602 602  
591 +[[image:1768470939545-136.png]]
603 603  
604 604  Figure 18. Checklist for DSD design process
605 605  
1768469652632-803.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +10.7 KB
Content
1768470533088-795.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +48.6 KB
Content
1768470575978-226.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +95.8 KB
Content
1768470596130-305.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +44.4 KB
Content
1768470611326-907.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +51.5 KB
Content
1768470626558-321.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +51.5 KB
Content
1768470646456-652.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +32.7 KB
Content
1768470678965-391.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +117.9 KB
Content
1768470705894-724.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +23.9 KB
Content
1768470729899-225.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +66.5 KB
Content
1768470752201-691.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +38.0 KB
Content
1768470775109-874.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +36.5 KB
Content
1768470796725-270.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +30.7 KB
Content
1768470829131-599.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +30.8 KB
Content
1768470860119-204.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +37.9 KB
Content
1768470878394-873.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +49.7 KB
Content
1768470896763-366.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +29.9 KB
Content
1768470911321-123.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +49.2 KB
Content
1768470939545-136.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +143.4 KB
Content
1768471052577-528.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.helena
Size
... ... @@ -1,0 +1,1 @@
1 +97.4 KB
Content
© Semantic R&D Group, 2026