Last modified by Artur on 2025/09/30 13:28

From version 22.3
edited by Helena
on 2025/06/08 16:48
Change comment: There is no comment for this version
To version 21.10
edited by Helena
on 2025/06/08 16:40
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -163,8 +163,9 @@
163 163  
164 164  The registry interfaces are invoked in one of two ways:
165 165  
166 -1. The interface is the name of the root node of the SDMX-ML document
167 -1. The interface is invoked as a child element of the RegistryInterface message where the RegistryInterface is the root node of the SDMX-ML document.
166 +*
167 +*1. The interface is the name of the root node of the SDMX-ML document
168 +*1. The interface is invoked as a child element of the RegistryInterface message where the RegistryInterface is the root node of the SDMX-ML document.
168 168  
169 169  In addition to these interfaces the registry must support a mechanism for submitting and querying for structural metadata. This is detailed in sections 5.2.2 and 5.2.3.
170 170  
... ... @@ -180,7 +180,7 @@
180 180  
181 181  === 5.2.2 Structure Submission Service ===
182 182  
183 -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).
184 +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).
184 184  
185 185  === 5.2.3 Structure Query Service ===
186 186  
... ... @@ -270,7 +270,7 @@
270 270  1. If the action is set to “delete” (or a maintainable Artefact is DELETEd) then the Registry MUST verify that the object can be deleted. In order to qualify for deletion, the object must:
271 271  
272 272  a) Be a draft version.
273 -b) Not be explicitly^^[[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^1^^>>path:#sdfootnote1sym||name="sdfootnote1anc"]](%%)^^ referenced from any other object in the Registry.
274 +b) Not be explicitly^^[[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^1^^>>path:#sdfootnote1sym||name="sdfootnote1anc"]](%%)^^ referenced from any other object in the Registry.
274 274  
275 275  4) The semantic versioning rules in the SDMX documentation MUST be obeyed.
276 276  )))
... ... @@ -603,7 +603,7 @@
603 603  
604 604  (% style="width:1272.83px" %)
605 605  |(% style="width:290px" %)**Classname**|(% style="width:649px" %)**Ending URN pattern**|(% style="width:332px" %)**Example**
606 -|(% style="width:290px" %)Agency^^[[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^2^^>>path:#sdfootnote2sym||name="sdfootnote2anc"]](%%)^^|(% style="width:649px" %)agencySchemeAgencyId:**AGENCIES**(**1.0**).agencyId|(% style="width:332px" %)ECB:**AGENCIES**(**1.0**).AA
607 +|(% style="width:290px" %)Agency^^[[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^2^^>>path:#sdfootnote2sym||name="sdfootnote2anc"]](%%)^^|(% style="width:649px" %)agencySchemeAgencyId:**AGENCIES**(**1.0**).agencyId|(% style="width:332px" %)ECB:**AGENCIES**(**1.0**).AA
607 607  |(% style="width:290px" %)//AgencyScheme//|(% style="width:649px" %)agencySchemeAgencyId:**AGENCIES**(**1.0**)|(% style="width:332px" %)ECB:**AGENCIES**(**1.0**)
608 608  |(% style="width:290px" %)//Categorisation//|(% style="width:649px" %)categorisationAgencyId:categorisationId(version)|(% style="width:332px" %)IMF:cat001(1.0.0)
609 609  |(% style="width:290px" %)Category|(% style="width:649px" %)categorySchemeAgencyId:categorySchemeId(versi on).categoryId.categoryId.categoryId etc.|(% style="width:332px" %)IMF:SDDS(1.0.0):level_1_category.level_2_category …
... ... @@ -808,7 +808,7 @@
808 808  The artefacts included in the structural definitions are:
809 809  
810 810  * 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)
811 -* All types of Enumerated List (ValueList)^^[[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^3^^>>path:#sdfootnote3sym||name="sdfootnote3anc"]](%%)^^
812 +* All types of Enumerated List (ValueList)^^[[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)^^3^^>>path:#sdfootnote3sym||name="sdfootnote3anc"]](%%)^^
812 812  * All types of Structure (Data Structure Definition, Metadata Structure Definition)
813 813  * All types of Structure Usage (Dataflow, Metadataflow)
814 814  
... ... @@ -874,9 +874,9 @@
874 874  
875 875  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.
876 876  
877 -== 7.3 Data and Metadata Constraints ==
878 +=== {{id name="_Toc90818"/}}7.3 Data and Metadata Constraints ===
878 878  
879 -=== 7.3.1 Data and Metadata Constraints: Basic Concepts ===
880 +===== {{id name="_Toc90819"/}}7.3.1 Data and Metadata Constraints: Basic Concepts =====
880 880  
881 881  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.
882 882  
... ... @@ -890,13 +890,13 @@
890 890  
891 891  In addition, DataAvailabilityConstraints can be extremely useful in a data visualisation system, such as dissemination of statistics on a website. In such a system a Cube Region can be used to specify the Dimension codes that actually exist in a data source (these can be used to build relevant selection tables).
892 892  
893 -=== 7.3.2 Data and Metadata Constraints: Schematic ===
894 +===== {{id name="_Toc90820"/}}7.3.2 Data and Metadata Constraints: Schematic =====
894 894  
895 895  [[image:SDMX 3.1 Section 5_en_28d0cadc.jpg||height="326" width="580"]]
896 896  
897 897  **Figure 14: Schematic of the Constraint and the Artefacts that can be constrained**
898 898  
899 -=== 7.3.3 Data and Metadata Constraints: Model ===
900 +===== {{id name="_Toc90821"/}}7.3.3 Data and Metadata Constraints: Model =====
900 900  
901 901  [[image:SDMX 3.1 Section 5_en_a3184f6a.jpg||height="298" width="579"]]
902 902  
... ... @@ -912,9 +912,9 @@
912 912  
913 913  The content of the Constraint can be found in the SDMX Information Model document.
914 914  
915 -== 7.4 Data Registration ==
916 +=== {{id name="_Toc90822"/}}7.4 Data Registration ===
916 916  
917 -=== 7.4.1 Basic Concepts ===
918 +===== {{id name="_Toc90823"/}}7.4.1 Basic Concepts =====
918 918  
919 919  A Data Provider has published a new dataset conforming to an existing Dataflow (and hence Data Structure Definition). This is implemented as either a web-accessible SDMXML file, or in a database which has a web-services interface capable of responding to an SDMX RESTful query with an SDMX-ML data stream.
920 920  
... ... @@ -924,15 +924,15 @@
924 924  
925 925  SDMX-RR supports dataset registration via the Registration Request, which can be created by the Data Provider (giving the Data Provider maximum control). The registry responds to the registration request with a registration response which indicates if the registration was successful. In the event of an error, the error messages are returned as a registry exception within the response.
926 926  
927 -=== 7.4.2 The Registration Request ===
928 +===== {{id name="_Toc90824"/}}7.4.2 The Registration Request =====
928 928  
929 -==== 7.4.2.1 Registration Request Schematic ====
930 +**7.4.2.1 Registration Request Schematic**
930 930  
931 931  [[image:SDMX 3.1 Section 5_en_293a2ea6.jpg||height="337" width="554"]]
932 932  
933 933  **Figure 16: Schematic of the Objects Concerned with Registration**
934 934  
935 -==== 7.4.2.2 Registration Request Model ====
936 +**7.4.2.2 Registration Request Model**
936 936  
937 937  The following UML diagram shows the composition of the registration request. Each request is made up of one or more Registrations, one per dataset to be registered. The Registration can optionally have information, which has been extracted from the Registration:
938 938  
... ... @@ -944,11 +944,13 @@
944 944  
945 945  The Registration has an action attribute which takes one of the following values:
946 946  
948 +:
949 +
947 947  (((
948 -|(% style="width:224px" %)**Action Attribute Value**|(% style="width:1457px" %)**Behaviour**
949 -|(% style="width:224px" %)Append|(% style="width:1457px" %)Add this Registration to the registry
950 -|(% style="width:224px" %)Replace|(% style="width:1457px" %)Replace the existing Registration with identified by the id in the Registration of the SubmitRegistrationRequest
951 -|(% style="width:224px" %)Delete|(% style="width:1457px" %)Delete the existing Registration identified by the id in the Registration of the SubmitRegistrationRequest
951 +|**Action Attribute Value**|**Behaviour**
952 +|Append|Add this Registration to the registry
953 +|Replace|Replace the existing Registration with identified by the id in the Registration of the SubmitRegistrationRequest
954 +|Delete|Delete the existing Registration identified by the id in the Registration of the SubmitRegistrationRequest
952 952  )))
953 953  
954 954  [[image:SDMX 3.1 Section 5_en_90b3c64a.jpg||height="434" width="579"]]
... ... @@ -967,24 +967,30 @@
967 967  
968 968  https:~/~/github.com/sdmx-twg/sdmx-rest/blob/master/doc/availability.md
969 969  
973 +:
974 +
970 970  (((
971 -(% style="width:918.835px" %)
972 -|**Indexing Required**|(% style="width:745px" %)**Registration Process Activity**
973 -|indexTimeSeries|(% style="width:745px" %)Extract all the series keys and create a KeySet(s) Constraint.
974 -|indexDataSet|(% style="width:745px" %)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.
975 -|indexReportingPeriod|(% style="width:745px" %)(((
976 +|**Indexing Required**|**Registration Process Activity**
977 +|indexTimeSeries|Extract all the series keys and create a KeySet(s) Constraint.
978 +|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.
979 +|indexReportingPeriod|(((
976 976  This applies only to a registered __dataset__.
981 +
977 977  Extract the Reporting Begin and Reporting End from the Header of the Message containing the data set, and create a Reference Period constraint.
978 978  )))
979 -|indexAttributes|(% style="width:745px" %)(((
984 +|indexAttributes|(((
980 980  **Data Set**
986 +
981 981  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
982 982  
983 983  **Metadata Set**
984 -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
990 +
991 +Indicate the presence of a Reported Attribute by creating one or more Cube Regions containing Member Selections of Metadata Attribute
992 +
993 +Components of the Constraints model in the
985 985  )))
986 -|**Indexing Required**|(% style="width:745px" %)**Registration Process Activity**
987 -| |(% style="width:745px" %)SDMX-IM. Note that the content is not stored in the Selection Value.
995 +|**Indexing Required**|**Registration Process Activity**
996 +| |SDMX-IM. Note that the content is not stored in the Selection Value.
988 988  )))
989 989  
990 990  Constraints that specify the contents of a //QueryDatasource// are submitted to the Registry via the structure submission service (i.e., the RESTful API).
... ... @@ -991,7 +991,7 @@
991 991  
992 992  The Registration must reference the ProvisionAgreement to which it relates.
993 993  
994 -=== 7.4.3 Registration Response ===
1003 +===== {{id name="_Toc90825"/}}7.4.3 Registration Response =====
995 995  
996 996  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”.
997 997  
... ... @@ -1003,7 +1003,7 @@
1003 1003  
1004 1004  **Figure 18: Logical class diagram showing the registration response**
1005 1005  
1006 -== 7.5 Subscription and Notification Service ==
1015 +=== {{id name="_Toc90826"/}}7.5 Subscription and Notification Service ===
1007 1007  
1008 1008  The contents of the SDMX Registry/Repository will change regularly: new code lists and key families will be published and new datasets and metadata-sets will be registered. To obviate the need for users to repeatedly query the registry to see when new information is available, a mechanism is provided to allow users to be notified when these events happen.
1009 1009  
... ... @@ -1011,13 +1011,13 @@
1011 1011  
1012 1012  When a registry/repository artefact is modified, any subscriptions which are observing the object are activated, and either an email or HTTP POST is instigated to report details of the changes to the user specified in the subscription. This is called a “notification”.
1013 1013  
1014 -=== 7.5.1 Subscription Logical Class Diagram ===
1023 +===== {{id name="_Toc90827"/}}7.5.1 Subscription Logical Class Diagram =====
1015 1015  
1016 1016  [[image:SDMX 3.1 Section 5_en_1433df5d.jpg||height="680" width="587"]]
1017 1017  
1018 1018  **Figure 19: Logical Class Diagram of the Subscription**
1019 1019  
1020 -=== 7.5.2 Subscription Information ===
1029 +===== {{id name="_Toc90828"/}}7.5.2 Subscription Information =====
1021 1021  
1022 1022  Regardless of the type of registry/repository events being observed, a subscription always contains:
1023 1023  
... ... @@ -1026,16 +1026,18 @@
1026 1026  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.
1027 1027  1. A selector which specifies which type of events are of interest. The set of event types is:
1028 1028  
1038 +:
1039 +::
1040 +
1029 1029  (((
1030 -(% style="width:1061.83px" %)
1031 -|**Event Type**|(% style="width:660px" %)**Comment**
1032 -|STRUCTURAL_REPOSITORY_EVENTS|(% style="width:660px" %)Life-cycle changes to Maintainable Artefacts in the structural metadata repository.
1033 -|DATA_REGISTRATION_EVENTS|(% style="width:660px" %)Whenever a published dataset is registered. This can be either a SDMXML data file or an SDMX conformant database.
1034 -|METADATA_REGISTRATION_EVENTS|(% style="width:660px" %)Whenever a published metadataset is registered. This can be either a SDMXML reference metadata file or an SDMX conformant database.
1035 -|ALL_EVENTS|(% style="width:660px" %)All events of the specified EventType
1042 +|**Event Type**|**Comment**
1043 +|STRUCTURAL_REPOSITORY_EVENTS|Life-cycle changes to Maintainable Artefacts in the structural metadata repository.
1044 +|DATA_REGISTRATION_EVENTS|Whenever a published dataset is registered. This can be either a SDMXML data file or an SDMX conformant database.
1045 +|METADATA_REGISTRATION_EVENTS|Whenever a published metadataset is registered. This can be either a SDMXML reference metadata file or an SDMX conformant database.
1046 +|ALL_EVENTS|All events of the specified EventType
1036 1036  )))
1037 1037  
1038 -=== 7.5.3 Wildcard Facility ===
1049 +===== {{id name="_Toc90829"/}}7.5.3 Wildcard Facility =====
1039 1039  
1040 1040  Subscription notification supports wildcarded identifier components URNs, which are identifiers which have some or all of their component parts replaced by the wildcard character `*`. Identifier components comprise:
1041 1041  
... ... @@ -1091,29 +1091,30 @@
1091 1091  
1092 1092  The complete SDMX versioning syntax can be found in the SDMX Standards Section 6 “Technical Notes”, paragraph “4.3 Versioning”.
1093 1093  
1094 -=== 7.5.4 Structural Repository Events ===
1105 +===== {{id name="_Toc90830"/}}7.5.4 Structural Repository Events =====
1095 1095  
1096 1096  Whenever a maintainable artefact (data structure definition, concept scheme, codelist, metadata structure definition, category scheme, etc.) is added to, deleted from, or modified in the structural metadata repository, a structural metadata event is triggered. Subscriptions may be set up to monitor all such events, or focus on specific artefacts such as a Data Structure Definition.
1097 1097  
1098 -=== 7.5.5 Registration Events ===
1109 +===== {{id name="_Toc90831"/}}7.5.5 Registration Events =====
1099 1099  
1100 1100  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:
1101 1101  
1113 +:
1114 +
1102 1102  (((
1103 -(% style="width:1082.83px" %)
1104 -|(% style="width:230px" %)**Selector**|(% style="width:850px" %)**Comment**
1105 -|(% style="width:230px" %)DataProvider|(% style="width:850px" %)Any datasets registered by the specified dataprovider will activate the notification.
1106 -|(% style="width:230px" %)ProvisionAgreement|(% style="width:850px" %)Any datasets for the agreement will activate the notification.
1107 -|(% style="width:230px" %)Dataflow|(% style="width:850px" %)Any datasets for the specified dataflow will activate the notification.
1108 -|(% style="width:230px" %)DataStructureDefinition|(% style="width:850px" %)Any datasets for those dataflows that are based on the specified Data Structure Definition will activate the notification
1109 -|(% style="width:230px" %)Category|(% style="width:850px" %)Any datasets registered for those dataflows, provision agreements that are categorised by the category.
1116 +|**Selector**|**Comment**
1117 +|DataProvider|Any datasets registered by the specified dataprovider will activate the notification.
1118 +|ProvisionAgreement|Any datasets for the agreement will activate the notification.
1119 +|Dataflow|Any datasets for the specified dataflow will activate the notification.
1120 +|DataStructureDefinition|Any datasets for those dataflows that are based on the specified Data Structure Definition will activate the notification
1121 +|Category|Any datasets registered for those dataflows, provision agreements that are categorised by the category.
1110 1110  )))
1111 1111  
1112 1112  The event will also capture the semantic of the registration: deletion or replacement of an existing registration or a new registration.
1113 1113  
1114 -== 7.6 Notification ==
1126 +== {{id name="_Toc90832"/}}7.6 Notification ==
1115 1115  
1116 -=== 7.6.1 Logical Class Diagram ===
1128 +==== {{id name="_Toc90833"/}}7.6.1 Logical Class Diagram ====
1117 1117  
1118 1118  [[image:SDMX 3.1 Section 5_en_8bc1b889.jpg||height="379" width="579"]]
1119 1119  
... ... @@ -1130,11 +1130,11 @@
1130 1130  
1131 1131  Additionally, supplementary information may be contained in the notification as detailed below.
1132 1132  
1133 -=== 7.6.2 Structural Event Component ===
1145 +==== {{id name="_Toc90834"/}}7.6.2 Structural Event Component ====
1134 1134  
1135 1135  The notification will contain the MaintainableArtefact that triggered the event in a form similar to the SDMX-ML structural message (using elements from that namespace).
1136 1136  
1137 -=== 7.6.3 Registration Event Component ===
1149 +==== {{id name="_Toc90835"/}}7.6.3 Registration Event Component ====
1138 1138  
1139 1139  The notification will contain the Registration.
1140 1140