Last modified by Helena on 2025/09/10 11:19
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -340,8 +340,8 @@ 340 340 341 341 The following table defines the behaviour of the SDMX Registry for the various Registry Interface messages. 342 342 343 -|(% style="width: 143px" %)**Interface**|(% style="width:1729px" %)**Behaviour**344 -|(% style="width: 143px" %)All|(% style="width:1729px" %)(((343 +|(% style="width:244px" %)**Interface**|**Behaviour** 344 +|(% style="width:244px" %)All|((( 345 345 1) If the action is set to “replace” then the entire contents of the existing maintainable object in the Registry MUST be replaced by the object submitted, unless the final attribute is set to “true” in which case the only changes that are allowed are to the following constructs: 346 346 347 347 * Name – this applies to the Maintainable object and its contained elements, such a Code in a Code list. ... ... @@ -365,16 +365,13 @@ 365 365 366 366 5) The specific rules for the elements and attributes documented in the SDMX Schema MUST be obeyed. 367 367 ))) 368 -|(% style="width: 143px" %)SubmitStructureRequest|(% style="width:1729px" %)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.369 -|(% style="width: 143px" %)SubmitProvisioningRequest|(% style="width:1729px" %)No additional behaviour.370 -|(% style="width: 143px" %)Submit Registration Request|(% style="width:1729px" %)(((368 +|(% style="width:244px" %)SubmitStructureRequest|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. 369 +|(% style="width:244px" %)SubmitProvisioningRequest|No additional behaviour. 370 +|(% style="width:244px" %)Submit Registration Request|((( 371 371 If the datasource is a file (simple datasource) then the file MAY be retrieved and indexed according to the Boolean attributes set in the Registration. 372 - 373 373 For a queryable datasource the Registry MAY validate that the source exists and can accept an SDMX-ML data query. 374 374 ))) 375 375 376 - 377 - 378 378 = 6 Identification of SDMX Objects = 379 379 380 380 == 6.1 Identification, Versioning, and Maintenance == ... ... @@ -381,7 +381,6 @@ 381 381 382 382 All major classes of the SDMX Information model inherit from one of: 383 383 384 - 385 385 * **IdentifiableArtefact** - this gives an object the ability to be uniquely identified (see following section on identification), to have a user-defined URI, and to have multi-lingual annotations. 386 386 * **NamableArtefact **- this has all of the features of IdentifiableArtefact plus the ability to have a multi-lingual name and description, 387 387 * **VersionableArtefact **– this has all of the above features plus a version number and a validity period. ... ... @@ -389,6 +389,8 @@ 389 389 390 390 === 6.1.1 Identification, Naming, Versioning, and Maintenance Model === 391 391 388 +[[image:1747824504225-229.png]] 389 + 392 392 **Figure 5: Class diagram of fundamental artefacts in the SDMX-IM** 393 393 394 394 The table below shows the identification and related data attributes to be stored in a registry for objects that are one of: ... ... @@ -399,38 +399,34 @@ 399 399 * Versionable 400 400 * Maintainable 401 401 402 -|**Object Type**|**Data Attributes**|**Status**|**Data type**|**Notes** 403 -|Annotable|AnnotationTitle|C|string| 404 -| |AnnotationType|C|string| 405 -| |AnnotationURN|C|string| 406 -| |((( 407 -AnnotationText in the form of 400 +(% style="width:935.294px" %) 401 +|**Object Type**|(% style="width:244px" %)**Data Attributes**|(% style="width:99px" %)**Status**|**Data type**|(% style="width:389px" %)**Notes** 402 +|Annotable|(% style="width:244px" %)AnnotationTitle|(% style="width:99px" %)C|string|(% style="width:389px" %) 403 +| |(% style="width:244px" %)AnnotationType|(% style="width:99px" %)C|string|(% style="width:389px" %) 404 +| |(% style="width:244px" %)AnnotationURN|(% style="width:99px" %)C|string|(% style="width:389px" %) 405 +| |(% style="width:244px" %)((( 406 +AnnotationText in the form of International String 407 +)))|(% style="width:99px" %)C| |(% style="width:389px" %)This can have languagespecific variants. 408 +|Identifiable|(% style="width:244px" %)all content as for Annotable plus|(% style="width:99px" %) | |(% style="width:389px" %) 409 +| |(% style="width:244px" %)id|(% style="width:99px" %)M|string|(% style="width:389px" %) 410 +| |(% style="width:244px" %)uri|(% style="width:99px" %)C|string|(% style="width:389px" %) 411 +| |(% style="width:244px" %)urn|(% style="width:99px" %)C|string|(% style="width:389px" %)Although the urn is computable and therefore may not be submitted or stored physically, the Registry must return the urn for each object, and must be able to service a query on an object referenced solely by its urn. 412 +|Nameable|(% style="width:244px" %)all content as for Identifiable plus|(% style="width:99px" %) | |(% style="width:389px" %) 413 +| |(% style="width:244px" %)Name in the form of International String|(% style="width:99px" %)M|string|(% style="width:389px" %)This can have languagespecific variants. 414 +| |(% style="width:244px" %)((( 415 +Description in the form of International String 416 +)))|(% style="width:99px" %)C|string|(% style="width:389px" %)This can have languagespecific variants. 417 +|Versionable|(% style="width:244px" %)All content as for Identifiable plus|(% style="width:99px" %) | |(% style="width:389px" %) 418 +| |(% style="width:244px" %)version|(% style="width:99px" %)C|string|(% style="width:389px" %)This is the version number. If not present the default is 1.0 419 +| |(% style="width:244px" %)validFrom|(% style="width:99px" %)C|Date/time|(% style="width:389px" %) 420 +| |(% style="width:244px" %)validTo|(% style="width:99px" %)C|Date/time|(% style="width:389px" %) 421 +|Maintainable|(% style="width:244px" %)All content as for Versionable plus|(% style="width:99px" %) | |(% style="width:389px" %) 422 +| |(% style="width:244px" %)final|(% style="width:99px" %) |boolean|(% style="width:389px" %)Value of “true” indicates that this is a final specification and it cannot be changed except as a new version. Note that providing a “final’ object is not referenced from another object then it may be deleted. 423 +| |(% style="width:244px" %)isExternalReference|(% style="width:99px" %)C|boolean|(% style="width:389px" %)Value of “true” indicates that the actual resource is held outside of this registry. The actual reference is given in the registry URI or the structureURI, each of which must return a valid SDMX-ML file. 424 +| |(% style="width:244px" %)serviceURL|(% style="width:99px" %)C|string|(% style="width:389px" %)The url of the service that can be queried for this resource 425 +| |(% style="width:244px" %)structureURL|(% style="width:99px" %)C|string|(% style="width:389px" %)The url of the resource. 426 +| |(% style="width:244px" %)(Maintenance) agencyId|(% style="width:99px" %)M|string|(% style="width:389px" %)The object must be linked to a maintenance agency. 408 408 409 -International String 410 -)))|C| |This can have languagespecific variants. 411 -| | | | | 412 -|Identifiable|all content as for Annotable plus| | | 413 -| |id|M|string| 414 -| |uri|C|string| 415 -| |urn|C|string|Although the urn is computable and therefore may not be submitted or stored physically, the Registry must return the urn for each object, and must be able to service a query on an object referenced solely by its urn. 416 -|Nameable|all content as for Identifiable plus| | | 417 -| |Name in the form of International String|M|string|This can have languagespecific variants. 418 -| |((( 419 -Description in the form of International 420 - 421 -String 422 -)))|C|string|This can have languagespecific variants. 423 -|Versionable|All content as for Identifiable plus| | | 424 -| |version|C|string|This is the version number. If not present the default is 1.0 425 -| |validFrom|C|Date/time| 426 -| |validTo|C|Date/time| 427 -|Maintainable|All content as for Versionable plus| | | 428 -| |final| |boolean|Value of “true” indicates that this is a final specification and it cannot be changed except as a new version. Note that providing a “final’ object is not referenced from another object then it may be deleted. 429 -| |isExternalReference|C|boolean|Value of “true” indicates that the actual resource is held outside of this registry. The actual reference is given in the registry URI or the structureURI, each of which must return a valid SDMX-ML file. 430 -| |serviceURL|C|string|The url of the service that can be queried for this resource 431 -| |structureURL|C|string|The url of the resource. 432 -| |(Maintenance) agencyId|M|string|The object must be linked to a maintenance agency. 433 - 434 434 **Table 1: Common Attributes of Object Types** 435 435 436 436 == 6.2 Unique identification of SDMX objects == ... ... @@ -475,11 +475,11 @@ 475 475 476 476 An example of this is shown in the XML snippet below. 477 477 472 +[[image:1747824123013-196.jpeg||height="309" width="446"]] 478 478 479 -[[image:1747824123013-196.jpeg]] 474 +(% class="wikigeneratedid" id="HFigure8:ExampleShowingUseofAgencyIdentifiers" %) 475 +**Figure 8: Example Showing Use of Agency Identifiers** 480 480 481 -==== Figure 8: Example Showing Use of Agency Identifiers ==== 482 - 483 483 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. 484 484 485 485 === 6.2.2 Universal Resource Name (URN) === ... ... @@ -518,10 +518,8 @@ 518 518 519 519 **(maintainable-object-version)** is the version of the maintainable object and is enclosed in round brackets (). It will always be present. 520 520 521 -**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 (Code List) and has no intermediary container object, whereas a Metadata Attribute has an intermediary container object (Report Structure) and may have an intermediary container object which is its parent Metadata Attribute. 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 Attribute Descriptor, Dimension Descriptor, and Measure Descriptor where there can be only one such object and this object has a fixed id. Therefore, whilst each of these has a 515 +**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 (Code List) and has no intermediary container object, whereas a Metadata Attribute has an intermediary container object (Report Structure) and may have an intermediary container object which is its parent Metadata Attribute. 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 Attribute Descriptor, Dimension Descriptor, and Measure Descriptor 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 Attribute Descriptor, Dimension Descriptor, and Measure Descriptor is not included when the actual object is a Data Attribute or a Dimension/Measure Dimension/ Time Dimension, or a Measure. 522 522 523 -URN, the id of the Attribute Descriptor, Dimension Descriptor, and Measure Descriptor is not included when the actual object is a Data Attribute or a Dimension/Measure Dimension/ Time Dimension, or a Measure. 524 - 525 525 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 container-object-id. 526 526 527 527 For example the sequence is agency:DSDid(version).DimensionId and not agency:DSDid(version).DimensionDescriptorId.DimensionId. ... ... @@ -528,58 +528,57 @@ 528 528 529 529 **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. 530 530 531 -===== //Generic Examples of the URN Structure// ===== 523 +===== __**//Generic Examples of the URN Structure//**__ ===== 532 532 525 +__Actual object is a maintainable__ 533 533 534 - Actualobject isa maintainable527 +> SDMXPrefix.SDMX-IM package name.classname=agency id:maintained-object-id(version) 535 535 536 - SDMXPrefix.SDMX-IM packagename.classname=agencyid:maintained-object-id(version)529 +__Actual object is contained in a maintained object with no intermediate containing object__ 537 537 538 - Actualobjectiscontained inamaintainedobjectwith no intermediate containingobject531 +> SDMXPrefix.SDMX-IM package name.classname=agency id:maintained-object-id(version).object-id 539 539 540 - SDMXPrefix.SDMX-IM packagename.classname=agencyid:maintained-object-id(version).object-id533 +__Actual object is contained in a maintained object with an intermediate containing object__ 541 541 542 - Actualobjectiscontainedinamaintained object withanintermediate containingobject535 +> SDMXPrefix.SDMX-IM package name.classname=agency 543 543 544 -SDMXPrefix.SDMX-IM package name.classname=agency 545 - 546 546 id:maintained-object-id(version).contained-object-id.object-id 547 547 548 -Actual object is contained in a maintained object with no intermediate containing object but the object type itself is hierarchical 539 +__Actual object is contained in a maintained object with no intermediate containing object but the object type itself is hierarchical__ 549 549 550 550 In this case the object id may not be unique in itself but only within the context of the hierarchy. 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 in a Category Scheme. The Category is hierarchical and all intermediate Categories are shown as a contained object. The example below shows the generic structure for Category Scheme/Category/Category 551 551 552 -SDMXPrefix.SDMX-IM package name.classname=agency id:maintained-object-id(version).contained-object-id.object-id 543 +> SDMXPrefix.SDMX-IM package name.classname=agency id:maintained-object-id(version).contained-object-id.object-id 553 553 554 -Actual object is contained in a maintained object with an intermediate containing object and the object type itself is hierarchical 545 +__Actual object is contained in a maintained object with an intermediate containing object and the object type itself is hierarchical__ 555 555 556 556 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 Metadata Attribute where the contained objects are Report Structure (first contained object id) and Metadata Attribute (subsequent contained object Ids). The example below shows the generic structure for MSD/Report Structure/Metadata Attribute/Metadata Attribute 557 557 558 -SDMXPrefix.SDMX-IM package name.classname=agency id:maintained-object-id(version).contained-object-id. contained-object-id contained-object-id.object-id 549 +> SDMXPrefix.SDMX-IM package name.classname=agency id:maintained-object-id(version).contained-object-id. contained-object-id contained-object-id.object-id 559 559 560 -===== //Concrete Examples of the URN Structure// ===== 551 +===== __**//Concrete Examples of the URN Structure//**__ ===== 561 561 562 562 The Data Structure Definition CRED_EXT_DEBT version 1.0 maintained by the top level Agency TFFS would have the URN: 563 563 564 -urn:sdmx:org.sdmx.infomodel.datastructure.DataStucture=TFFS:CRED_EXT_ DEBT(1.0) 555 +> urn:sdmx:org.sdmx.infomodel.datastructure.DataStucture=TFFS:CRED_EXT_ DEBT(1.0) 565 565 566 566 The URN for a code for Argentina maintained by ISO in the code list CL_3166A2 version 1.0 would be: 567 567 568 -urn:sdmx:org.sdmx.infomodel.codelist.Code=ISO:CL_3166A2(1.0).AR 559 +> urn:sdmx:org.sdmx.infomodel.codelist.Code=ISO:CL_3166A2(1.0).AR 569 569 570 570 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 version 1.0 would be: 571 571 572 -urn:sdmx:org.sdmx.infomodel.categoryscheme.Category=SDMX:SUBJE CT_MATTER_DOMAINS(1.0).1.2 563 +> urn:sdmx:org.sdmx.infomodel.categoryscheme.Category=SDMX:SUBJE CT_MATTER_DOMAINS(1.0).1.2 573 573 574 574 The URN for a Metadata Attribute maintained by SDMX in the MSD CONTACT_METADATA version 1.0 in the Report Structure CONTACT_REPORT where the hierarchy of the Metadata Attribute is 575 575 576 576 CONTACT_DETAILS/CONTACT_NAME would be: 577 577 578 -urn:sdmx:org.sdmx.infomodel.metadatastructure.MetadataAttribut e=SDMX:CONTACT_METADATA(1.0).CONTACT_REPORT.CONTACT_DETAILS.CO NTACT_NAME 569 +> urn:sdmx:org.sdmx.infomodel.metadatastructure.MetadataAttribut e=SDMX:CONTACT_METADATA(1.0).CONTACT_REPORT.CONTACT_DETAILS.CO NTACT_NAME 579 579 580 580 The TFFS defines ABC as a sub Agency of TFFS then the URN of a Dataflow maintained by ABC and identified as EXTERNAL_DEBT version 1.0 would be: 581 581 582 -urn:sdmx:org.sdmx.infomodel.datastructure.Dataflow=TFFS.ABC:EX 573 +> urn:sdmx:org.sdmx.infomodel.datastructure.Dataflow=TFFS.ABC:EX 583 583 584 584 TERNAL_DEBT(1.0) 585 585
- 1747824504225-229.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +52.8 KB - Content