One of the things I skimmed over in previous posts was the concept of Composite Domains. This is a combination of domains that are assessed with interdependencies on content.
At a very simple level, a Composite Domain addresses these kind of problems:
- If City = “London”, Country must equal “England”
- If Wealth Category = “Millionaire”, Bank Balance must be greater than 1 million
They allow us to validate separate data items in combination, thus allowing the writing of more complex rules beyond the already capable single field ones.
Implementing Composite Domains
Below is a couple of screenshots around setting up composite domains. First we have the definition of what fields need to be included:
This is fairly straightforward – just pick at least two fields that are interrelated from the available Domain list. The other screen of interest is under the Rules tab:
Here it can be seen that a composite domain rule has the capability to evaluate two components at a time. This is a deliberate limitation, so if you wanted to validate 3 fields in combination, you would have to do it via a set of rules that cross over. If you were looking at validating the rule:
If City = “London”, Country = “UK” & Region = “Europe”
You would have to do it through the following rules
If City = “London”, Country = “UK”
If City = “London”, Region = “Europe”
The rules allow for AND / OR at the field level, so you could have rules that read
If City = “London” OR “Birmingham”, Country = “UK”
If Bank Balance >= 2 million and < 1 billion, Wealth Category = “Multi Millionaire”
There seems to be scope for improvement here – the rule capability is a little simplistic but I imagine will meet most scenarios and does make cross field validation possible.
Other features and summary
There are two features I skipped over – Reference Data (for a bigger future post on the whole concept) and the Value Relations tab which, at this point in time seems not to be working and is just a statistical summary of the values found in the data.
There’s not much to close out on otherwise – Composite Domains allow fields to influence other fields from a data quality perspective. The documentation on this feature is sparse at this point so hopefully we’ll get more information soon.