SDMX Base Registry Module The base registry module defines the common constructs that a reused across multiple registry functions. Registration provides the information needed for data and reference metadata set registration. A data source must be supplied here if not already provided in the provision agreement. The data set or metadata set must be associated with a provision agreement, a metadata flow, or a dataflow definition. If possible, the provision agreement should be specified. Only in cases where this is not possible should the dataflow or metadata flow be used. ProvisionAgreement provides a reference to the provision agreement that the data is being registered against. Datasource identifies the data source(s) where the registered data can be retrieved. The id attribute holds a registry assigned identification for the registration. This must be provided in a response message (unless an error occurred while submitting a new registration), and should be included when updating or deleting a registration. The validFrom attribute provides an inclusive start date for providing supplemental validity information about the registration, so that data visibility from the registry can be controlled by the registrant. The validFrom attribute provides an inclusive end date for providing supplemental validity information about the registration, so that data visibility from the registry can be controlled by the registrant. The lastUpdated attribute provides a timestamp for the last time the data source was updated. The indexTimeSeries, if true, indicates that the registry must index all time series for the registered data. The default value is false, and the attribute will always be assumed false when the provision agreement references a metadata flow. The indexDataSet, if true, indicates that the registry must index the range of actual (present) values for each dimension of the data set or identifier component of the metadata set (as indicated in the set's structure definition). The default value is false. The indexAttributes, if true, indicates that the registry must index the range of actual (present) values for each attribute of the data set or the presence of the metadata attributes of the metadata set (as indicated in the set's structure definition). The default value is false. The indexReportingPeriod, if true, indicates that the registry must index the time period ranges for which data is present for the data source. The default value is false, and the attribute will always be assumed false when the provision agreement references a metadata flow. DataSourceType specifies the properties of a data or metadata source. Either a simple data source, a queryable data source, or both must be specified. SimpleDatasource describes a data source that is an SDMX-ML data or metadata message. It requires only the URL of the data. QueryableDatasource describes a data source that can be queried using the SDMX REST interfaces. SimpleDataSourceType describes a simple data source. The URL of the data is contained in the content. TYPE is a fixed attribute that is used to ensure only one simple data source may be provided, when it is referenced in a uniqueness constraint. QueryableDataSourceType describes a queryable data source, and add a fixed attribute for ensuring only one queryable source can be provided. TYPE is a fixed attribute that is used to ensure only one queryable data source may be provided, when it is referenced in a uniqueness constraint. IDQueryType is a simple type that allows for an identifier to be substituted with a wild card character ("%"). NestedIDQueryType is a simple type that allows for a nested identifier to be substituted with a wild card character ("%"). VersionQueryType is a simple type that allows for a version number to be substituted with a wild card character ("%") or a late bound character ("*"). IdentifiableQueryType describes the structure of a query for an identifiable object. The id attribute is used to query for an object based on its identifier. This is either an explicit value, or completely wild cared with the "%" value. VersionableQueryType describes the structure of a query for a versionable object. The version attribute is used to query for an object based on its version. This can be and explicit value, wild-carded ("%"), or late-bound ("*"). A wild carded version will match any version of the object where as a late-bound version will only match the latest version. MaintainableQueryType describes the structure of a query for a maintainable object. The agencyID attribute is used to query for an object based on its maintenance agency's identifier. This is either an explicit value, or completely wild cared with the "%" value. StatusMessageType carries the text of error messages and/or warnings in response to queries or requests. MessageText contains the text of the error and/or warning message. It can occur multiple times to communicate message for multiple warnings or errors. The status attribute carries the status of the query or request. StatusType provides an enumeration of values that detail the status of queries or requests. Query or request successful. Query or request successful, but with warnings. Query or request not successful.