Difference between revisions of "Content Constraints"

From FMR Knowledge Base
Jump to navigation Jump to search
(Overview)
Line 17: Line 17:
  
 
The rules defined by Content Constraints will be enforced when performing data validation.  The rules are also reflected when viewing a DSD, Dataflow, or Provision Agreement, as shown below.
 
The rules defined by Content Constraints will be enforced when performing data validation.  The rules are also reflected when viewing a DSD, Dataflow, or Provision Agreement, as shown below.
 +
  
 
[[File:CONST2.PNG|1000px]]<br>
 
[[File:CONST2.PNG|1000px]]<br>
 +
 +
See this article [https://fmrwiki.sdmxcloud.org/All_Structures_-_FMR for more information on authoring and maintaining structures.]
  
 
=Wizard=
 
=Wizard=

Revision as of 04:57, 24 September 2020


Overview

Content Constraints or Reporting Constraints are used to further restrict the allowable content of a Codelist in the context of a DSD, Dataflow, Provision Agreement, or Data Provider. Collectively these are termed as Constrainable Structures. The restrictions imposed by Reporting Constraints are taken into account when validating a dataset reported by a Data Provider. A Reporting Constraint defines restrictions against Dimensions and Attributes of a DSD which take allowable content from an enumerated list (e.g. Codelist).

The Codelists which can be constrained are determined from the Constrainable structures that the Reporting Constraint is referencing.

A Content Constraint can impose a rule on any of the available Codelists to remove any number of allowable Codes, therefore reducing the universe of the enumerated list. A Codelist is constrained by either defining which Codes in the Codelist are included (remain valid) or which codes are excluded (are not valid). An included or excluded Code may also be marked as cascade, which means any Codes which are children of that Code also inherit the rule of inclusion or exclusion.

When viewing a Content Constraint, the Included Cube shows which Codes remain valid for any of the Constrained Components. The excluded Cube shows which Codes are no longer valid.


CONST1.PNG

A Constrainable Structure, such as a Provision Agreement will inherit any Reporting Constraints which are attached to lower level structures that it references. For example the Provision Agreement will inherit any Reporting Constraints against the Dataflow it uses, and the DSD that the Dataflow uses. It will also inherit any Content Constraints against the Data Provider it references.

The rules defined by Content Constraints will be enforced when performing data validation. The rules are also reflected when viewing a DSD, Dataflow, or Provision Agreement, as shown below.


CONST2.PNG

See this article for more information on authoring and maintaining structures.

Wizard

From the Data menu, select the Reporting Constraints page and use the maintenance button to create a codelist. Cogs.PNG

Step 1

The steps in a Constraint Wizard includes step 1 which provides the generic, high level details about the Category Scheme. See this article for more information on authoring and maintaining structures.

Step 2

The second step is used to define what Structures are being constrained and of the constrained structures, which Components will be included in the Constraints. Only Components which reference a Codelist are included in the available list. If the Constrained structure is a Data Provider, the list of Components will be derived from all the Dataflows the Data Provider has a Provision Agreement for.


CONST3.PNG

Steps 3 and 4

The third and fourth steps are to define the included and excluded values respectively. A Component can only be defined to contain included codes or excluded Codes not both.


CONST4.PNG