Last modified by Helena on 2025/09/10 11:19

From version 41.2
edited by Artur
on 2025/06/06 13:16
Change comment: Update document after refactoring.
To version 37.1
edited by Helena
on 2025/05/23 09:58
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -SDMX 3.0 Standards. Section 5. Registry Specification: Logical Functionality
1 +SDMX 3.0 Standards. Section 5. SDMX registry specification: logical functionality and logical interfaces
Author
... ... @@ -1,1 +1,1 @@
1 -xwiki:XWiki.arturkryazhev
1 +xwiki:XWiki.helena
Content
... ... @@ -184,11 +184,11 @@
184 184  
185 185  === {{id name="_Toc93847"/}}5.2.2 Structure Submission Service ===
186 186  
187 -The registry must support a mechanism for submitting [[structural metadata>>doc:Glossary.Structural metadata.WebHome]]. This mechanism can be the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] REST interface for [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] (this is defined in the corresponding GitHub project, dedicated to the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] REST API: [[__https:~~/~~/github.com/sdmx-twg/sdmx-rest__>>https://github.com/sdmx-twg/sdmx-rest]]). In order for the architecture to be scalable, the finest-grained piece of [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] that can be processed by the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-RR is a MaintainableArtefact, with the exception of [[Item Schemes>>doc:Glossary.Item scheme.WebHome]], where changes at an Item (% style="color:#e74c3c" %)level(%%) is also possible (see next section on the [[SDMX Information Model>>doc:Glossary.SDMX Information Model.WebHome]]).
187 +The registry must support a mechanism for submitting [[structural metadata>>doc:Glossary.Structural metadata.WebHome]]. This mechanism can be the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] REST interface for [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] (this is defined in the corresponding GitHub project, dedicated to the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] REST API: [[__https:~~/~~/github.com/__>>https://https:github.comsdmx-twgsdmx-rest]][[sdmx>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-twg/[[sdmx>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-rest). In order for the architecture to be scalable, the finest-grained piece of [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] that can be processed by the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-RR is a MaintainableArtefact, with the exception of [[Item Schemes>>doc:Glossary.Item scheme.WebHome]], where changes at an Item (% style="color:#e74c3c" %)level(%%) is also possible (see next section on the [[SDMX Information Model>>doc:Glossary.SDMX Information Model.WebHome]]).
188 188  
189 189  === {{id name="_Toc93848"/}}5.2.3 Structure Query Service ===
190 190  
191 -The registry must support a mechanism for querying for [[structural metadata>>doc:Glossary.Structural metadata.WebHome]]. This mechanism can be the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] REST interface for [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] (this is defined in the corresponding GitHub project, dedicated to the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] REST API: [[__https:~~/~~/github.com/sdmx-twg/sdmx-rest__>>https://github.com/sdmx-twg/sdmx-rest]]). The registry response to this query mechanism is the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] Structure message, which has as its root node:
191 +The registry must support a mechanism for querying for [[structural metadata>>doc:Glossary.Structural metadata.WebHome]]. This mechanism can be the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] REST interface for [[structural metadata>>doc:Glossary.Structural metadata.WebHome]] (this is defined in the corresponding GitHub project, dedicated to the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] REST API: [[__https:~~/~~/github.com/__>>https://https:github.comsdmx-twgsdmx-rest]][[sdmx>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-twg/[[sdmx>>doc:Glossary.Statistical data and metadata exchange.WebHome]]-rest). The registry response to this query mechanism is the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] Structure message, which has as its root node:
192 192  
193 193  * Structure
194 194  
... ... @@ -426,7 +426,7 @@
426 426  
427 427  For the URN, all parts of the string are case sensitive. The generic structure of the URN is as follows:
428 428  
429 -SDMXprefix.SDMX-IM-package-name.class-name=agencyid:maintainedobjectid(maintainedobject-version).*containerobject-id.object-id
429 +SDMXprefix.SDMX-IM-package-name.class-name=agencyid:maintainedobjectid(maintainedobject-(% style="color:#e74c3c" %)version(%%)).*containerobject-id.object-id
430 430  
431 431  ~* this can repeat and may not be present (see explanation below)
432 432  
... ... @@ -457,13 +457,13 @@
457 457  
458 458  **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.
459 459  
460 -**maintainable-object-version** is the (% style="color:#e74c3c" %)version(%%), according to the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] versioning rules, of the maintainable object and is enclosed in parentheses ‘()’, which are always present.
460 +**maintainable-object-(% style="color:#e74c3c" %)version(%%)** is the (% style="color:#e74c3c" %)version(%%), according to the [[SDMX>>doc:Glossary.Statistical data and metadata exchange.WebHome]] versioning rules, of the maintainable object and is enclosed in parentheses ‘()’, which are always present.
461 461  
462 462  **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>>doc:Glossary.Code.WebHome]] 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 (% style="color:#e74c3c" %)level(%%) in its [[hierarchy>>doc:Glossary.Hierarchy.WebHome]]. 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.
463 463  
464 464  Note that although a [[Code>>doc:Glossary.Code.WebHome]] can have a parent [[Code>>doc:Glossary.Code.WebHome]] and a (% style="color:#e74c3c" %)Concept(%%) can have a parent (% style="color:#e74c3c" %)Concept(%%) these are maintained in a flat structure and therefore do not have a containerobject-id.
465 465  
466 -For example, the sequence is agency:DSDid(version).DimensionId and not agency:DSDid(version).DimensionDescriptorId.DimensionId.
466 +For example, the sequence is agency:DSDid((% style="color:#e74c3c" %)version(%%)).DimensionId and not agency:DSDid((% style="color:#e74c3c" %)version(%%)).DimensionDescriptorId.DimensionId.
467 467  
468 468  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.
469 469  
... ... @@ -472,27 +472,27 @@
472 472  
473 473  __Actual object is a maintainable__
474 474  
475 -SDMXPrefix.[[SDMX-IM>>doc:Glossary.SDMX Information Model.WebHome]]-package-name.classname=agencyid:maintained-objectid(version)
475 +SDMXPrefix.[[SDMX-IM>>doc:Glossary.SDMX Information Model.WebHome]]-package-name.classname=agencyid:maintained-objectid((% style="color:#e74c3c" %)version(%%))
476 476  
477 477  __Actual object is contained in a maintained object with no intermediate containing object__
478 478  
479 -SDMXPrefix.[[SDMX-IM>>doc:Glossary.SDMX Information Model.WebHome]]-package-name.classname=agencyid:maintained-objectid(version).object-id
479 +SDMXPrefix.[[SDMX-IM>>doc:Glossary.SDMX Information Model.WebHome]]-package-name.classname=agencyid:maintained-objectid((% style="color:#e74c3c" %)version(%%)).object-id
480 480  
481 481  __Actual object is contained in a maintained object with an intermediate containing object__
482 482  
483 -SDMXPrefix.[[SDMX-IM>>doc:Glossary.SDMX Information Model.WebHome]]-package-name.classname=agencyid:maintained-objectid(version).contained-object-id.object-id
483 +SDMXPrefix.[[SDMX-IM>>doc:Glossary.SDMX Information Model.WebHome]]-package-name.classname=agencyid:maintained-objectid((% style="color:#e74c3c" %)version(%%)).contained-object-id.object-id
484 484  
485 485  __Actual object is contained in a maintained object with no intermediate containing__ __object but__ __the object type itself is hierarchical__
486 486  
487 487  In this case the object id may not be unique in itself but only within the context of the [[hierarchy>>doc:Glossary.Hierarchy.WebHome]]. In the general syntax of the URN all intermediary objects in the structure (with the exception, of course, of the maintained object) are shown as a contained object. An example here would be a [[Category>>doc:Glossary.Category.WebHome]] in a CategoryScheme. The [[Category>>doc:Glossary.Category.WebHome]] is hierarchical, and all intermediate [[Categories>>doc:Glossary.Category.WebHome]] are shown as a contained object. The example below shows the generic structure for CategoryScheme/ [[Category>>doc:Glossary.Category.WebHome]]/ [[Category>>doc:Glossary.Category.WebHome]].
488 488  
489 -SDMXPrefix.[[SDMX-IM>>doc:Glossary.SDMX Information Model.WebHome]]-package-name.classname=agencyid:maintained-objectid(version).contained-object-id.object-id
489 +SDMXPrefix.[[SDMX-IM>>doc:Glossary.SDMX Information Model.WebHome]]-package-name.classname=agencyid:maintained-objectid((% style="color:#e74c3c" %)version(%%)).contained-object-id.object-id
490 490  
491 491  Actual object is contained in a maintained object with an intermediate containing object and the object type itself is hierarchical
492 492  
493 493  In this case the generic syntax is the same as for the example above as the parent object is regarded as a containing object, even if it is of the same type. An example here is a MetadataAttribute where the contained objects are MetadataAttributeDescriptor (first contained object id) and MetadataAttribute (subsequent contained object ids). The example below shows the generic structure for [[MSD>>doc:Glossary.Metadata structure definition.WebHome]]/ MetadataAttributeDescriptor/ MetadataAttribute/ MetadataAttribute
494 494  
495 -SDMXPrefix.[[SDMX-IM>>doc:Glossary.SDMX Information Model.WebHome]]-package-name.classname=agencyid:maintained-objectid(version).contained-object-id.contained-object-id contained-objectid.object-id
495 +SDMXPrefix.[[SDMX-IM>>doc:Glossary.SDMX Information Model.WebHome]]-package-name.classname=agencyid:maintained-objectid((% style="color:#e74c3c" %)version(%%)).contained-object-id.contained-object-id contained-objectid.object-id
496 496  
497 497  (% class="wikigeneratedid" id="HConcreteExamplesoftheURNStructure" %)
498 498  //__**Concrete Examples of the URN Structure**__//