Version 5.1 by Helena on 2025/05/16 00:14

Show last authors
1 {{box title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 All structural metadata in SDMX is owned and maintained by a maintenance agency (Agency identified by agencyID in the schemas). Similarly, all reference metadata (i.e., MetadataSets) is owned and maintained by a metadata provider organisation (MetadataProvider identified by metadataProviderID in the schemas). It is vital to the integrity of the structural metadata that there are no conflicts in agencyID and metadataProviderID. In order to achieve this, SDMX adopts the following rules:
6
7 1. Agencies are maintained in an AgencyScheme (which is a sub class of //OrganisationScheme//); Metadata Providers are maintained in a MetadataProviderScheme.
8 1. The maintenance agency of the Agency/Metadata Provider Scheme must also be declared in a (different) AgencyScheme.
9 1. The "top-level" agency is SDMX and this agency scheme is maintained by SDMX.
10 1. Agencies registered in the top-level scheme can themselves maintain a single AgencyScheme and a single MetadataProviderScheme. SDMX is an agency in the SDMX AgencyScheme. Agencies in any AgencyScheme can themselves maintain a single AgencyScheme and so on.
11 1. The AgencyScheme and MetadataProvideScheme cannot be versioned and thus have a fixed version set to ‘1.0’.
12 1. There can be only one AgencyScheme maintained by any one Agency. It has a fixed Id of 'AGENCIES'. Similarly, only one MetadataProvideScheme is maintained by one Agency and has a fixed id of 'METADATA_PROVIDERS'.
13 1. The format of the agency identifier is agencyId.agencyID etc. The top-level agency in this identification mechanism is the agency registered in the SDMX agency scheme. In other words, SDMX is not a part of the hierarchical ID structure for agencies. SDMX is, itself, a maintenance agency.
14
15 This supports a hierarchical structure of agencyID.
16
17 An example is shown below.
18
19 [[image:SDMX 3-0-0 SECTION 6 FINAL-1.0_en_12efec58.jpg||height="294" width="373"]]
20
21 **Figure 16: Example of Hierarchic Structure of Agencies**
22
23 Each agency is identified by its full hierarchy excluding SDMX.
24
25 The XML representing this structure is shown below.
26
27 **<str:AgencySchemes>**
28
29 **<str:AgencyScheme agencyID="SDMX" id="AGENCIES">**
30
31 **<com:Name xml:lang="en">Top-level Agency Scheme</com:Name>**
32
33 **<str:Agency id="AA">**
34
35 **<com:Name xml:lang="en">AA Name</com:Name>**
36
37 **</str:Agency>**
38
39 **<str:Agency id="BB">**
40
41 **<com:Name xml:lang="en">BB Name</com:Name>**
42
43 **</str:Agency>**
44
45 **</str:AgencyScheme>**
46
47 **<str:AgencyScheme agencyID="AA" id="AGENCIES">**
48
49 **<com:Name xml:lang="en">AA Agencies</com:Name>**
50
51 **<str:Agency id="CC">**
52
53 **<com:Name xml:lang="en">CC Name</com:Name>**
54
55 **</str:Agency>**
56
57 **<str:Agency id="DD">**
58
59 **<com:Name xml:lang="en">DD Name</com:Name>**
60
61 **</str:Agency> &nbsp;&nbsp;**
62
63 **</str:AgencyScheme>**
64
65 **<str:AgencyScheme agencyID="BB" id="AGENCIES">**
66
67 **<com:Name xml:lang="en">BB Agencies</com:Name>**
68
69 **<str:Agency id="CC">**
70
71 **<com:Name xml:lang="en">CC Name</com:Name>**
72
73 **</str:Agency>**
74
75 **<str:Agency id="DD">**
76
77 **<com:Name xml:lang="en">DD Name</com:Name>**
78
79 **</str:Agency> &nbsp;&nbsp;**
80
81 **</str:AgencyScheme>**
82
83 **<str:AgencyScheme agencyID="AA.DD" id="AGENCIES">**
84
85 **<com:Name xml:lang="en">AA.DD Agencies</com:Name>**
86
87 **<str:Agency id="EE">**
88
89 **<com:Name xml:lang="en">EE Name</com:Name>**
90
91 **</str:Agency>**
92
93 **</str:AgencyScheme>**
94
95 **</str:AgencySchemes>**
96
97 **Figure 17: Example Agency Schemes Showing a Hierarchy**
98
99 Examples of Structure definitions that show how Agencies are used, are presented below:
100
101 **<str:Codelist agencyID="SDMX" id="CL_FREQ" version="1.0.0" &nbsp;**
102
103 **urn="urn:sdmx:org.sdmx.infomodel.codelist.Codelist=SDMX:CL_FREQ(1.0.0)">**
104
105 **<com:Name xml:lang="en">Frequency</com:Name>**
106
107 **</str:Codelist>**
108
109 **<str:Codelist agencyID="AA" id="CL_FREQ" version="1.0.0" &nbsp;**
110
111 **urn="urn:sdmx:org.sdmx.infomodel.codelist.Codelist=AA:CL_FREQ(1.0.0)">**
112
113 **<com:Name xml:lang="en">Frequency</com:Name>**
114
115 **</str:Codelist>**
116
117 **<str:Codelist agencyID="AA.CC" id="CL_FREQ" version="1.0.0" &nbsp;**
118
119 **urn="urn:sdmx:org.sdmx.infomodel.codelist.Codelist=AA.CC:CL_FREQ(1.0.0)">**
120
121 **<com:Name xml:lang="en">Frequency</com:Name>**
122
123 **</str:Codelist>**
124
125 **<str:Codelist agencyID="BB.CC" id="CL_FREQ" version="1.0.0" &nbsp;&nbsp;&nbsp; urn="urn:sdmx:org.sdmx.infomodel.codelist.Codelist=BB.CC:CL_FREQ(1.0.0)">**
126
127 |(((
128 **<com:Name xml:lang="en">Frequency</com:Name> &nbsp;&nbsp;&nbsp;**
129
130 **</str:Codelist> &nbsp;&nbsp;&nbsp;**
131 )))
132
133
134
135
136 **Figure 18: Example Showing Use of Agency Identifiers**
137
138 Each of these maintenance agencies has a Codelist with an identical id 'CL_FREQ'.
139
140 However, each is uniquely identified by means of the hierarchic agency structure.