Skip to main content

Speaking about data quality rules, we usually refer to DQ rule configuration in ONE web application. However, when it comes to referencing external sources or performing preliminary work or combining different sources, we may find that the capabilities within ONE Web are insufficient for our needs. For example, consider a scenario where we need to validate whether our data matches an external data source, such as ABN Lookup on https://abr.business.gov.au/. This is where component rules come in handy.

The Task at Hand: Validate ABN Information.

To implement this data quality (DQ) check, we require a component rule.

Here's how you can configure the ABN validation component and use it for DQ evaluation:

​​​​​​​Configure a placeholder for the component

Navigate to DQ section in ONE Web application and create a Validation component with the following parameters:

  • Name the input attribute as 'ABN.'
  • Specify a list of explanations
    • ABN_EMPTY: will be used for the case when ABN is empty. 
    • ABN_WRONG_LENGTH: ABN has the wrong length (not 11 digits).
    • ABN_INVALID: ABN is invalid.
    • ABN_VALID: ABN is valid.
  • Choose Ready for Implementation as the implementation state.
  • Publish the validation component.

Configuring Logic for the Component using ONE Desktop application

To configure the logic for the component using the ONE Desktop application, follow these steps:

  • Connect to the web application to ensure a proper connection. Right-click on your component and choose "Edit Component"
  • Configure the logic for your component adding steps between integration input and integration output steps.
    • By and large, the flow has two possible paths, depending on ABN value:
      • If ABN meets the 11-digit requirement and the format is valid, it follows one path.
      • If ABN doesn't meet the requirement or is empty, it takes a different path.
    • The workflow allows for data to be processed and scored accordingly, based on the quality and validity of the ABN being checked. In this step, we are calculating a score or a measure of the quality or validity of the ABN. A higher score may indicate a more valid or accurate ABN, while a lower score signifies potential issues with the ABN.
    • Publish your component by right-clicking on the 'ABN Validation' and choose 'Implemented.'

    • Navigate to the ONE Web application and check the status of your component.

 

Adding Changes to Runtime Configuration in ONE Web Application

 

  • Add information into runtime config in you ONE Web Application

Configuring the DQ component rule

To configure DQ rule with a component perform the following steps:

  1. Navigate to the Data Quality section.
  2. Create the rule 'ABN Validation.'
    1. Set 'ABN' as the input attribute.

       

    2. Choose 'Component' in the Rule Logic section and select the 'ABN validation' component.

       

    3. Match the component's attributes and logic with DQ rule results.

       

    4. Test the rule.

       

Applying the Rule

There are several options for using this rule in ONE Web Application (v14.4): 

  1. Apply it directly to an attribute in a Catalog Item.
  2. Use the rule assigned to an attribute in monitoring projects.
  3. Assign the rule to a term.

DQ component rules can significantly enhance data quality options for managing and validating data. The step-by-step guide provides a practical framework for configuring, implementing, and testing these rules, ultimately leading to improved data accuracy and reliability, which is crucial for data-driven decision-making across various applications and industries.

 

The material was prepared in collaboration with @Alexander Kislyakov and @Adrian Anderson 

Great article.  Can you please clarify , adding runtime configuration to One web, are we to do this on One desktop and that would suffice?


Hello @Appy, this runtime configuration is added through the DPM Admin console https://support.ataccama.com/home/docs/aip/latest/development-guides/one-development-guide/dpm-admin-console/dpm-and-dpe-configuration-in-dpm-admin-console.

Adding the connection in ONE Desktop is useful to generate the proper syntax of the XML configuration. Once you add it into ONE Dekstop, you can right-click on any folder in any project and choose New → Runtime Configuration. It will generate a configuration from all connected servers, databases or defined shortcuts, and user can then copy it out into the configuration in DPM Admin Console.

One more reason to have it in the ONE Desktop is to avoid validation error when opening the component in the ONE Desktop. It would complain about a missing server definition. It can be skipped, but by adding it in ONE Desktop, you won’t need to skip the errors.

Was this what you were asking?

Kind regards,

Anna 

 

📌  Links to the legacy documentation portal are no longer available. Read about the changes and how to access our documentation here.


Hi Anna, Thank you for the reply. Yes, this is exactly what I was looking for. We are on version 13.9.4 and the screens looks a bit different to the above instructions, but we should be able to work it out. Thanks again.


Hello @may_kwok ,

I was just wondering, if component rules also can have multiple input attributes? I have tried to create one and while it is possible to create, the execution seems to give back results which are not expected, all the results seem to end up being flagged as other, while the input data clearly would be either VALID or INVALID.

Viktor


Hi @ViktorSzucs , yes, it can have multiple input attributes, see: https://docs.ataccama.com/one/15.1.0/data-quality/validation-components.html

It will depend on many aspects like

  • do you have a correct mapping of the input rules attributes and component attributes, and then the mapping of the table attributes to the rule in the monitoring project?
  • what is the logic inside the component? Isn’t it changing the order of the records during the evaluation or even the number of the attributes? Most of the aggregation steps can change the order or number, I believe joins can also change it etc. - one trick could be to create a sequence at the beginning of the component and then order by it before sending out the results.

To debug it and find the issue, first it would be good to test it locally - create some sample data set in a text file and run it through the component locally (just copy out the logic into some plan and instead of the integration input and output use the Text file reader/writer.

If you don’t find any issue and the problem persists, I suggest you contact our support team that can help you debug the component and provide more insights. Depending on your version there might also be some known bug that is resolved in new versions.

Kind regards,

Anna


Hi ​@anna.spakova 

thanks for the reply, and I was wondering what was wrong as I have followed basically the same steps in the guide. In the end, it turned out to be a different issue where we had a bug with the approval process of rules and although the rule is approved , it remains in a limbo sort of state waiting for approval. On the screen it still looks like the rule is approved and all in a correct state, if you dig deeper, you can see the explanation part of the rule staying as default, hence only OTHER explanation.
 

 

We were advised the issue with approval workflow is fixed from 15.3 and on.


Thanks ​@ViktorSzucs for sharing the result with us. I am glad it was resolved, although it requires an upgrade. Let us know if you need any other help.

 

Kind regards,

Anna


Reply