4.6 Creating DSD, ContentConstraint and Dataflow

In SDMX, a Data Structure Definition (DSD) is used to organise data in a specific format. Represented as a cube, a DSD is made up of dimensions and attributes. A Dataflow, on the other hand, represents a specific portion or filtered view of the cube that the DSD represents. A Content Constraint specifies the permitted code list and codes for a particular Dataflow.

In SDMX Constructor, the Table Modeller feature provides an intuitive user interface for designing statistical tables and generating the corresponding SDMX artefacts.

Recalling our two initial tables (Table: 4.1 and Table: 4.2), we will now generate DSDs, ContentConstraints and Dataflows. We can create all these artefacts through the Table Modeller option in the SDMX Constructor.

  • Click on the Table Modeller button on top and ensure that the folder we created before, LOCAL_REGISTRY, is selected from the Table Modeller Editor’s ‘Load from registry’ dropdown option, as shown below.

Click here to enlarge the image

  • You will notice the concept scheme we created before, as highlighted below.

Click here to enlarge the image

  • Double-clicking the concept scheme will move it to the CONCEPT POOL, as shown below.

Click here to enlarge the image

  • Now, you can select the concepts in the CONCEPT POOL, then drag and drop them into various spaces (Constant Dimensions, Header, Side, Measures & Observation Attributes and Footnotes & Table Attributes) on the right pane. The logic driving where to drop each concept comes from our original tables (Table: 4.1 and Table: 4.2).

  • For Table 4.1 (Unemployment Rate by sex and region), the following distribution will be representative.

Click here to enlarge the image

  • We can now apply two constraints: one for the indicator’s name and the other for the unit of measure. The indicator’s name will be the Unemployment Rate, which we can select by double-clicking the moved indicator concept as shown below.

Click here to enlarge the image

  • Another constraint would be the unit of measure. Because it is ‘rate’ (for Table 4.1), double-clicking the moved unit of measure concept would offer the option to select the rate. Select the Rate as shown below.

Click here to enlarge the image

  • Now we add the table information as shown below.

Click here to enlarge the image

  • Then we will hit save (select ‘Save without descendants’), as shown below.

Click here to enlarge the image

  • After saving, it will show a message as shown below.

Click here to enlarge the image

  • Clicking on Continue will result in a pop-up asking to save the file, as shown below.

Click here to enlarge the image

  • Clicking Save will show this message and ask if the files should be merged.

Click here to enlarge the image

  • Clicking on Yes will merge the file.
  • We will repeat the process for Table 4.2 (Population outside the labour force by sex and age group (2022)). We can do that by moving Age to the ‘Side’ space (and removing the Geo back to the CONCEPT POOL), changing the constraints for the indicator to ‘Population outside the labour force’ and unit of measure to ‘Persons’, and updating the table information as shown below.

Click here to enlarge the image

  • After hitting the save (Save without descendants) button, the message will read like the one below.

Click here to enlarge the image

  • Proceed with ‘Continue’, ‘Save’, and ‘Yes’ for merge.

  • We should see two DSDs, two content constraints and two data flows. Remember, dataflows are the filtered view of the DSDs.