Changes for page 12 Constraints
Last modified by Helena K. on 2026/06/09 11:04
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -4,14 +4,16 @@ 4 4 5 5 == 12.1 Scope == 6 6 7 -The scope of this section is to describe the support in the metamodel for specifying both the access to and the content of a data source . The information maybe stored inaresourcesuch as a registry for useby applications wishing to locate data andmetadata which are available via the Internet. The//Constraint// is also used to specify a subsetofaCodelistwhichmay beused as a partial Codelist,relevant in the context of the artefact to which the //Constraint// is attachede.g., DataStructureDefinition, Dataflow, ProvisionAgreement, MetadataStructureDefinition, Metadataflow, MetadataProvisionAgreement.7 +The scope of this section is to describe the support in the metamodel for specifying both the access to and the content of a [[data source>>doc:sdmx:Glossary 2\.1.Data source.WebHome]]. The information may be stored in 8 8 9 - Notethat inthismetamodel the termdata provider refers tobothdata andmetadataproviders.9 +a resource such as a registry for use by applications wishing to locate data and metadata which are available via the Internet. The //[[Constraint>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]]// is also used to specify a subset of a [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]] which may be used as a partial [[Codelist>>doc:sdmx:Glossary 2\.1.Code list.WebHome]], relevant in the context of the [[artefact>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]] to which the //[[Constraint>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]]// is attached e.g., DataStructureDefinition, [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]], ProvisionAgreement, MetadataStructureDefinition, [[Metadataflow>>doc:sdmx:Glossary 2\.1.Metadataflow.WebHome]], MetadataProvisionAgreement. 10 10 11 - TheDataflowandMetadataflow, themselvesmay bespecified as containingonly a subset of allthepossiblekeys thatcouldbederivedfroma DataStructureDefinitionorMetadataStructureDefinition. Respectively, further subsetsmay bedefinedwithinaProvisionAgreement andMetadataProvisionAgreement.11 +Note that in this metamodel the term [[data provider>>doc:sdmx:Glossary 2\.1.Data provider.WebHome]] refers to both data and metadata providers. 12 12 13 -These specifi cationsarecalled//Constraint//in this model.13 +The [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] and [[Metadataflow>>doc:sdmx:Glossary 2\.1.Metadataflow.WebHome]], themselves may be specified as containing only a subset of all the possible keys that could be derived from a DataStructureDefinition or MetadataStructureDefinition. Respectively, further subsets may be defined within a ProvisionAgreement and MetadataProvisionAgreement. 14 14 15 +These specifications are called //[[Constraint>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]]// in this model. 16 + 15 15 == 12.2 Inheritance == 16 16 17 17 === 12.2.1 Class Diagram of Constrainable Artefacts - Inheritance === ... ... @@ -24,18 +24,18 @@ 24 24 25 25 ==== 12.2.2.1 Narrative ==== 26 26 27 -Any artefact that inherits from the //ConstrainableArtefact// interface can have constraints defined. The artefacts that can have constraint metadata attached are: 29 +Any [[artefact>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]] that inherits from the //ConstrainableArtefact// interface can have [[constraints>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]] defined. The [[artefacts>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]] that can have [[constraint>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]] metadata attached are: 28 28 29 -Dataflow 31 +[[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] 30 30 ProvisionAgreement 31 31 DataProvider 32 32 DataStructureDefinition 33 -Metadataflow 35 +[[Metadataflow>>doc:sdmx:Glossary 2\.1.Metadataflow.WebHome]] 34 34 MetaDataProvider 35 35 MetadataProvisionAgreement 36 36 MetadataStructureDefinition 37 37 38 -Note that, because the //Constraint// can specify a subset of the component values implied by a specific //Structure// (such as a specific DataStructureDefinition or specific MetadataStructureDefinition), the //ConstrainableArtefact//s must be associated with a specific //Structure//. Therefore, whilst the //Constraint// itself may not be linked directly to a DataStructureDefinition or MetadataStructureDefinition, the artefact that it is constraining will be linked to a DataStructureDefinition or MetadataStructureDefinition. A DataProvider and MetadataProvider indirectly refernece DSDs and MSDs through their associated Data and Metadata Provision Agreements as such these Constraints are restricted to Cube Regions and are applicable only to the DSDs / MSDs which contain the Componets being restricted. 40 +Note that, because the //[[Constraint>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]]// can specify a subset of the [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] values implied by a specific //Structure// (such as a specific DataStructureDefinition or specific MetadataStructureDefinition), the //ConstrainableArtefact//s must be associated with a specific //Structure//. Therefore, whilst the //[[Constraint>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]]// itself may not be linked directly to a DataStructureDefinition or MetadataStructureDefinition, the [[artefact>>doc:sdmx:Glossary 2\.1.Artefact.WebHome]] that it is constraining will be linked to a DataStructureDefinition or MetadataStructureDefinition. A DataProvider and MetadataProvider indirectly refernece DSDs and MSDs through their associated Data and Metadata [[Provision Agreements>>doc:sdmx:Glossary 2\.1.Provision agreement.WebHome]] as such these [[Constraints>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]] are restricted to Cube Regions and are applicable only to the DSDs / MSDs which contain the Componets being restricted. 39 39 40 40 == 12.3 Constraints == 41 41 ... ... @@ -49,18 +49,18 @@ 49 49 50 50 ==== 12.3.2.1 Narrative ==== 51 51 52 -The constraint mechanism allows specific constraints to be attached to a //ConstrainableArtefact//. These constraints specify a subset of the total set of values or keys that may be present in any of the //ConstrainableArtefacts//. 54 +The [[constraint>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]] mechanism allows specific [[constraints>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]] to be attached to a //ConstrainableArtefact//. These [[constraints>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]] specify a subset of the total set of values or keys that may be present in any of the //ConstrainableArtefacts//. 53 53 54 -For instance, a DataStructureDefinition specifies, for each Dimension, the list of allowable code values. However, a specific Dataflow that uses the 56 +For instance, a DataStructureDefinition specifies, for each [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]], the list of allowable [[code>>doc:sdmx:Glossary 2\.1.Code.WebHome]] values. However, a specific [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] that uses the 55 55 56 -DataStructureDefinition may contain only a subset of the possible range of keys that is theoretically possible from the DataStructureDefinition definition (the total range of possibilities is sometimes called the Cartesian product of the dimension values). In addition to this, a DataProvider that is capable of supplying data according to the Dataflow has a ProvisionAgreement, and the DataProvider may also wish to supply constraint information which may further constrain the range of possibilities in order to describe the data that the provider can supply. It may also be useful to describe the content of a data source in terms of the KeySets or CubeRegions contained within it. 58 +DataStructureDefinition may contain only a subset of the possible range of keys that is theoretically possible from the DataStructureDefinition definition (the total range of possibilities is sometimes called the Cartesian product of the [[dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] values). In addition to this, a DataProvider that is capable of supplying data according to the [[Dataflow>>doc:sdmx:Glossary 2\.1.Dataflow.WebHome]] has a ProvisionAgreement, and the DataProvider may also wish to supply [[constraint>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]] information which may further constrain the range of possibilities in order to describe the data that the provider can supply. It may also be useful to describe the content of a [[data source>>doc:sdmx:Glossary 2\.1.Data source.WebHome]] in terms of the KeySets or CubeRegions contained within it. 57 57 58 -A //ConstrainableArtefact// can have two types of //Constraint//s: 60 +A //ConstrainableArtefact// can have two types of //[[Constraint>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]]//s: 59 59 60 -1. DataConstraint – is used as a mechanism to specify the set of keys (DataKeySet), or set of component values (CubeRegion) that can be reported against the target ConstrainableArtefact. Multiple such DataConstraints may be present for a //ConstrainableArtefact//. 61 -1. MetadataConstraint – is used as a mechanism to specify a set of component values (MetadatTargetRegion) that can be reported against the target ConstrainableArtefact. Multiple such MetadataConstraints may be present for a //ConstrainableArtefact//. 62 +1. DataConstraint – is used as a mechanism to specify the set of keys (DataKeySet), or set of [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] values (CubeRegion) that can be reported against the target ConstrainableArtefact. Multiple such DataConstraints may be present for a //ConstrainableArtefact//. 63 +1. MetadataConstraint – is used as a mechanism to specify a set of [[component>>doc:sdmx:Glossary 2\.1.Component.WebHome]] values (MetadatTargetRegion) that can be reported against the target ConstrainableArtefact. Multiple such MetadataConstraints may be present for a //ConstrainableArtefact//. 62 62 63 -Note also that another possible type of a Constraint is available; that is a AvailableDataConstraint, this is used to report the data that exists in a data source. An AvailableDataConstraint is not a Maintainable Artefact as it is geneated dynamically based on the query. An AvailableDataConstraint contains only 1 Cube Region which is used to specify the valid values per Dimension of the DSD that is is attached to. 65 +Note also that another possible type of a [[Constraint>>doc:sdmx:Glossary 2\.1.Constraint.WebHome]] is available; that is a AvailableDataConstraint, this is used to report the data that exists in a [[data source>>doc:sdmx:Glossary 2\.1.Data source.WebHome]]. An AvailableDataConstraint is not a [[Maintainable Artefact>>doc:sdmx:Glossary 2\.1.Maintainable artefact.WebHome]] as it is geneated dynamically based on the query. An AvailableDataConstraint contains only 1 Cube Region which is used to specify the valid values per [[Dimension>>doc:sdmx:Glossary 2\.1.Dimension.WebHome]] of the [[DSD>>doc:sdmx:Glossary 2\.1.Data structure definition.WebHome]] that is is attached to. 64 64 65 65 === 12.3.3 Relationship Class Diagram – Detail === 66 66