Last modified by Helena on 2025/09/10 11:19
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 1 added, 0 removed)
-
Objects (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Tags
-
... ... @@ -1,0 +1,1 @@ 1 +Artefact|Attribute|Category scheme|Code list|Component|Data set|Data structure definition|Dataflow|Dimension|Maintenance agency|Measure|Metadata repository|Metadata set|Metadata structure definition|Metadataflow|Notification|Provision agreement|Reference metadata|SDMX Information Model|SDMX Registry|SDMX-JSON|SDMX-ML|Statistical data and metadata exchange|Structural metadata - Content
-
... ... @@ -2,7 +2,8 @@ 2 2 {{toc/}} 3 3 {{/box}} 4 4 5 -= Revision History = 5 +(% class="wikigeneratedid" id="HRevisionHistory" %) 6 +**Revision History** 6 6 7 7 ((( 8 8 (% style="width:838.294px" %) ... ... @@ -13,69 +13,69 @@ 13 13 14 14 = 1 Introduction = 15 15 16 -The business vision for SDMX envisages the promotion of a “data sharing” model to facilitate low-cost, high-quality statistical data and metadata exchange. Data sharing reduces the reporting burden of organisations by allowing them to publish data once and let their counterparties “pull” data and related metadata as required. The scenario is based on: 17 +The business vision for [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] envisages the promotion of a “data sharing” model to facilitate low-cost, high-quality [[statistical data and metadata exchange>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]]. Data sharing reduces the reporting burden of organisations by allowing them to publish data once and let their counterparties “pull” data and related metadata as required. The scenario is based on: 17 17 18 -* the availability of an abstract information model capable of supporting time series and cross-sectional data, structural metadata, and reference metadata (SDMX-IM) 19 -* standardised XML and JSON schemas for the SDMX-ML and SDMX-JSON formats derived from the model (XSD, JSON) 19 +* the availability of an abstract information model capable of supporting time series and cross-sectional data, [[structural metadata>>doc:xwiki:Glossary.Structural metadata.WebHome]], and [[reference metadata>>doc:xwiki:Glossary.Reference metadata.WebHome]] ([[SDMX-IM>>doc:xwiki:Glossary.SDMX Information Model.WebHome]]) 20 +* standardised XML and JSON schemas for the [[SDMX-ML>>doc:xwiki:Glossary.SDMX-ML.WebHome]] and [[SDMX-JSON>>doc:xwiki:Glossary.SDMX-JSON.WebHome]] formats derived from the model (XSD, JSON) 20 20 * the use of web-services technology (XML, JSON, Open API) 21 21 22 -Such an architecture needs to be well organised, and the SDMX Registry/Repository (SDMXRR) is tasked with providing structure, organisation, and maintenance and query interfaces for most of the SDMX components required to support the data sharing vision. 23 +Such an architecture needs to be well organised, and the [[SDMX Registry>>doc:xwiki:Glossary.SDMX Registry.WebHome]]/Repository (SDMXRR) is tasked with providing structure, organisation, and maintenance and query interfaces for most of the [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] [[components>>doc:xwiki:Glossary.Component.WebHome]] required to support the data sharing vision. 23 23 24 -However, it is important to emphasise that the SDMX-RR provides support for the submission and retrieval of all SDMX structural metadata and provisioning metadata. Therefore, the Registry not only supports the data-sharing scenario, but this metadata is also vital in order to provide support for data and metadata reporting/collection, and dissemination scenarios. 25 +However, it is important to emphasise that the [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]]-RR provides support for the submission and retrieval of all [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] [[structural metadata>>doc:xwiki:Glossary.Structural metadata.WebHome]] and provisioning metadata. Therefore, the Registry not only supports the data-sharing scenario, but this metadata is also vital in order to provide support for data and metadata reporting/collection, and dissemination scenarios. 25 25 26 -Standard formats for the exchange of aggregated statistical data and metadata as prescribed in SDMX v3.0 are envisaged to bring benefits to the statistical community because data reporting and dissemination processes can be made more efficient. 27 +Standard formats for the exchange of aggregated statistical data and metadata as prescribed in [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] v3.0 are envisaged to bring benefits to the statistical community because data reporting and dissemination processes can be made more efficient. 27 27 28 -As organisations migrate to SDMX enabled systems, many XML, JSON (and conventional) artefacts will be produced (e.g., Data Structure, Metadata Structure, Code List and Concept definitions – often collectively called structural metadata – XML schemas generated from data structure definitions, XSLT stylesheets for transformation and display of data and metadata, terminology references, etc.). The SDMX model supports interoperability, and it is important to be able to discover and share these artefacts between parties in a controlled and organized way. 29 +As organisations migrate to [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] enabled systems, many XML, JSON (and conventional) [[artefacts>>doc:xwiki:Glossary.Artefact.WebHome]] will be produced (e.g., Data Structure, Metadata Structure, [[Code List>>doc:xwiki:Glossary.Code list.WebHome]] and (% style="color:#2ecc71" %)Concept(%%) definitions – often collectively called [[structural metadata>>doc:xwiki:Glossary.Structural metadata.WebHome]] – XML schemas generated from [[data structure definitions>>doc:xwiki:Glossary.Data structure definition.WebHome]], XSLT stylesheets for transformation and display of data and metadata, terminology references, etc.). The [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] model supports interoperability, and it is important to be able to discover and share these [[artefacts>>doc:xwiki:Glossary.Artefact.WebHome]] between parties in a controlled and organized way. 29 29 30 30 This is the role of the registry. 31 31 32 -With the fundamental SDMX standards in place, a set of architectural standards are needed to address some of the processes involved in statistical data and metadata exchange, with an emphasis on maintenance, retrieval and sharing of the structural metadata. In addition, the architectural standards support the registration and discovery of data and referential metadata. 33 +With the fundamental [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] standards in place, a set of architectural standards are needed to address some of the processes involved in [[statistical data and metadata exchange>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]], with an emphasis on maintenance, retrieval and sharing of the [[structural metadata>>doc:xwiki:Glossary.Structural metadata.WebHome]]. In addition, the architectural standards support the registration and discovery of data and referential metadata. 33 33 34 -These architectural standards address the ‘how’, rather than the ‘what’, and are aimed at enabling existing SDMX standards to achieve their mission. The architectural standards address registry services, which initially comprise: 35 +These architectural standards address the ‘how’, rather than the ‘what’, and are aimed at enabling existing [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] standards to achieve their mission. The architectural standards address registry services, which initially comprise: 35 35 36 -* structural metadata repository 37 +* [[structural metadata>>doc:xwiki:Glossary.Structural metadata.WebHome]] repository 37 37 * data and metadata registration 38 38 * query 39 39 40 -The registry services outlined in this specification are designed to help the SDMX community manage the proliferation of SDMX assets and to support data sharing for reporting and dissemination. 41 +The registry services outlined in this specification are designed to help the [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] community manage the proliferation of [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] assets and to support data sharing for reporting and dissemination. 41 41 42 42 = {{id name="_Toc93832"/}}2 Scope and Normative Status = 43 43 44 -The scope of this document is to specify the logical interfaces for the SDMX registry in terms of the functions required and the data that may be present in the function call, and the behaviour expected of the registry. 45 +The scope of this document is to specify the logical interfaces for the [[SDMX registry>>doc:xwiki:Glossary.SDMX Registry.WebHome]] in terms of the functions required and the data that may be present in the function call, and the behaviour expected of the registry. 45 45 46 46 In this document, functions and behaviours of the Registry Interfaces are described in four ways: 47 47 48 48 * in text 49 49 * with tables 50 -* with UML diagrams excerpted from the SDMX Information Model (SDMX-IM) 51 -* with UML diagrams that are not a part of the SDMX-IM but are included here for clarity and to aid implementations (these diagrams are clearly marked as “Logical Class Diagram ...”) 51 +* with UML diagrams excerpted from the [[SDMX Information Model>>doc:xwiki:Glossary.SDMX Information Model.WebHome]] ([[SDMX-IM>>doc:xwiki:Glossary.SDMX Information Model.WebHome]]) 52 +* with UML diagrams that are not a part of the [[SDMX-IM>>doc:xwiki:Glossary.SDMX Information Model.WebHome]] but are included here for clarity and to aid implementations (these diagrams are clearly marked as “Logical Class Diagram ...”) 52 52 53 53 Whilst the introductory section contains some information on the role of the registry, it is assumed that the reader is familiar with the uses of a registry in providing shared metadata across a community of counterparties. 54 54 55 -Note that chapters 5 and 6 below contain normative rules regarding the Registry Interface and the identification of registry objects. Further, the minimum standard for access to the registry is via a REST interface (HTTP or HTTPS), as described in the appropriate sections. The notification mechanism must support e-mail and HTTP/HTTPS protocols as described. Normative registry interfaces are specified in the SDMX-ML specification (Section 3 of the SDMX Standard). All other sections of this document are informative. 56 +Note that chapters 5 and 6 below contain normative rules regarding the Registry Interface and the identification of registry objects. Further, the minimum standard for access to the registry is via a REST interface (HTTP or HTTPS), as described in the appropriate sections. The [[notification>>doc:xwiki:Glossary.Notification.WebHome]] mechanism must support e-mail and HTTP/HTTPS protocols as described. Normative registry interfaces are specified in the [[SDMX-ML>>doc:xwiki:Glossary.SDMX-ML.WebHome]] specification (Section 3 of the [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] Standard). All other sections of this document are informative. 56 56 57 -Note that although the term “authorised user” is used in this document, the SDMX standards do not define an access control mechanism. Such a mechanism, if required, must be chosen and implemented by the registry software provider. 58 +Note that although the term “authorised user” is used in this document, the [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]] standards do not define an access control mechanism. Such a mechanism, if required, must be chosen and implemented by the registry software provider. 58 58 59 59 = {{id name="_Toc93833"/}}3 Scope of the SDMX Registry/Repository = 60 60 61 61 == {{id name="_Toc93834"/}}3.1 Objective == 62 62 63 -The objective of the SDMX registry/repository is, in broad terms, to allow organisations to publish statistical data and reference metadata in known formats such that interested third parties can discover these data and interpret them accurately and correctly. The mechanism for doing this is twofold: 64 +The objective of the [[SDMX registry>>doc:xwiki:Glossary.SDMX Registry.WebHome]]/repository is, in broad terms, to allow organisations to publish statistical data and [[reference metadata>>doc:xwiki:Glossary.Reference metadata.WebHome]] in known formats such that interested third parties can discover these data and interpret them accurately and correctly. The mechanism for doing this is twofold: 64 64 65 -1. To maintain and publish structural metadata that describes the structure and valid content of data and reference metadata sources such as databases, metadata repositories, data sets, metadata sets. This structural metadata enables software applications to understand and to interpret the data and reference metadata in these sources. 66 -1. To enable applications, organisations, and individuals to share and to discover data and reference metadata. This facilitates data and reference metadata dissemination by implementing the data sharing vision of SDMX. 66 +1. To maintain and publish [[structural metadata>>doc:xwiki:Glossary.Structural metadata.WebHome]] that describes the structure and valid content of data and [[reference metadata>>doc:xwiki:Glossary.Reference metadata.WebHome]] sources such as databases, [[metadata repositories>>doc:xwiki:Glossary.Metadata repository.WebHome]], [[data sets>>doc:xwiki:Glossary.Data set.WebHome]], [[metadata sets>>doc:xwiki:Glossary.Metadata set.WebHome]]. This [[structural metadata>>doc:xwiki:Glossary.Structural metadata.WebHome]] enables software applications to understand and to interpret the data and [[reference metadata>>doc:xwiki:Glossary.Reference metadata.WebHome]] in these sources. 67 +1. To enable applications, organisations, and individuals to share and to discover data and [[reference metadata>>doc:xwiki:Glossary.Reference metadata.WebHome]]. This facilitates data and [[reference metadata>>doc:xwiki:Glossary.Reference metadata.WebHome]] dissemination by implementing the data sharing vision of [[SDMX>>doc:xwiki:Glossary.Statistical data and metadata exchange.WebHome]]. 67 67 68 68 == {{id name="_Toc93835"/}}3.2 Structural Metadata == 69 69 70 -Setting up structural metadata and the exchange context (referred to as “data provisioning”) involves the following steps for maintenance agencies: 71 +Setting up [[structural metadata>>doc:xwiki:Glossary.Structural metadata.WebHome]] and the exchange context (referred to as “data provisioning”) involves the following steps for [[maintenance agencies>>doc:xwiki:Glossary.Maintenance agency.WebHome]]: 71 71 72 -* agreeing and creating a specification of the structure of the data (called a Data Structure Definition or DSD in this document but also known as “key family”), which defines the dimensions, measures and attributes of a dataset and their valid value set; 73 -* if required, defining a subset or view of a DSD which allows some restriction of content called a “dataflow definition”; 74 -* agreeing and creating a specification of the structure of reference metadata (Metadata Structure Definition) which defines the metadata attributes and their presentational arrangement in a Metadataset or as part of a Dataset, and their valid values and content; 75 -* if required, defining a subset or view of an MSD which allows some restriction of content called a “metadataflow”; 76 -* defining which subject matter domains (specified as a Category Scheme) are related to the Dataflow and Metadataflow to enable browsing; 73 +* agreeing and creating a specification of the structure of the data (called a [[Data Structure Definition>>doc:xwiki:Glossary.Data structure definition.WebHome]] or [[DSD>>doc:xwiki:Glossary.Data structure definition.WebHome]] in this document but also known as “key family”), which defines the [[dimensions>>doc:xwiki:Glossary.Dimension.WebHome]], [[measures>>doc:xwiki:Glossary.Measure.WebHome]] and [[attributes>>doc:xwiki:Glossary.Attribute.WebHome]] of a [[dataset>>doc:xwiki:Glossary.Data set.WebHome]] and their valid value set; 74 +* if required, defining a subset or view of a [[DSD>>doc:xwiki:Glossary.Data structure definition.WebHome]] which allows some restriction of content called a “[[dataflow>>doc:xwiki:Glossary.Dataflow.WebHome]] definition”; 75 +* agreeing and creating a specification of the structure of [[reference metadata>>doc:xwiki:Glossary.Reference metadata.WebHome]] ([[Metadata Structure Definition>>doc:xwiki:Glossary.Metadata structure definition.WebHome]]) which defines the metadata [[attributes>>doc:xwiki:Glossary.Attribute.WebHome]] and their presentational arrangement in a Metadataset or as part of a [[Dataset>>doc:xwiki:Glossary.Data set.WebHome]], and their valid values and content; 76 +* if required, defining a subset or view of an [[MSD>>doc:xwiki:Glossary.Metadata structure definition.WebHome]] which allows some restriction of content called a “[[metadataflow>>doc:xwiki:Glossary.Metadataflow.WebHome]]”; 77 +* defining which subject matter domains (specified as a [[Category Scheme>>doc:xwiki:Glossary.Category scheme.WebHome]]) are related to the [[Dataflow>>doc:xwiki:Glossary.Dataflow.WebHome]] and [[Metadataflow>>doc:xwiki:Glossary.Metadataflow.WebHome]] to enable browsing; 77 77 * defining one or more lists of Data and Metadata Providers; 78 -* defining which Data/Metadata Providers have agreed to publish a given Dataflow/Metadataflow – this is called a Provision Agreement or Metadata Provision Agreement, respectively. 79 +* defining which Data/Metadata Providers have agreed to publish a given [[Dataflow>>doc:xwiki:Glossary.Dataflow.WebHome]]/[[Metadataflow>>doc:xwiki:Glossary.Metadataflow.WebHome]] – this is called a [[Provision Agreement>>doc:xwiki:Glossary.Provision agreement.WebHome]] or Metadata [[Provision Agreement>>doc:xwiki:Glossary.Provision agreement.WebHome]], respectively. 79 79 80 80 [[image:SDMX 3-0-0 SECTION 5 FINAL-1.0_en_28806f51.jpg||height="539" width="443"]] 81 81 ... ... @@ -183,11 +183,11 @@ 183 183 184 184 === {{id name="_Toc93847"/}}5.2.2 Structure Submission Service === 185 185 186 -The registry must support a mechanism for submitting structural metadata. This mechanism can be the SDMX REST interface for structural metadata (this is defined in the corresponding GitHub project, dedicated to the SDMX REST API: __[[https:~~/~~/github.com/sdmx>>url:https://github.com/sdmx-twg/sdmx-rest]][[->>url:https://github.com/sdmx-twg/sdmx-rest]][[twg/sdmx>>url:https://github.com/sdmx-twg/sdmx-rest]][[->>url:https://github.com/sdmx-twg/sdmx-rest]][[rest>>url:https://github.com/sdmx-twg/sdmx-rest]]__[[)>>url:https://github.com/sdmx-twg/sdmx-rest]].In order for the architecture to be scalable, the finest-grained piece of structural metadata that can be processed by the SDMX-RR is a MaintainableArtefact, with the exception of Item Schemes, where changes at an Item level is also possible (see next section on the SDMX Information Model).187 +The registry must support a mechanism for submitting structural metadata. This mechanism can be the SDMX REST interface for structural metadata (this is defined in the corresponding GitHub project, dedicated to the SDMX REST API: [[__https:~~/~~/github.com/sdmx-twg/sdmx-rest__>>https://https:github.comsdmx-twgsdmx-rest]]). In order for the architecture to be scalable, the finest-grained piece of structural metadata that can be processed by the SDMX-RR is a MaintainableArtefact, with the exception of Item Schemes, where changes at an Item level is also possible (see next section on the SDMX Information Model). 187 187 188 188 === {{id name="_Toc93848"/}}5.2.3 Structure Query Service === 189 189 190 -The registry must support a mechanism for querying for structural metadata. This mechanism can be the SDMX REST interface for structural metadata (this is defined in the corresponding GitHub project, dedicated to the SDMX REST API: __[[https:~~/~~/github.com/sdmx>>url:https://github.com/sdmx-twg/sdmx-rest]][[->>url:https://github.com/sdmx-twg/sdmx-rest]][[twg/sdmx>>url:https://github.com/sdmx-twg/sdmx-rest]][[->>url:https://github.com/sdmx-twg/sdmx-rest]][[rest>>url:https://github.com/sdmx-twg/sdmx-rest]]__ [[)>>url:https://github.com/sdmx-twg/sdmx-rest]].The registry response to this query mechanism is the SDMX Structure message, which has as its root node:191 +The registry must support a mechanism for querying for structural metadata. This mechanism can be the SDMX REST interface for structural metadata (this is defined in the corresponding GitHub project, dedicated to the SDMX REST API: [[__https:~~/~~/github.com/sdmx-twg/sdmx-rest__>>https://https:github.comsdmx-twgsdmx-rest]]). The registry response to this query mechanism is the SDMX Structure message, which has as its root node: 191 191 192 192 * Structure 193 193 ... ... @@ -280,7 +280,7 @@ 280 280 Subscription management involves a user submitting a subscription request which contains: 281 281 282 282 * a query or constraint expression in terms of a filter which defines the events for which the user is interested (e.g., new data for a specific dataflow, or for a domain category, or changes to a Data Structure Definition). 283 -* a list of URIs or endpoints to which an XML notification message can be sent. Supported endpoint types will be email (mailto~:) and HTTP POST (a normal http:~/~/ address); 284 +* a list of URIs or endpoints to which an XML notification message can be sent. Supported endpoint types will be email (mailto~: ) and HTTP POST (a normal http:~/~/ address); 284 284 * request for a list of submitted subscriptions; 285 285 * deletion of a subscription; 286 286 ... ... @@ -301,10 +301,8 @@ 301 301 302 302 a) Be a draft version. 303 303 ))) 304 -|(% style="width:188px" %)**Interface**|(% style="width:542px" %)**Behaviour** 305 305 |(% style="width:188px" %) |(% style="width:542px" %)((( 306 306 b) Not be explicitly{{footnote}}With semantic versioning, it is allowed to reference a range of artefacts, e.g., a DSD referencing a Codelist with version 1.2.3+ means all patch versions greater than 1.2.3. This means that deleting 1.2.4-draft does not break integrity of the aforementioned DSD.{{/footnote}} referenced from any other object in the Registry. 307 - 308 308 4) The semantic versioning rules in the SDMX documentation MUST be obeyed. 309 309 ))) 310 310 |(% style="width:188px" %)Structure submission|(% style="width:542px" %)Structures are submitted at the level of the Maintainable Artefact and the behaviour in “All” above is therefore at the level of the Maintainable Artefact. ... ... @@ -329,14 +329,12 @@ 329 329 330 330 The table below shows the identification and related data attributes to be stored in a registry for objects that are one of: 331 331 332 -* // Annotable//331 +* //nnotable// 333 333 * //Identifiable// 334 334 * //Nameable// 335 335 * //Versionable// 336 336 * //Maintainable// 337 337 338 -: 339 - 340 340 ((( 341 341 (% style="width:1052.29px" %) 342 342 |**Object Type**|(% style="width:241px" %)**Data Attributes**|(% style="width:156px" %)**Status**|**Data type**|(% style="width:457px" %)**Notes** ... ... @@ -364,9 +364,9 @@ 364 364 365 365 **Table 1: Common Attributes of Object Types** 366 366 367 -== ={{id name="_Toc93856"/}}6.2 Unique identification of SDMX objects ===364 +== {{id name="_Toc93856"/}}6.2 Unique identification of SDMX objects == 368 368 369 -=== =={{id name="_Toc93857"/}}6.2.1 Agencies and Metadata Providers =====366 +=== {{id name="_Toc93857"/}}6.2.1 Agencies and Metadata Providers === 370 370 371 371 The Maintenance Agency in SDMX is maintained in an Agency Scheme which itself is a sub class of Organisation Scheme – this is shown in the class diagram below. 372 372 ... ... @@ -408,32 +408,8 @@ 408 408 409 409 An example of this is shown in the XML snippet below: 410 410 411 - **<str:Codelists>**408 +[[image:1747307906944-697.png]] 412 412 413 -**<str:Codelist id="CL_FREQ" agencyID="SDMX" version="1.0.0">** 414 - 415 -**<com:Name xml:lang="en">Standard frequency Codelist</com:Name>** 416 - 417 -**</str:Codelist>** 418 - 419 -**<str:Codelist id="CL_FREQ" agencyID="AA" version="1.0.0">** 420 - 421 -**<com:Name xml:lang="en">Codelist maintained by agency AA</com:Name>** 422 - 423 -**</str:Codelist>** 424 - 425 -**<str:Codelist id="CL_FREQ" agencyID="AA.CC" version="1.0.0">** 426 - 427 -**<com:Name xml:lang="en">Codelist maintained by the AA unit CC</com:Name>** 428 - 429 -**</str:Codelist>** 430 - 431 -**<str:Codelist id="CL_FREQ" agencyID="BB.CC" version="1.0.0">** 432 - 433 -**<com:Name xml:lang="en">Codelist maintained by the BB unit CC</com:Name>** 434 - 435 -**</str:Codelist>** 436 - 437 437 **Figure 8: Example Showing Use of Agency Identifiers** 438 438 439 439 Each of these maintenance agencies has an identical Code list with the Id CL_BOP. However, each is uniquely identified by means of the hierarchic agency structure. ... ... @@ -446,8 +446,10 @@ 446 446 447 447 To provide interoperability between SDMX Registry/Repositories in a distributed network environment, it is important to have a scheme for uniquely identifying (and thus accessing) all first-class (Identifiable) SDMX-IM objects. Most of these unique identifiers are composite (containing maintenance agency, or parent object identifiers), and there is a need to be able to construct a unique reference as a single string. This is achieved by having a globally unique identifier called a universal resource name (URN) which is generated from the actual identification components in the SDMX-RR APIs. In other words, the URN for any Identifiable Artefact is constructed from its component identifiers (agency, id, version etc.). 448 448 449 -==== 6.2.2.2 URN Structure //__Case Rules for URN__ //====422 +==== 6.2.2.2 URN Structure ==== 450 450 424 +===== **//__Case Rules for URN__//** ===== 425 + 451 451 For the URN, all parts of the string are case sensitive. The generic structure of the URN is as follows: 452 452 453 453 SDMXprefix.SDMX-IM-package-name.class-name=agencyid:maintainedobjectid(maintainedobject-version).*containerobject-id.object-id ... ... @@ -458,7 +458,7 @@ 458 458 459 459 The Maintenance agency identifier is separated from the maintainable artefact identifier by a colon ‘:’. All other identifiers in the SDMX URN syntax are separated by a period ‘.’. The version information is encapsulated in parentheses ‘()’ and adheres to the SDMX versioning rules, as explained in SDMX Standards Section 6 “Technical Notes”, paragraph “4.3 Versioning. 460 460 461 - **6.2.2.3 Explanation of the generic structure**436 +==== 6.2.2.3 Explanation of the generic structure ==== 462 462 463 463 In the explanation below the actual object that is the target of the URN is called the **actual object**. 464 464 ... ... @@ -468,10 +468,23 @@ 468 468 469 469 The packages are: 470 470 471 -base codelist conceptscheme datastructure categoryscheme registry metadatastructure process structuremapping transformation 446 +base 447 +codelist 448 +conceptscheme 449 +datastructure 450 +categoryscheme 451 +registry 452 +metadatastructure 453 +process 454 +structuremapping 455 +transformation 472 472 473 -**maintainable-object-id** is the identifier of the maintainable object. This will always be present as all identifiable objects are either a maintainable object or contained in a maintainable object. **maintainable-object-version** is the version, according to the SDMX versioning rules, of the maintainable object and is enclosed in parentheses ‘()’, which are always present. **container-object-id** is the identifier of an intermediary object that contains the actual object which the URN is identifying. It is not mandatory as many actual objects do not have an intermediary container object. For instance, a Code is in a maintained object (Codelist) and has no intermediary container object, whereas a MetadataAttribute has an intermediary container object (MetadataAttributeDescriptor) and may have an intermediary container object, which is its parent MetadataAttribute. For this reason, the container object id may repeat, with each repetition identifying the object at the next-lower level in its hierarchy. Note that if there is only a single containing object in the model then it is NOT included in the URN structure. This applies to AttributeDescriptor, DimensionDescriptor, and MeasureDescriptor where there can be only one such object and this object has a fixed id. Therefore, whilst each of these has a URN, the id of the AttributeDescriptor, DimensionDescriptor, and MeasureDescriptor is not included when the actual object is a DataAttribute or a Dimension/ TimeDimension, or a Measure.457 +**maintainable-object-id** is the identifier of the maintainable object. This will always be present as all identifiable objects are either a maintainable object or contained in a maintainable object. 474 474 459 +**maintainable-object-version** is the version, according to the SDMX versioning rules, of the maintainable object and is enclosed in parentheses ‘()’, which are always present. 460 + 461 +**container-object-id** is the identifier of an intermediary object that contains the actual object which the URN is identifying. It is not mandatory as many actual objects do not have an intermediary container object. For instance, a Code is in a maintained object (Codelist) and has no intermediary container object, whereas a MetadataAttribute has an intermediary container object (MetadataAttributeDescriptor) and may have an intermediary container object, which is its parent MetadataAttribute. For this reason, the container object id may repeat, with each repetition identifying the object at the next-lower level in its hierarchy. Note that if there is only a single containing object in the model then it is NOT included in the URN structure. This applies to AttributeDescriptor, DimensionDescriptor, and MeasureDescriptor where there can be only one such object and this object has a fixed id. Therefore, whilst each of these has a URN, the id of the AttributeDescriptor, DimensionDescriptor, and MeasureDescriptor is not included when the actual object is a DataAttribute or a Dimension/ TimeDimension, or a Measure. 462 + 475 475 Note that although a Code can have a parent Code and a Concept can have a parent Concept these are maintained in a flat structure and therefore do not have a containerobject-id. 476 476 477 477 For example, the sequence is agency:DSDid(version).DimensionId and not agency:DSDid(version).DimensionDescriptorId.DimensionId. ... ... @@ -478,7 +478,7 @@ 478 478 479 479 object-id is the identifier of the actual object unless the actual object is a //Maintainable// object. If present it is always the last id and is not followed by any other character. 480 480 481 -//__**Generic Examples of the URN Structure**__// 469 +===== //__**Generic Examples of the URN Structure**__// ===== 482 482 483 483 __Actual object is a maintainable__ 484 484 ... ... @@ -504,27 +504,27 @@ 504 504 505 505 SDMXPrefix.SDMX-IM-package-name.classname=agencyid:maintained-objectid(version).contained-object-id.contained-object-id contained-objectid.object-id 506 506 507 -//__**Concrete Examples of the URN Structure**__// 495 +===== //__**Concrete Examples of the URN Structure**__// ===== 508 508 509 509 The Data Structure Definition CRED_EXT_DEBT of legacy version 2.1 maintained by the toplevel Agency TFFS would have the URN: 510 510 511 -urn:sdmx:org.sdmx.infomodel.datastructure.DataStucture=TFFS:CRED_EXT_ DEBT(2.1) 499 + urn:sdmx:org.sdmx.infomodel.datastructure.DataStucture=TFFS:CRED_EXT_ DEBT(2.1) 512 512 513 513 The URN for a code for Argentina maintained by ISO in the code list CL_3166A2 of semantic version 1.0.0 would be: 514 514 515 -urn:sdmx:org.sdmx.infomodel.codelist.Code=ISO:CL_3166A2(1.0.0).AR 503 + urn:sdmx:org.sdmx.infomodel.codelist.Code=ISO:CL_3166A2(1.0.0).AR 516 516 517 517 The URN for a category (id of 1) which has parent category (id of 2) maintained by SDMX in the category scheme SUBJECT_MATTER_DOMAINS of the semantic extended version 1.0.0draft would be: 518 518 519 -urn:sdmx:org.sdmx.infomodel.categoryscheme.Category=SDMX:SUBJECT_MATT ER_DOMAINS(1.0.0-draft).1.2 507 + urn:sdmx:org.sdmx.infomodel.categoryscheme.Category=SDMX:SUBJECT_MATT ER_DOMAINS(1.0.0-draft).1.2 520 520 521 521 The URN for a Metadata Attribute maintained by SDMX in the MSD CONTACT_METADATA of semantic version 1.0.0 where the hierarchy of the Metadata Attribute is CONTACT_DETAILS/CONTACT_NAME would be: 522 522 523 -urn:sdmx:org.sdmx.infomodel.metadatastructure.MetadataAttribute=SDMX: CONTACT_METADATA(1.0.0).CONTACT_DETAILS.CONTACT_NAME 511 + urn:sdmx:org.sdmx.infomodel.metadatastructure.MetadataAttribute=SDMX: CONTACT_METADATA(1.0.0).CONTACT_DETAILS.CONTACT_NAME 524 524 525 525 The TFFS defines ABC as a sub-Agency of TFFS then the URN of a Dataflow maintained by ABC and identified as EXTERNAL_DEBT of semantic version 1.0.0 would be: 526 526 527 -urn:sdmx:org.sdmx.infomodel.datastructure.Dataflow=TFFS.ABC:EXTERNAL_ DEBT(1.0.0) 515 + urn:sdmx:org.sdmx.infomodel.datastructure.Dataflow=TFFS.ABC:EXTERNAL_ DEBT(1.0.0) 528 528 529 529 The SDMX-RR MUST support this globally unique identification scheme. The SDMX-RR MUST be able to create the URN from the individual identification attributes submitted and to transform the URN to these identification attributes. The identification attributes are: 530 530 ... ... @@ -533,85 +533,86 @@ 533 533 534 534 The SDMX-RR MUST be able to resolve the unique identifier of an SDMX artefact and to produce an SDMX-ML rendering of that artefact if it is located in the Registry. 535 535 536 -=== =={{id name="_Toc93859"/}}6.2.3 Table of SDMX-IM Packages and Classes =====524 +=== {{id name="_Toc93859"/}}6.2.3 Table of SDMX-IM Packages and Classes === 537 537 538 538 The table below lists all of the packages in the SDMX-IM together with the concrete classes that are in these packages and whose objects have a URN. 539 539 540 -|**Package**|**URN class name (model class name where this is different)** 541 -|base|Agency 542 -| |AgencyScheme 543 -| |DataConsumer 544 -| |DataConsumerScheme 545 -| |DataProvider 546 -| |DataProviderScheme 547 -| |MetadataProvider 548 -| |MetadataProviderScheme 549 -| |OrganisationUnit 550 -| |OrganisationUnitScheme 551 -|datastructure|AttributeDescriptor 552 -| |DataAttribute 553 -| |Dataflow 554 -| |DataStructure (DataStructureDefinition) 555 -| |Dimension 556 -| |DimensionDescriptor 557 -| |GroupDimensionDescriptor 558 -| |Measure 559 -| |MeasureDescriptor 560 -| |TimeDimension 561 -| | 562 -|metadatastructure|MetadataAttribute 563 -| |MetadataAttributeDescriptor 564 -| |MetadataStructure MetadataStructureDefinition) 565 -| |Metadataflow 566 -| |MetadataSet 567 -| | 568 -|process|Process 569 -| |ProcessStep 570 -| |Transition 571 -| | 572 -|registry|DataConstraint 573 -| |MetadataConstraint 574 -| |MetadataProvisionAgreement 575 -| |ProvisionAgreement 576 -| |Subscription 577 -| | 578 -|structuremapping|CategorySchemeMap 579 -| |ConceptSchemeMap 580 -| |OrganisationSchemeMap 581 -| |ReportingTaxonomyMap 582 -| |RepresentationMap 583 -| |StructureMap 584 -| | 585 -|codelist|Code 586 -| |Codelist 587 -| |HierarchicalCode 588 -| |Hierarchy 589 -| |HierarchyAssociation 590 -| |Level 591 -| |ValueList 592 -| | 593 -|categoryscheme|Categorisation 594 -| |Category 595 -| |CategoryScheme 596 -| |ReportingCategory 597 -| |ReportingTaxonomy 598 -|conceptscheme|Concept 599 -| |ConceptScheme 600 -| | 601 -|transformation|CustomType 602 -| |CustomTypeScheme 603 -| |NamePersonalisation 604 -| |NamePersonalisationScheme 605 -| |Ruleset 606 -| |RulesetScheme 607 -| |Transformation 608 -| |TransformationScheme 609 -| |UserDefinedOperator 610 -| |UserDefinedOperatorScheme 611 -| |VtlCodelistMapping 612 -| |VtlConceptMapping 613 -| |VtlDataflowMapping 614 -| |VtlMappingScheme 528 +(% style="width:651.294px" %) 529 +|(% style="width:134px" %)**Package**|(% style="width:502px" %)**URN class name (model class name where this is different)** 530 +|(% style="width:134px" %)base|(% style="width:502px" %)Agency 531 +|(% style="width:134px" %) |(% style="width:502px" %)AgencyScheme 532 +|(% style="width:134px" %) |(% style="width:502px" %)DataConsumer 533 +|(% style="width:134px" %) |(% style="width:502px" %)DataConsumerScheme 534 +|(% style="width:134px" %) |(% style="width:502px" %)DataProvider 535 +|(% style="width:134px" %) |(% style="width:502px" %)DataProviderScheme 536 +|(% style="width:134px" %) |(% style="width:502px" %)MetadataProvider 537 +|(% style="width:134px" %) |(% style="width:502px" %)MetadataProviderScheme 538 +|(% style="width:134px" %) |(% style="width:502px" %)OrganisationUnit 539 +|(% style="width:134px" %) |(% style="width:502px" %)OrganisationUnitScheme 540 +|(% style="width:134px" %)datastructure|(% style="width:502px" %)AttributeDescriptor 541 +|(% style="width:134px" %) |(% style="width:502px" %)DataAttribute 542 +|(% style="width:134px" %) |(% style="width:502px" %)Dataflow 543 +|(% style="width:134px" %) |(% style="width:502px" %)DataStructure (DataStructureDefinition) 544 +|(% style="width:134px" %) |(% style="width:502px" %)Dimension 545 +|(% style="width:134px" %) |(% style="width:502px" %)DimensionDescriptor 546 +|(% style="width:134px" %) |(% style="width:502px" %)GroupDimensionDescriptor 547 +|(% style="width:134px" %) |(% style="width:502px" %)Measure 548 +|(% style="width:134px" %) |(% style="width:502px" %)MeasureDescriptor 549 +|(% style="width:134px" %) |(% style="width:502px" %)TimeDimension 550 +|(% style="width:134px" %) |(% style="width:502px" %) 551 +|(% style="width:134px" %)metadatastructure|(% style="width:502px" %)MetadataAttribute 552 +|(% style="width:134px" %) |(% style="width:502px" %)MetadataAttributeDescriptor 553 +|(% style="width:134px" %) |(% style="width:502px" %)MetadataStructure MetadataStructureDefinition) 554 +|(% style="width:134px" %) |(% style="width:502px" %)Metadataflow 555 +|(% style="width:134px" %) |(% style="width:502px" %)MetadataSet 556 +|(% style="width:134px" %) |(% style="width:502px" %) 557 +|(% style="width:134px" %)process|(% style="width:502px" %)Process 558 +|(% style="width:134px" %) |(% style="width:502px" %)ProcessStep 559 +|(% style="width:134px" %) |(% style="width:502px" %)Transition 560 +|(% style="width:134px" %) |(% style="width:502px" %) 561 +|(% style="width:134px" %)registry|(% style="width:502px" %)DataConstraint 562 +|(% style="width:134px" %) |(% style="width:502px" %)MetadataConstraint 563 +|(% style="width:134px" %) |(% style="width:502px" %)MetadataProvisionAgreement 564 +|(% style="width:134px" %) |(% style="width:502px" %)ProvisionAgreement 565 +|(% style="width:134px" %) |(% style="width:502px" %)Subscription 566 +|(% style="width:134px" %) |(% style="width:502px" %) 567 +|(% style="width:134px" %)structuremapping|(% style="width:502px" %)CategorySchemeMap 568 +|(% style="width:134px" %) |(% style="width:502px" %)ConceptSchemeMap 569 +|(% style="width:134px" %) |(% style="width:502px" %)OrganisationSchemeMap 570 +|(% style="width:134px" %) |(% style="width:502px" %)ReportingTaxonomyMap 571 +|(% style="width:134px" %) |(% style="width:502px" %)RepresentationMap 572 +|(% style="width:134px" %) |(% style="width:502px" %)StructureMap 573 +|(% style="width:134px" %) |(% style="width:502px" %) 574 +|(% style="width:134px" %)codelist|(% style="width:502px" %)Code 575 +|(% style="width:134px" %) |(% style="width:502px" %)Codelist 576 +|(% style="width:134px" %) |(% style="width:502px" %)HierarchicalCode 577 +|(% style="width:134px" %) |(% style="width:502px" %)Hierarchy 578 +|(% style="width:134px" %) |(% style="width:502px" %)HierarchyAssociation 579 +|(% style="width:134px" %) |(% style="width:502px" %)Level 580 +|(% style="width:134px" %) |(% style="width:502px" %)ValueList 581 +|(% style="width:134px" %) |(% style="width:502px" %) 582 +|(% style="width:134px" %)categoryscheme|(% style="width:502px" %)Categorisation 583 +|(% style="width:134px" %) |(% style="width:502px" %)Category 584 +|(% style="width:134px" %) |(% style="width:502px" %)CategoryScheme 585 +|(% style="width:134px" %) |(% style="width:502px" %)ReportingCategory 586 +|(% style="width:134px" %) |(% style="width:502px" %)ReportingTaxonomy 587 +|(% style="width:134px" %)conceptscheme|(% style="width:502px" %)Concept 588 +|(% style="width:134px" %) |(% style="width:502px" %)ConceptScheme 589 +|(% style="width:134px" %) |(% style="width:502px" %) 590 +|(% style="width:134px" %)transformation|(% style="width:502px" %)CustomType 591 +|(% style="width:134px" %) |(% style="width:502px" %)CustomTypeScheme 592 +|(% style="width:134px" %) |(% style="width:502px" %)NamePersonalisation 593 +|(% style="width:134px" %) |(% style="width:502px" %)NamePersonalisationScheme 594 +|(% style="width:134px" %) |(% style="width:502px" %)Ruleset 595 +|(% style="width:134px" %) |(% style="width:502px" %)RulesetScheme 596 +|(% style="width:134px" %) |(% style="width:502px" %)Transformation 597 +|(% style="width:134px" %) |(% style="width:502px" %)TransformationScheme 598 +|(% style="width:134px" %) |(% style="width:502px" %)UserDefinedOperator 599 +|(% style="width:134px" %) |(% style="width:502px" %)UserDefinedOperatorScheme 600 +|(% style="width:134px" %) |(% style="width:502px" %)VtlCodelistMapping 601 +|(% style="width:134px" %) |(% style="width:502px" %)VtlConceptMapping 602 +|(% style="width:134px" %) |(% style="width:502px" %)VtlDataflowMapping 603 +|(% style="width:134px" %) |(% style="width:502px" %)VtlMappingScheme 615 615 616 616 **Table 2: SDMX-IM Packages and Contained Classes** 617 617 ... ... @@ -623,136 +623,108 @@ 623 623 624 624 urn:sdmx.org.sdmx.infomodel.{package}.{classname}= 625 625 626 -|**Classname**|**Ending URN pattern**|**Example** 627 -|Agency^^[[(% class="wikiinternallink wikiinternallink wikiinternallink" %)^^2^^>>path:#sdfootnote2sym||name="sdfootnote2anc"]](%%)^^|agencySchemeAgencyId:**AGENCIES**(**1.0**).agencyId|ECB:**AGENCIES**(**1.0**).AA 628 -|//AgencyScheme//|agencySchemeAgencyId:**AGENCIES**(**1.0**)|ECB:**AGENCIES**(**1.0**) 629 -|//Categorisation//|categorisationAgencyId:categorisationId(version)|IMF:cat001(1.0.0) 630 -|Category|categorySchemeAgencyId:categorySchemeId(versi on).categoryId.categoryId.categoryId etc.|IMF:SDDS(1.0.0):level_1_category.level_2_category … 631 -|//CategoryScheme//|categorySchemeAgencyId:categorySchemeId(versi on)|IMF:SDDS(1.0.0) 632 - 633 -|**Classname**|**Ending URN pattern**|**Example** 634 -|//CategorySchemeMap//|((( 635 -catSchemeMapAgencyId:catSchemeMapId(version 636 - 637 -) 638 -)))|SDMX:EUROSTAT_SUBJECT_DOMAIN(1.0.0) 639 -|Code|codeListAgencyId:codelistId(version).codeId|SDMX:CL_FREQ(1.0.0).Q 640 -|//Codelist//|codeListAgencyId:codeListId(version)|SDMX:CL_FREQ(1.0.0) 641 -|ComponentMap|structureMapAgencyId:structureMap(version).com ponentMapId|SDMX:BOP_STRUCTURES(1.0.0).REF_AREA_TO_COUNT RY 642 -|Concept|conceptSchemeAgencyId:conceptSchemeId(versio n).conceptId|SDMX:CROSS_DOMAIN_CONCEPTS(1.0.0).FREQ 643 -|//ConceptScheme//|conceptSchemeAgencyId:conceptSchemeId(versio n)|SDMX:CROSS_DOMAIN_CONCEPTS(1.0.0) 644 -|//ConceptSchemeMap//|((( 615 +(% style="width:1419.29px" %) 616 +|(% style="width:227px" %)**Classname**|(% style="width:645px" %)**Ending URN pattern**|(% style="width:543px" %)**Example** 617 +|(% style="width:227px" %)Agency{{footnote}}The identification of an Agency in the URN structure for the maintainable object is by means of the agencyId. The AgencyScheme is not identified as SDMX has a mechanism for identifying an Agency uniquely by its Id. Note that this Id may be hierarchical. For example, a sub-agency of IMF is referred like this: IMF.SubAgency1{{/footnote}}|(% style="width:645px" %)agencySchemeAgencyId:**AGENCIES**(**1.0**).agencyId|(% style="width:543px" %)ECB:**AGENCIES**(**1.0**).AA 618 +|(% style="width:227px" %)//AgencyScheme//|(% style="width:645px" %)agencySchemeAgencyId:**AGENCIES**(**1.0**)|(% style="width:543px" %)ECB:**AGENCIES**(**1.0**) 619 +|(% style="width:227px" %)//Categorisation//|(% style="width:645px" %)categorisationAgencyId:categorisationId(version)|(% style="width:543px" %)IMF:cat001(1.0.0) 620 +|(% style="width:227px" %)Category|(% style="width:645px" %)categorySchemeAgencyId:categorySchemeId(versi on).categoryId.categoryId.categoryId etc.|(% style="width:543px" %)IMF:SDDS(1.0.0):level_1_category.level_2_category … 621 +|(% style="width:227px" %)//CategoryScheme//|(% style="width:645px" %)categorySchemeAgencyId:categorySchemeId(versi on)|(% style="width:543px" %)IMF:SDDS(1.0.0) 622 +|(% style="width:227px" %)//CategorySchemeMap//|(% style="width:645px" %)((( 623 +catSchemeMapAgencyId:catSchemeMapId(version) 624 +)))|(% style="width:543px" %)SDMX:EUROSTAT_SUBJECT_DOMAIN(1.0.0) 625 +|(% style="width:227px" %)Code|(% style="width:645px" %)codeListAgencyId:codelistId(version).codeId|(% style="width:543px" %)SDMX:CL_FREQ(1.0.0).Q 626 +|(% style="width:227px" %)//Codelist//|(% style="width:645px" %)codeListAgencyId:codeListId(version)|(% style="width:543px" %)SDMX:CL_FREQ(1.0.0) 627 +|(% style="width:227px" %)ComponentMap|(% style="width:645px" %)structureMapAgencyId:structureMap(version).com ponentMapId|(% style="width:543px" %)SDMX:BOP_STRUCTURES(1.0.0).REF_AREA_TO_COUNT RY 628 +|(% style="width:227px" %)Concept|(% style="width:645px" %)conceptSchemeAgencyId:conceptSchemeId(versio n).conceptId|(% style="width:543px" %)SDMX:CROSS_DOMAIN_CONCEPTS(1.0.0).FREQ 629 +|(% style="width:227px" %)//ConceptScheme//|(% style="width:645px" %)conceptSchemeAgencyId:conceptSchemeId(versio n)|(% style="width:543px" %)SDMX:CROSS_DOMAIN_CONCEPTS(1.0.0) 630 +|(% style="width:227px" %)//ConceptSchemeMap//|(% style="width:645px" %)((( 645 645 conceptSchemeMapAgencyId:conceptSchemeMap 646 - 647 647 Id(version) 648 -)))|SDMX:CONCEPT_MAP(1.0.0) 649 -|CustomType|customTypeSchemeAgencyId customTypeSchemeId(version) customTypeId|ECB: CUSTOM_TYPE_SCHEME(1.0.0).CUSTOM_TYPE_1 650 -|//CustomTypeScheme//|customTypeSchemeAgencyId customTypeSchemeId(version)|ECB:CUSTOM_TYPE_SCHEME(1.0.0) 651 -|DataAttrribute|dataStructureDefinitionAgencyId:dataStructureDef initionId(version).dataAttributeId|TFFS:EXT_DEBT(1.0.0).OBS_STATUS 652 -|//DataConstraint//|dataConstraintAgencyId:dataConstraintId(version)|TFFS:CREDITOR_DATA_CONTENT(1.0.0) 653 - 654 -|**Classname**|**Ending URN pattern**|**Example** 655 -|DataConsumer|dataConsumerSchemeAgencyId:**DATA_CONSUME RS**(**1.0**).dataConsumerId|SDMX:**DATA_CONSUMERS**(**1.0**).CONSUMER_1 656 -|//DataConsumerScheme//|((( 657 -dataConsumerSchemeAgencyId:**DATA_CONSUME** 658 - 659 -**RS**(**1.0**) 660 -)))|SDMX:**DATA_CONSUMERS**(**1.0**) 661 -|//Dataflow//|dataflowAgencyId:dataflowId(version)|TFFS:CRED_EXT_DEBT(1.0.0) 662 -|DataProvider|((( 663 -dataProviderSchemeAgencyId:**DATA_PROVIDERS**( 664 - 665 -**1.0**).dataProviderId 666 -)))|SDMX:**DATA_PROVIDERS**(**1.0**).PROVIDER_1 667 -|//DataProviderScheme//|((( 668 -dataProviderSchemeAgencyId:**DATA_PROVIDERS**( 669 - 670 -**1.0**) 671 -)))|SDMX:**DATA_PROVIDERS**(**1.0**) 672 -|//DataStructure//|dataStructureDefinitionAgencyId:dataStructureDef initionId(version)|TFFS:EXT_DEBT(1.0.0) 673 -|Dimension|dataStructureDefinitionAgencyId:dataStructureDef initionId(version).dimensionId|TFFS:EXT_DEBT(1.0.0).FREQ 674 -|((( 633 +)))|(% style="width:543px" %)SDMX:CONCEPT_MAP(1.0.0) 634 +|(% style="width:227px" %)CustomType|(% style="width:645px" %)customTypeSchemeAgencyId customTypeSchemeId(version) customTypeId|(% style="width:543px" %)ECB: CUSTOM_TYPE_SCHEME(1.0.0).CUSTOM_TYPE_1 635 +|(% style="width:227px" %)//CustomTypeScheme//|(% style="width:645px" %)customTypeSchemeAgencyId customTypeSchemeId(version)|(% style="width:543px" %)ECB:CUSTOM_TYPE_SCHEME(1.0.0) 636 +|(% style="width:227px" %)DataAttrribute|(% style="width:645px" %)dataStructureDefinitionAgencyId:dataStructureDef initionId(version).dataAttributeId|(% style="width:543px" %)TFFS:EXT_DEBT(1.0.0).OBS_STATUS 637 +|(% style="width:227px" %)//DataConstraint//|(% style="width:645px" %)dataConstraintAgencyId:dataConstraintId(version)|(% style="width:543px" %)TFFS:CREDITOR_DATA_CONTENT(1.0.0) 638 +|(% style="width:229px" %)DataConsumer|(% style="width:645px" %)dataConsumerSchemeAgencyId:**DATA_CONSUME RS**(**1.0**).dataConsumerId|(% style="width:543px" %)SDMX:**DATA_CONSUMERS**(**1.0**).CONSUMER_1 639 +|(% style="width:229px" %)//DataConsumerScheme//|(% style="width:645px" %)((( 640 +dataConsumerSchemeAgencyId:**DATA_CONSUME RS**(**1.0**) 641 +)))|(% style="width:543px" %)SDMX:**DATA_CONSUMERS**(**1.0**) 642 +|(% style="width:229px" %)//Dataflow//|(% style="width:645px" %)dataflowAgencyId:dataflowId(version)|(% style="width:543px" %)TFFS:CRED_EXT_DEBT(1.0.0) 643 +|(% style="width:229px" %)DataProvider|(% style="width:645px" %)((( 644 +dataProviderSchemeAgencyId:**DATA_PROVIDERS**(**1.0**).dataProviderId 645 +)))|(% style="width:543px" %)SDMX:**DATA_PROVIDERS**(**1.0**).PROVIDER_1 646 +|(% style="width:229px" %)//DataProviderScheme//|(% style="width:645px" %)((( 647 +dataProviderSchemeAgencyId:**DATA_PROVIDERS**(**1.0**) 648 +)))|(% style="width:543px" %)SDMX:**DATA_PROVIDERS**(**1.0**) 649 +|(% style="width:229px" %)//DataStructure//|(% style="width:645px" %)dataStructureDefinitionAgencyId:dataStructureDef initionId(version)|(% style="width:543px" %)TFFS:EXT_DEBT(1.0.0) 650 +|(% style="width:229px" %)Dimension|(% style="width:645px" %)dataStructureDefinitionAgencyId:dataStructureDef initionId(version).dimensionId|(% style="width:543px" %)TFFS:EXT_DEBT(1.0.0).FREQ 651 +|(% style="width:229px" %)((( 675 675 DimensionDescriptor 676 - 677 677 MeasureDescriptor 678 - 679 679 AttributeDescriptor 680 -)))|dataStructureDefinitionAgencyId:dataStructureDef initionId(version).componentListId where the componentListId is the name of the class (there is only one occurrence of each in the Data Structure Definition)|((( 655 +)))|(% style="width:645px" %)dataStructureDefinitionAgencyId:dataStructureDef initionId(version).componentListId where the componentListId is the name of the class (there is only one occurrence of each in the Data Structure Definition)|(% style="width:543px" %)((( 681 681 TFFS:EXT_DEBT(1.0.0).DimensionDescriptor 682 - 683 683 TFFS:EXT_DEBT(1.0.0).MeasureDescriptor 684 - 685 685 TFFS:EXT_DEBT(1.0.0).AttributeDescriptor 686 686 ))) 687 -|GroupDimensionDescriptor|dataStructureDefinitionAgencyId:dataStructureDef initionId(version).groupDimensionDescriptorId|TFFS:EXT_DEBT(1.0.0).SIBLING 688 -|HierarchicalCode|hierarchyAgencyId:hierarchyId(version).hierarchica lCode.hierarchicalCode|UNESCO:H-C-GOV(1.0.0).GOV_CODE1.GOV_CODE1_1 689 - 690 -|**Classname**|**Ending URN pattern**|**Example** 691 -|//Hierarchy//|hierarchyAgencyId:hierarchyId(version)|UNESCO:H-C-GOV(1.0.0) 692 -|//HierarchyAssociation//|hierarchyAssociationAgencyId:hierarchyAssociatio nId(version)|UNESCO:CL_EXP_SOURCE(1.0.0) 693 -|Level|hierarchyAgencyId:hierarchyId(version).level|UNESCO:H-C-GOV(1.0.0).LVL1 694 -|Measure|dataStructureDefinitionAgencyId:dataStructureDef initionId(version).measureId|TFFS:EXT_DEBT(1.0.0).OBS_VALUE 695 -|MetadataAttribute|((( 660 +|(% style="width:229px" %)GroupDimensionDescriptor|(% style="width:645px" %)dataStructureDefinitionAgencyId:dataStructureDef initionId(version).groupDimensionDescriptorId|(% style="width:543px" %)TFFS:EXT_DEBT(1.0.0).SIBLING 661 +|(% style="width:229px" %)HierarchicalCode|(% style="width:645px" %)hierarchyAgencyId:hierarchyId(version).hierarchica lCode.hierarchicalCode|(% style="width:543px" %)UNESCO:H-C-GOV(1.0.0).GOV_CODE1.GOV_CODE1_1 662 +|(% style="width:206px" %)//Hierarchy//|(% style="width:645px" %)hierarchyAgencyId:hierarchyId(version)|(% style="width:543px" %)UNESCO:H-C-GOV(1.0.0) 663 +|(% style="width:206px" %)//HierarchyAssociation//|(% style="width:645px" %)hierarchyAssociationAgencyId:hierarchyAssociatio nId(version)|(% style="width:543px" %)UNESCO:CL_EXP_SOURCE(1.0.0) 664 +|(% style="width:206px" %)Level|(% style="width:645px" %)hierarchyAgencyId:hierarchyId(version).level|(% style="width:543px" %)UNESCO:H-C-GOV(1.0.0).LVL1 665 +|(% style="width:206px" %)Measure|(% style="width:645px" %)dataStructureDefinitionAgencyId:dataStructureDef initionId(version).measureId|(% style="width:543px" %)TFFS:EXT_DEBT(1.0.0).OBS_VALUE 666 +|(% style="width:206px" %)MetadataAttribute|(% style="width:645px" %)((( 696 696 msdAgencyId:msdId(version).metadataAttributeId. 697 - 698 698 metadataAttributeId 699 -)))|IMF:SDDS_MSD(1.0.0).COMPILATION.METHOD 700 -|MetadataAttributeDescriptor|msdAgencyId:msdId(version).metadataAttributeDe scriptorId|IMF:SDDS_MSD(1.0.0).MetadataAttributeDescriptor 701 -|//MetadataConstraint//|metadataConstraintAgencyId:metadataConstraintI d(version)|TFFS:CREDITOR_METADATA_CONTENT(1.0.0) 702 -|//Metadataflow//|metadataflowAgencyId:metadataflowId(version)|IMF:SDDS_MDF(1.0.0) 703 -|MetadataProvider|metadataProviderSchemeAgencyId:**METADATA_P ROVIDERS**(**1.0**).metadataProviderId|SDMX:**METADATA_PROVIDERS**(**1.0**).MD_PROVIDER_1 704 -|//MetadataProviderScheme//|metadataProviderSchemeAgencyId:**METADATA_P ROVIDERS**(**1.0**)|SDMX:**METADATA_PROVIDERS**(**1.0**) 705 -|//MetadataProvisionAgreement//|metadataProvisionAgreementAgencyId:metadataP rovisionAgreementId(version)|IMF:SDDS_MDF_AB(1.0.0) 706 -|//MetadataSet//|metadataProviderId:metadataSetId(version)|MD_PROVIDER:METADATASET(1.0.0) 707 -|//MetadataStructure//|msdAgencyId:msdId(version)|IMF:SDDS_MSD(1.0.0) 708 - 709 -|**Classname**|**Ending URN pattern**|**Example** 710 -|NamePersonalisation|namePersonalisationSchemeAgencyId namePersonalisationSchemeId(version) namePersonalisationId|ECB:PSN_SCHEME(1.0.0).PSN1234 711 -|//NamePersonalisationScheme//|namePersonalisationSchemeAgencyId namePersonalisationSchemeId(version)|ECB:PSN_SCHEME(1.0.0) 712 -|//OrganisationSchemeMap//|orgSchemeMapAgencyId:orgSchemeMapId(versio n)|SDMX:AGENCIES_PROVIDERS(1.0.0) 713 -|OrganisationUnit|organisationUnitSchemeAgencyId:organisationUni tSchemeId(version).organisationUnitId|ECB:ORGANISATIONS(1.0.0).1F 714 -|//OrganisationUnitScheme//|organisationUnitSchemeAgencyId:organisationUni tSchemeId(version)|ECB:ORGANISATIONS(1.0.0) 715 -|//Process//|processAgencyId:processId{version)|BIS:PROCESS1(1.0.0) 716 -|ProcessStep|((( 669 +)))|(% style="width:543px" %)IMF:SDDS_MSD(1.0.0).COMPILATION.METHOD 670 +|(% style="width:206px" %)MetadataAttributeDescriptor|(% style="width:645px" %)msdAgencyId:msdId(version).metadataAttributeDe scriptorId|(% style="width:543px" %)IMF:SDDS_MSD(1.0.0).MetadataAttributeDescriptor 671 +|(% style="width:206px" %)//MetadataConstraint//|(% style="width:645px" %)metadataConstraintAgencyId:metadataConstraintI d(version)|(% style="width:543px" %)TFFS:CREDITOR_METADATA_CONTENT(1.0.0) 672 +|(% style="width:206px" %)//Metadataflow//|(% style="width:645px" %)metadataflowAgencyId:metadataflowId(version)|(% style="width:543px" %)IMF:SDDS_MDF(1.0.0) 673 +|(% style="width:206px" %)MetadataProvider|(% style="width:645px" %)metadataProviderSchemeAgencyId:**METADATA_P ROVIDERS**(**1.0**).metadataProviderId|(% style="width:543px" %)SDMX:**METADATA_PROVIDERS**(**1.0**).MD_PROVIDER_1 674 +|(% style="width:206px" %)//MetadataProviderScheme//|(% style="width:645px" %)metadataProviderSchemeAgencyId:**METADATA_P ROVIDERS**(**1.0**)|(% style="width:543px" %)SDMX:**METADATA_PROVIDERS**(**1.0**) 675 +|(% style="width:206px" %)//MetadataProvisionAgreement//|(% style="width:645px" %)metadataProvisionAgreementAgencyId:metadataP rovisionAgreementId(version)|(% style="width:543px" %)IMF:SDDS_MDF_AB(1.0.0) 676 +|(% style="width:206px" %)//MetadataSet//|(% style="width:645px" %)metadataProviderId:metadataSetId(version)|(% style="width:543px" %)MD_PROVIDER:METADATASET(1.0.0) 677 +|(% style="width:206px" %)//MetadataStructure//|(% style="width:645px" %)msdAgencyId:msdId(version)|(% style="width:543px" %)IMF:SDDS_MSD(1.0.0) 678 +|(% style="width:227px" %)NamePersonalisation|(% style="width:527px" %)namePersonalisationSchemeAgencyId namePersonalisationSchemeId(version) namePersonalisationId|(% style="width:545px" %)ECB:PSN_SCHEME(1.0.0).PSN1234 679 +|(% style="width:227px" %)//NamePersonalisationScheme//|(% style="width:527px" %)namePersonalisationSchemeAgencyId namePersonalisationSchemeId(version)|(% style="width:545px" %)ECB:PSN_SCHEME(1.0.0) 680 +|(% style="width:227px" %)//OrganisationSchemeMap//|(% style="width:527px" %)orgSchemeMapAgencyId:orgSchemeMapId(versio n)|(% style="width:545px" %)SDMX:AGENCIES_PROVIDERS(1.0.0) 681 +|(% style="width:227px" %)OrganisationUnit|(% style="width:527px" %)organisationUnitSchemeAgencyId:organisationUnitSchemeId(version).organisationUnitId|(% style="width:545px" %)ECB:ORGANISATIONS(1.0.0).1F 682 +|(% style="width:227px" %)//OrganisationUnitScheme//|(% style="width:527px" %)organisationUnitSchemeAgencyId:organisationUni tSchemeId(version)|(% style="width:545px" %)ECB:ORGANISATIONS(1.0.0) 683 +|(% style="width:227px" %)//Process//|(% style="width:527px" %)processAgencyId:processId{version)|(% style="width:545px" %)BIS:PROCESS1(1.0.0) 684 +|(% style="width:227px" %)ProcessStep|(% style="width:527px" %)((( 717 717 processAgencyId:processId(version).processStepId. 718 - 719 719 processStepId 720 -)))|BIS:PROCESS1(1.0.0).STEP1.STEP1_1 721 -|//ProvisionAgreement//|provisionAgreementAgencyId:provisionAgreement Id(version)|TFFS:CRED_EXT_DEBT_AB(1.0.0) 722 -|ReportingCategory|((( 687 +)))|(% style="width:545px" %)BIS:PROCESS1(1.0.0).STEP1.STEP1_1 688 +|(% style="width:227px" %)//ProvisionAgreement//|(% style="width:527px" %)provisionAgreementAgencyId:provisionAgreement Id(version)|(% style="width:545px" %)TFFS:CRED_EXT_DEBT_AB(1.0.0) 689 +|(% style="width:227px" %)ReportingCategory|(% style="width:527px" %)((( 723 723 reportingTaxonomyAgencyId: 724 - 725 725 reportingTaxonomyId(version).reportingCategoryI d.reportingCategoryId 726 -)))|IMF:REP_1(1.0.0):LVL1_REP_CAT.LVL2_REP_CAT 727 -|//ReportingTaxonomy//|reportingTaxonomyAgencyId:reportingTaxonomyI d(version)|IMF:REP_1(1.0.0) 728 -|//ReportingTaxonomyMap//|repTaxonomyAgencyId:repTaxonomyId(version)|SDMX:RT_MAP(1.0.0) 729 - 730 -|**Classname**|**Ending URN pattern**|**Example** 731 -|//RepresentationMap//|repMapAgencyId:repMapId(version)|SDMX:REF_AREA_MAPPING(1.0.0) 732 -|Ruleset|rulesetSchemeAgencyId rulesetSchemeId(version) rulesetId|ECB:RULESET_23(1.0.0).SET111 733 -|//RulesetScheme//|rulesetSchemeAgencyId rulesetSchemeId(version)|ECB:RULESET_23(1.0.0) 734 -|//StructureMap//|structureMapAgencyId:structureMap(version)|SDMX:BOP_STRUCTURES(1.0.0) 735 -|Subscription|((( 692 +)))|(% style="width:545px" %)IMF:REP_1(1.0.0):LVL1_REP_CAT.LVL2_REP_CAT 693 +|(% style="width:227px" %)//ReportingTaxonomy//|(% style="width:527px" %)reportingTaxonomyAgencyId:reportingTaxonomyI d(version)|(% style="width:545px" %)IMF:REP_1(1.0.0) 694 +|(% style="width:227px" %)//ReportingTaxonomyMap//|(% style="width:527px" %)repTaxonomyAgencyId:repTaxonomyId(version)|(% style="width:545px" %)SDMX:RT_MAP(1.0.0) 695 +|(% style="width:229px" %)//RepresentationMap//|(% style="width:645px" %)repMapAgencyId:repMapId(version)|(% style="width:215px" %)SDMX:REF_AREA_MAPPING(1.0.0) 696 +|(% style="width:229px" %)Ruleset|(% style="width:645px" %)rulesetSchemeAgencyId rulesetSchemeId(version) rulesetId|(% style="width:215px" %)ECB:RULESET_23(1.0.0).SET111 697 +|(% style="width:229px" %)//RulesetScheme//|(% style="width:645px" %)rulesetSchemeAgencyId rulesetSchemeId(version)|(% style="width:215px" %)ECB:RULESET_23(1.0.0) 698 +|(% style="width:229px" %)//StructureMap//|(% style="width:645px" %)structureMapAgencyId:structureMap(version)|(% style="width:215px" %)SDMX:BOP_STRUCTURES(1.0.0) 699 +|(% style="width:229px" %)Subscription|(% style="width:645px" %)((( 736 736 The Subscription is not itself an Identifiable Artefact and therefore it does not follow the rules for URN structure. 737 - 738 738 The name of the URN is registryURN There is no pre-determined format. 739 -)))|This cannot be generated by a common mechanism as subscriptions, although maintainable in the sense that they can be submitted and deleted, are not mandated to be created by a maintenance agency and have no versioning mechanism. It is therefore the responsibility of the target registry to generate a unique Id for the Subscription, and for the application creating the subscription to store the registry URN that is returned from the registry in the subscription response message. 740 -|TimeDimension|dataStructureDefinitionAgencyId:dataStructureDef initionId(version).timeDimensionId|TFFS:EXT_DEBT(1.0.0).TIME_PERIOD 741 -|Transformation|transformationSchemeAgencyId transformationSchemeId(version) transformationId|ECB:TRANSFORMATION_SCHEME(1.0.0).TRANS_1 742 -|//TransformationScheme//|transformationSchemeAgencyId transformationSchemeId(version)|ECB: TRANSFORMATION_SCHEME(1.0.0) 743 -|**Classname**|**Ending URN pattern**|**Example** 744 -|Transition|((( 702 +)))|(% style="width:1015px" %)This cannot be generated by a common mechanism as subscriptions, although maintainable in the sense that they can be submitted and deleted, are not mandated to be created by a maintenance agency and have no versioning mechanism. It is therefore the responsibility of the target registry to generate a unique Id for the Subscription, and for the application creating the subscription to store the registry URN that is returned from the registry in the subscription response message. 703 +|(% style="width:229px" %)TimeDimension|(% style="width:645px" %)dataStructureDefinitionAgencyId:dataStructureDef initionId(version).timeDimensionId|(% style="width:1015px" %)TFFS:EXT_DEBT(1.0.0).TIME_PERIOD 704 +|(% style="width:229px" %)Transformation|(% style="width:645px" %)transformationSchemeAgencyId transformationSchemeId(version) transformationId|(% style="width:1015px" %)ECB:TRANSFORMATION_SCHEME(1.0.0).TRANS_1 705 +|(% style="width:229px" %)//TransformationScheme//|(% style="width:645px" %)transformationSchemeAgencyId transformationSchemeId(version)|(% style="width:1015px" %)ECB: TRANSFORMATION_SCHEME(1.0.0) 706 +|(% style="width:229px" %)Transition|(% style="width:645px" %)((( 745 745 processAgencyId:processId(version).processStepId. 746 - 747 747 transitionId 748 -)))|BIS:PROCESS1(1.0.0).STEP1.TRANSITION1 749 -|UserDefinedOperator|userDefinedOperatorSchemeAgencyId userDefinedOperatorSchemeId(version) usserDefinedOperatorId|ECB:OS_CALC(1.2.0).OS267 750 -|//UserDefinedOperatorScheme//|userDefinedOperatorSchemeAgencyId userDefinedOperatorSchemeId(version)|ECB:OS_CALC(1.2.0) 751 -|//ValueList//|valuelistAgencyId:valuelistId(version)|SDMX:VLIST(1.0.0) 752 -|VtlCodelistMapping|vtlMappingSchemeAgencyId vtlMappingSchemeId(version) vtlCodelistMappingId|ECB:CLIST_MP(2.0.0).ABZ 753 -|VtlConceptMapping|vtlMappingSchemeAgencyId vtlMappingSchemeId(version) vtlConceptMappingId|ECB:CLIST_MP(1.0.0).XYA 754 -|VtlDataflowMapping|vtlMappingSchemeAgencyId vtlMappingSchemeId(version) vtlDataflowMappingId|ECB:CLIST_MP(1.0.0).MOQ 755 -|//VtlMappingScheme//|vtlMappingSchemeAgencyId VtlMappingSchemeId(version)|ECB:CLIST_MP(2.0.0) 709 +)))|(% style="width:1015px" %)BIS:PROCESS1(1.0.0).STEP1.TRANSITION1 710 +|(% style="width:229px" %)UserDefinedOperator|(% style="width:645px" %)userDefinedOperatorSchemeAgencyId userDefinedOperatorSchemeId(version) usserDefinedOperatorId|(% style="width:1015px" %)ECB:OS_CALC(1.2.0).OS267 711 +|(% style="width:229px" %)//UserDefinedOperatorScheme//|(% style="width:645px" %)userDefinedOperatorSchemeAgencyId userDefinedOperatorSchemeId(version)|(% style="width:1015px" %)ECB:OS_CALC(1.2.0) 712 +|(% style="width:229px" %)//ValueList//|(% style="width:645px" %)valuelistAgencyId:valuelistId(version)|(% style="width:1015px" %)SDMX:VLIST(1.0.0) 713 +|(% style="width:229px" %)VtlCodelistMapping|(% style="width:645px" %)vtlMappingSchemeAgencyId vtlMappingSchemeId(version) vtlCodelistMappingId|(% style="width:1015px" %)ECB:CLIST_MP(2.0.0).ABZ 714 +|(% style="width:229px" %)VtlConceptMapping|(% style="width:645px" %)vtlMappingSchemeAgencyId vtlMappingSchemeId(version) vtlConceptMappingId|(% style="width:1015px" %)ECB:CLIST_MP(1.0.0).XYA 715 +|(% style="width:229px" %)VtlDataflowMapping|(% style="width:645px" %)vtlMappingSchemeAgencyId vtlMappingSchemeId(version) vtlDataflowMappingId|(% style="width:1015px" %)ECB:CLIST_MP(1.0.0).MOQ 716 +|(% style="width:229px" %)//VtlMappingScheme//|(% style="width:645px" %)vtlMappingSchemeAgencyId VtlMappingSchemeId(version)|(% style="width:1015px" %)ECB:CLIST_MP(2.0.0) 756 756 757 757 **Table 3: Table of identification components for SDMX Identifiable Artefacts** 758 758 ... ... @@ -760,7 +760,7 @@ 760 760 761 761 === {{id name="_Toc93862"/}}7.1 Structural Definition Metadata === 762 762 763 -=== =={{id name="_Toc93863"/}}7.1.1 Introduction =====724 +=== {{id name="_Toc93863"/}}7.1.1 Introduction === 764 764 765 765 The SDMX Registry must have the ability to support agencies in their role of defining and disseminating structural metadata artefacts. These artefacts include data structure definitions, code lists, concepts etc. and are fully defined in the SDMX-IM. An authenticated agency may submit valid structural metadata definitions which must be stored in the registry. Note that the term “structural metadata” refers as a general term to all structural components (Data Structure Definitions, Metadata Structure Definitions, Code Lists, Concept Schemes, etc.) 766 766 ... ... @@ -776,90 +776,79 @@ 776 776 777 777 The following table lists the Maintainable Artefacts. 778 778 779 -|(% colspan="2" %)**Maintainable Artefacts**|**Content** 780 -|**Abstract Class**|**Concrete Class**| 781 -|Item Scheme|Codelist|Code 782 -| |Concept Scheme|Concept 783 -| |Category Scheme|Category 784 -| |Organisation Unit Scheme|Organisation Unit 785 -| |Agency Scheme|Agency 786 -| |Data Provider Scheme|Data Provider 787 -| |Metadata Provider Scheme|Metadata Provider 788 -| |Data Consumer Scheme|Data Consumer 789 -| |Reporting Taxonomy|Reporting Category 790 -| |Transformation Scheme|Transformation 791 -| |Custom Type Scheme|Custom Type 792 -| |Name Personalisation Scheme|Name Personalisation 793 -| |Vtl Mapping Scheme|Vtl Codelist Mapping Vtl Concept Mapping 794 -| |Ruleset Scheme|Ruleset 795 -| |User Defined Operator Scheme|User Defined Operator 796 -|Enumerated List|ValueList|Value Item 797 -|Structure|Data Structure Definition|((( 740 +(% style="width:881.294px" %) 741 +|(% colspan="2" style="width:522px" %)**Maintainable Artefacts**|(% style="width:490px" %)**Content** 742 +|(% style="width:198px" %)**Abstract Class**|(% style="width:324px" %)**Concrete Class**|(% style="width:490px" %) 743 +|(% style="width:198px" %)Item Scheme|(% style="width:324px" %)Codelist|(% style="width:490px" %)Code 744 +|(% style="width:198px" %) |(% style="width:324px" %)Concept Scheme|(% style="width:490px" %)Concept 745 +|(% style="width:198px" %) |(% style="width:324px" %)Category Scheme|(% style="width:490px" %)Category 746 +|(% style="width:198px" %) |(% style="width:324px" %)Organisation Unit Scheme|(% style="width:490px" %)Organisation Unit 747 +|(% style="width:198px" %) |(% style="width:324px" %)Agency Scheme|(% style="width:490px" %)Agency 748 +|(% style="width:198px" %) |(% style="width:324px" %)Data Provider Scheme|(% style="width:490px" %)Data Provider 749 +|(% style="width:198px" %) |(% style="width:324px" %)Metadata Provider Scheme|(% style="width:490px" %)Metadata Provider 750 +|(% style="width:198px" %) |(% style="width:324px" %)Data Consumer Scheme|(% style="width:490px" %)Data Consumer 751 +|(% style="width:198px" %) |(% style="width:324px" %)Reporting Taxonomy|(% style="width:490px" %)Reporting Category 752 +|(% style="width:198px" %) |(% style="width:324px" %)Transformation Scheme|(% style="width:490px" %)Transformation 753 +|(% style="width:198px" %) |(% style="width:324px" %)Custom Type Scheme|(% style="width:490px" %)Custom Type 754 +|(% style="width:198px" %) |(% style="width:324px" %)Name Personalisation Scheme|(% style="width:490px" %)Name Personalisation 755 +|(% style="width:198px" %) |(% style="width:324px" %)Vtl Mapping Scheme|(% style="width:490px" %)Vtl Codelist Mapping Vtl Concept Mapping 756 +|(% style="width:198px" %) |(% style="width:324px" %)Ruleset Scheme|(% style="width:490px" %)Ruleset 757 +|(% style="width:198px" %) |(% style="width:324px" %)User Defined Operator Scheme|(% style="width:490px" %)User Defined Operator 758 +|(% style="width:198px" %)Enumerated List|(% style="width:324px" %)ValueList|(% style="width:490px" %)Value Item 759 +|(% style="width:198px" %)Structure|(% style="width:324px" %)Data Structure Definition|(% style="width:490px" %)((( 798 798 Dimension Descriptor 799 - 800 800 Group Dimension Descriptor 801 - 802 802 Dimension 803 - 804 804 Time Dimension 805 - 806 806 Attribute Descriptor 807 - 808 808 Data Attribute 809 - 810 810 Measure Descriptor 811 - 812 812 Measure 813 813 ))) 814 -| |Metadata Structure Definition|Metadata Attribute Descriptor Metadata Attribute 815 -|Structure Usage|Dataflow| 816 -| |Metadataflow| 817 -|None|Process|Process Step 818 -|None|Structure Map|((( 769 +|(% style="width:198px" %) |(% style="width:324px" %)Metadata Structure Definition|(% style="width:490px" %)Metadata Attribute Descriptor Metadata Attribute 770 +|(% style="width:198px" %)Structure Usage|(% style="width:324px" %)Dataflow|(% style="width:490px" %) 771 +|(% style="width:198px" %) |(% style="width:324px" %)Metadataflow|(% style="width:490px" %) 772 +|(% style="width:198px" %)None|(% style="width:324px" %)Process|(% style="width:490px" %)Process Step 773 +|(% style="width:198px" %)None|(% style="width:324px" %)Structure Map|(% style="width:490px" %)((( 819 819 Component Map 820 - 821 821 Epoch Map 822 - 823 823 Date Pattern Map 824 824 ))) 825 -|None|Representation Map|Representation Mapping 826 -|Item Scheme Map|Organisation Scheme Map|Item Map 827 -| |Concept Scheme Map|Item Map 828 -| |Category Scheme Map|Item Map 829 -| |Reporting Taxonomy Map|Item Map 830 -|None|Provision Agreement| 831 -|None|Metadata Provision Agreement| 832 -|None|Hierarchy|Hierarchical Code 833 -|None|Hierarchy Association| 834 -|None|Categorisation| 778 +|(% style="width:198px" %)None|(% style="width:324px" %)Representation Map|(% style="width:490px" %)Representation Mapping 779 +|(% style="width:198px" %)Item Scheme Map|(% style="width:324px" %)Organisation Scheme Map|(% style="width:490px" %)Item Map 780 +|(% style="width:198px" %) |(% style="width:324px" %)Concept Scheme Map|(% style="width:490px" %)Item Map 781 +|(% style="width:198px" %) |(% style="width:324px" %)Category Scheme Map|(% style="width:490px" %)Item Map 782 +|(% style="width:198px" %) |(% style="width:324px" %)Reporting Taxonomy Map|(% style="width:490px" %)Item Map 783 +|(% style="width:198px" %)None|(% style="width:324px" %)Provision Agreement|(% style="width:490px" %) 784 +|(% style="width:198px" %)None|(% style="width:324px" %)Metadata Provision Agreement|(% style="width:490px" %) 785 +|(% style="width:198px" %)None|(% style="width:324px" %)Hierarchy|(% style="width:490px" %)Hierarchical Code 786 +|(% style="width:198px" %)None|(% style="width:324px" %)Hierarchy Association|(% style="width:490px" %) 787 +|(% style="width:198px" %)None|(% style="width:324px" %)Categorisation|(% style="width:490px" %) 835 835 836 836 **Table 4: Table of Maintainable Artefacts for Structural Definition Metadata** 837 837 838 -=== =={{id name="_Toc93864"/}}7.1.2 Item Scheme, Structure =====791 +=== {{id name="_Toc93864"/}}7.1.2 Item Scheme, Structure === 839 839 840 840 The artefacts included in the structural definitions are: 841 841 842 -• All types of Item Scheme (Codelist, Concept Scheme, Category Scheme, Organisation Scheme, Agency Scheme, Data Provider Scheme, Metadata Provider Scheme, Data Consumer Scheme, Organisation Unit Scheme, Transformation Scheme, Name Personalisation Scheme, Custom Type Scheme, Vtl Mapping Scheme, Ruleset Scheme, User Defined Operator Scheme) 795 +* All types of Item Scheme (Codelist, Concept Scheme, Category Scheme, Organisation Scheme, Agency Scheme, Data Provider Scheme, Metadata Provider Scheme, Data Consumer Scheme, Organisation Unit Scheme, Transformation Scheme, Name Personalisation Scheme, Custom Type Scheme, Vtl Mapping Scheme, Ruleset Scheme, User Defined Operator Scheme) 796 +* All types of Enumerated List (ValueList){{footnote}}Note that Codelist is also an EnumeratedList.{{/footnote}} 797 +* All types of Structure (Data Structure Definition, Metadata Structure Definition) 798 +* All types of Structure Usage (Dataflow, Metadataflow) 843 843 844 - •Alltypes of EnumeratedList(ValueList)^^[[(%class="wikiinternallink wikiinternallinkwikiinternallink" %)^^3^^>>path:#sdfootnote3sym||name="sdfootnote3anc"]](%%)^^800 +=== {{id name="_Toc93865"/}}7.1.3 Structure Usage === 845 845 846 - •Alltypes ofStructure(Data StructureDefinition, Metadata StructureDefinition)802 +==== 7.1.3.1 Structure Usage: Basic Concepts ==== 847 847 848 -• All types of Structure Usage (Dataflow, Metadataflow) 849 - 850 -===== {{id name="_Toc93865"/}}7.1.3 Structure Usage ===== 851 - 852 -**7.1.3.1 Structure Usage: Basic Concepts** 853 - 854 854 The Structure Usage defines, in its concrete classes of Dataflow and Metadataflow, which flows of data and metadata use which specific Structure, and importantly for the support of data and metadata discovery, the Structure Usage can be linked to one or more Category in one or more Category Scheme using the Categorisation mechanism. This gives the ability for an application to discover data and metadata by “drilling down” the Category Schemes. 855 855 856 - **7.1.3.2 Structure Usage Schematic**806 +==== 7.1.3.2 Structure Usage Schematic ==== 857 857 858 858 [[image:SDMX 3-0-0 SECTION 5 FINAL-1.0_en_52097ab5.jpg||height="246" width="438"]] 859 859 860 860 **Figure 9: Schematic of Linking the Data and Metadata Flows to Categories and Structure Definitions** 861 861 862 - **7.1.3.3 Structure Usage Model**812 +==== 7.1.3.3 Structure Usage Model ==== 863 863 864 864 [[image:SDMX 3-0-0 SECTION 5 FINAL-1.0_en_302cc1a2.jpg||height="548" width="578"]] 865 865 ... ... @@ -875,9 +875,9 @@ 875 875 * Categorisation to Dataflow and Category 876 876 * Categorisation to Metadataflow and Category 877 877 878 -== ={{id name="_Toc93866"/}}7.2 Data and Metadata Provisioning ===828 +== {{id name="_Toc93866"/}}7.2 Data and Metadata Provisioning == 879 879 880 -=== =={{id name="_Toc93867"/}}7.2.1 Provisioning Agreement: Basic concepts =====830 +=== {{id name="_Toc93867"/}}7.2.1 Provisioning Agreement: Basic concepts === 881 881 882 882 Data/Metadata provisioning defines a framework in which the provision of different types of statistical data and metadata by various data/metadata providers can be specified and controlled. This framework is the basis on which the existence of data can be made known to the SDMX-enabled community and hence the basis on which data can subsequently be discovered. Such a framework can be used to regulate the data content to facilitate the building of intelligent applications. It can also be used to facilitate the processing implied by service level agreements, or other provisioning agreements in those scenarios that are based on legal directives. Additionally, quality and timeliness metadata can be supported by this framework which makes it practical to implement information supply chain monitoring. 883 883 ... ... @@ -885,7 +885,7 @@ 885 885 886 886 Although the Provision Agreement directly supports the data-sharing “pull” model, it is also useful in “push” exchanges (bilateral and gateway scenarios), or in a dissemination environment. It should be noted, too, that in any exchange scenario, the registry functions as a repository of structural metadata. 887 887 888 -=== =={{id name="_Toc93868"/}}7.2.2 Provisioning Agreement Model – pull use case =====838 +=== {{id name="_Toc93868"/}}7.2.2 Provisioning Agreement Model – pull use case === 889 889 890 890 An organisation which publishes statistical data or reference metadata and wishes to make it available to an SDMX enabled community is called a Data Provider. In terms of the SDMX Information Model, the Data Provider is maintained in a Data Provider Scheme. 891 891 ... ... @@ -907,9 +907,9 @@ 907 907 908 908 A Provision Agreement is structural metadata. Each Provision Agreement must reference a Data Provider or Metadata Provider and a Dataflow or Metadataflow Definition. The Data/Metadata Provider and the Dataflow/Metadataflow must exist already in order to set up a Metadata Provision or Provision Agreement. 909 909 910 -== ={{id name="_Toc93869"/}}7.3 Data and Metadata Constraints ===860 +== {{id name="_Toc93869"/}}7.3 Data and Metadata Constraints == 911 911 912 -=== =={{id name="_Toc93870"/}}7.3.1 Data and Metadata Constraints: Basic Concepts =====862 +=== {{id name="_Toc93870"/}}7.3.1 Data and Metadata Constraints: Basic Concepts === 913 913 914 914 Constraints are, effectively, lists of the valid or actual content of data and metadata. Constraints can be used to specify a subset of the theoretical content of data set or metadata set which can be derived from the specification of the DSD or MSD. A Constraint can comprise a list of keys or a list of content (usually code values) of a specific component such as a dimension or attribute. 915 915 ... ... @@ -973,17 +973,14 @@ 973 973 974 974 The Registration has an action attribute which takes one of the following values: 975 975 976 -: 977 - 978 978 ((( 979 -|**Action Attribute Value**|**Behaviour** 980 -|Append|Add this Registration to the registry 981 -|Replace|((( 982 -Replace the existing Registration with identified by the id in the 983 - 984 -Registration of the SubmitRegistrationRequest 927 +(% style="width:761.294px" %) 928 +|(% style="width:196px" %)**Action Attribute Value**|(% style="width:561px" %)**Behaviour** 929 +|(% style="width:196px" %)Append|(% style="width:561px" %)Add this Registration to the registry 930 +|(% style="width:196px" %)Replace|(% style="width:561px" %)((( 931 +Replace the existing Registration with identified by the id in the Registration of the SubmitRegistrationRequest 985 985 ))) 986 -|Delete|Delete the existing Registration identified by the id in the Registration of the SubmitRegistrationRequest 933 +|(% style="width:196px" %)Delete|(% style="width:561px" %)Delete the existing Registration identified by the id in the Registration of the SubmitRegistrationRequest 987 987 ))) 988 988 989 989 [[image:SDMX 3-0-0 SECTION 5 FINAL-1.0_en_bc1dcdec.jpg||height="575" width="579"]] ... ... @@ -1000,27 +1000,20 @@ 1000 1000 1001 1001 Information in the data or metadata set is extracted and placed in one or more //Constraint//s (see the //Constraint// model in the SDMX Information Model – Section 2 of the SDMX Standards). The information to be extracted is indicated by the Boolean values set on the ProvisionAgreement or MetadataProvisionAgreement as shown in the table below. 1002 1002 1003 -: 1004 - 1005 1005 ((( 1006 -|**Indexing Required**|**Registration Process Activity** 1007 -|indexTimeSeries|Extract all the series keys and create a KeySet(s) Constraint. 1008 -|indexDataSet|Extract all the codes and other content of the Key value of the Series Key in a Data Set and create one or more Cube Regions containing Member Selections of Dimension Components of the Constraints model in the SDMX-IM, and the associated Selection Value. 1009 -|indexReportingPeriod|((( 951 +(% style="width:678.294px" %) 952 +|**Indexing Required**|(% style="width:504px" %)**Registration Process Activity** 953 +|indexTimeSeries|(% style="width:504px" %)Extract all the series keys and create a KeySet(s) Constraint. 954 +|indexDataSet|(% style="width:504px" %)Extract all the codes and other content of the Key value of the Series Key in a Data Set and create one or more Cube Regions containing Member Selections of Dimension Components of the Constraints model in the SDMX-IM, and the associated Selection Value. 955 +|indexReportingPeriod|(% style="width:504px" %)((( 1010 1010 This applies only to a registered __dataset__. 1011 - 1012 1012 Extract the Reporting Begin and Reporting End from the Header of the Message containing the data set, and create a Reference Period constraint. 1013 1013 ))) 1014 -|**Indexing Required**|**Registration Process Activity** 1015 -|indexAttributes|((( 959 +|**Indexing Required**|(% style="width:504px" %)**Registration Process Activity** 960 +|indexAttributes|(% style="width:504px" %)((( 1016 1016 **Data Set** 1017 - 1018 -Extract the content of the Attribute Values in a Data Set and create one or more Cube Regions containing Member Selections of Data Attribute Components of the Constraints model in the 1019 - 1020 -SDMXIM, and the associated Selection Value 1021 - 962 +Extract the content of the Attribute Values in a Data Set and create one or more Cube Regions containing Member Selections of Data Attribute Components of the Constraints model in the SDMXIM, and the associated Selection Value 1022 1022 **Metadata Set** 1023 - 1024 1024 Indicate the presence of a Reported Attribute by creating one or more Cube Regions containing Member Selections of Metadata Attribute Components of the Constraints model in the SDMX-IM. Note that the content is not stored in the Selection Value. 1025 1025 ))) 1026 1026 ))) ... ... @@ -1029,7 +1029,7 @@ 1029 1029 1030 1030 The Registration must reference the ProvisionAgreement or MetadataProvisionAgreement to which it relates. 1031 1031 1032 -=== =={{id name="_Toc93876"/}}7.4.3 Registration Response =====972 +=== {{id name="_Toc93876"/}}7.4.3 Registration Response === 1033 1033 1034 1034 After a registration request has been submitted to the registry, a response is returned to the submitter indicating success or failure. Given that a registration request can hold many Registrations, then there must be a registration status for each Registration. The SubmitRegistration class has a status field, which is either set to “Success”, “Warning” or “Failure”. 1035 1035 ... ... @@ -1059,20 +1059,18 @@ 1059 1059 1060 1060 Regardless of the type of registry/repository events being observed, a subscription always contains: 1061 1061 1062 -1. Aset of URIs describing the end-points to which notifications must be sent if the subscription is activated. The URIs can be either mailto~: or http: protocol. In the former case an email notification is sent; in the latter an HTTP POST notification is sent.1002 +1. set of URIs describing the end-points to which notifications must be sent if the subscription is activated. The URIs can be either mailto~: or http: protocol. In the former case an email notification is sent; in the latter an HTTP POST notification is sent. 1063 1063 1. A user-defined identifier, which is returned in the response to the subscription request. This helps with asynchronous processing and is NOT stored in the Registry. 1064 1064 1. A validity period which defines both when the subscription becomes active and expires. The subscriber may be sent a notification on expiration of the subscription. 1065 1065 1. A selector which specifies which type of events are of interest. The set of event types is: 1066 1066 1067 -: 1068 -:: 1069 - 1070 1070 ((( 1071 -|**Event Type**|**Comment** 1072 -|STRUCTURAL_REPOSITORY_EVENTS|Life-cycle changes to Maintainable Artefacts in the structural metadata repository. 1073 -|DATA_REGISTRATION_EVENTS|Whenever a published dataset is registered. This can be either a SDMXML data file or an SDMX conformant database. 1074 -|METADATA_REGISTRATION_EVENTS|Whenever a published metadataset is registered. This can be either a SDMXML reference metadata file or an SDMX conformant database. 1075 -|ALL_EVENTS|All events of the specified EventType 1008 +(% style="width:856.294px" %) 1009 +|(% style="width:320px" %)**Event Type**|(% style="width:532px" %)**Comment** 1010 +|(% style="width:320px" %)STRUCTURAL_REPOSITORY_EVENTS|(% style="width:532px" %)Life-cycle changes to Maintainable Artefacts in the structural metadata repository. 1011 +|(% style="width:320px" %)DATA_REGISTRATION_EVENTS|(% style="width:532px" %)Whenever a published dataset is registered. This can be either a SDMXML data file or an SDMX conformant database. 1012 +|(% style="width:320px" %)METADATA_REGISTRATION_EVENTS|(% style="width:532px" %)Whenever a published metadataset is registered. This can be either a SDMXML reference metadata file or an SDMX conformant database. 1013 +|(% style="width:320px" %)ALL_EVENTS|(% style="width:532px" %)All events of the specified EventType 1076 1076 ))) 1077 1077 1078 1078 === {{id name="_Toc93880"/}}7.5.3 Wildcard Facility === ... ... @@ -1086,33 +1086,25 @@ 1086 1086 Examples of wildcarded identifier components for an identified object type of Codelist are shown below: 1087 1087 1088 1088 AgencyID = * 1089 - 1090 1090 Id = * 1091 - 1092 1092 Version = * 1093 1093 1094 1094 This subscribes to all Codelists of all versions for all agencies. 1095 1095 1096 1096 AgencyID = AGENCY1 1097 - 1098 1098 Id = CODELIST1 1099 - 1100 1100 Version = * 1101 1101 1102 1102 This subscribes to all versions of Codelist CODELIST1 maintained by the agency AGENCY1. 1103 1103 1104 1104 AgencyID = AGENCY1 1105 - 1106 1106 Id = * 1107 - 1108 1108 Version = * 1109 1109 1110 1110 This subscribes to all versions of all Codelist objects maintained by the agency AGENCY1. 1111 1111 1112 1112 AgencyID = * 1113 - 1114 1114 Id = CODELIST1 1115 - 1116 1116 Version = * 1117 1117 1118 1118 This subscribes to all versions of Codelist CODELIST1 maintained by any agency. ... ... @@ -1139,15 +1139,14 @@ 1139 1139 1140 1140 Whenever a dataset or metadata-set is registered a registration event is created. A subscription may be observing all data or metadata registrations, or it may focus on specific registrations as shown in the table below: 1141 1141 1142 -: 1143 - 1144 1144 ((( 1145 -|**Selector**|**Comment** 1146 -|DataProvider & MetadataProvider|Any datasets or metadata sets registered by the specified data or metadata provider will activate the notification. 1147 -|ProvisionAgreement & MetadataProvisionAgreement|Any datasets or metadata sets registered for the agreement will activate the notification. 1148 -|Dataflow & Metadataflow|Any datasets or metadata sets registered for the specified dataflow (or metadataflow) will activate the notification. 1149 -|DataStructureDefinition & MetadataStructureDefinition|Any datasets or metadata sets registered for those dataflows (or metadataflows) that are based on the specified Data Structure Definition will activate the notification 1150 -|Category|Any datasets or metadata sets registered for those dataflows, metadataflows, provision agreements that are categorised by the category. 1073 +(% style="width:1126.29px" %) 1074 +|(% style="width:382px" %)**Selector**|(% style="width:740px" %)**Comment** 1075 +|(% style="width:382px" %)DataProvider & MetadataProvider|(% style="width:740px" %)Any datasets or metadata sets registered by the specified data or metadata provider will activate the notification. 1076 +|(% style="width:382px" %)ProvisionAgreement & MetadataProvisionAgreement|(% style="width:740px" %)Any datasets or metadata sets registered for the agreement will activate the notification. 1077 +|(% style="width:382px" %)Dataflow & Metadataflow|(% style="width:740px" %)Any datasets or metadata sets registered for the specified dataflow (or metadataflow) will activate the notification. 1078 +|(% style="width:382px" %)DataStructureDefinition & MetadataStructureDefinition|(% style="width:740px" %)Any datasets or metadata sets registered for those dataflows (or metadataflows) that are based on the specified Data Structure Definition will activate the notification 1079 +|(% style="width:382px" %)Category|(% style="width:740px" %)Any datasets or metadata sets registered for those dataflows, metadataflows, provision agreements that are categorised by the category. 1151 1151 ))) 1152 1152 1153 1153 The event will also capture the semantic of the registration: deletion or replacement of an existing registration or a new registration. ... ... @@ -1179,12 +1179,6 @@ 1179 1179 1180 1180 The notification will contain the Registration. 1181 1181 1182 - [[1>>path:#sdfootnote1anc||name="sdfootnote1sym"]] With semantic versioning, it is allowed to reference a range of artefacts, e.g., a DSD referencing a Codelist with version 1.2.3+ means all patch versions greater than 1.2.3. This means that deleting 1.2.4draft does not break integrity of the aforementioned DSD.1111 +---- 1183 1183 1184 -[[2>>path:#sdfootnote2anc||name="sdfootnote2sym"]] The identification of an Agency in the URN structure for the maintainable object is by means of the agencyId. The AgencyScheme is not identified as SDMX has a mechanism for identifying an Agency uniquely by its Id. Note that this Id may be hierarchical. For example, a sub-agency of IMF is referred like this: 1185 - 1186 -IMF.SubAgency1 1187 - 1188 -[[3>>path:#sdfootnote3anc||name="sdfootnote3sym"]] Note that Codelist is also an EnumeratedList. 1189 - 1190 1190 {{putFootnotes/}}
- 1747307906944-697.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +37.9 KB - Content
- SUZ.Methodology.Code.MethodologyClass[0]
-