Solved

To find all tables of attributes with no associated terms from the business term group

  • 14 November 2023
  • 4 replies
  • 56 views

Badge +1

Hello everyone!

I need to find all tables of attributes with no associated terms from the business term group: "FCB 360 Data attributes." The term "FCB 360 Data attributes" has multiple child terms.Is there a way to find tables that have no attribute of an unrelated term from the group of business terms: FCB 360 Data attributes. if it is possible to find at least with Desktop

I will be very grateful for your help🤗

Thank you!

icon

Best answer by anna.spakova 22 November 2023, 14:35

View original

4 replies

Userlevel 5
Badge +9

Hello @aakhmetkan , I am looking into the best approach, so far I can come up only with this using the Desktop tool:

  • get the IDs of all the terms from the hierarchy (see below)
  • concatenate the list of the IDs (you can use e.g. group aggregator or Representative creator) into one string.

  • filter the CIs using this AQL filter: attributes.none(termInstances.any(target.$id in ('410c6bac-0000-7000-0000-000000051d7f','410c6bac-0000-7000-0000-000000051cfb','08664d56-0000-7000-0000-00000008d94a'))) where the IDs represent the terms and should be basically a concatenated list from the previous step.

The problematic part is the hierarchy. You can use this query for terms: @termRelationship(target).any(source.name like "FCB 360 Data attributes" and type.name like "ParentChild") which will return all children for the FCB 360 Data attributes but not the children of the children. You would have to run this multiple times (based on # of levels of your hierarchy) and replace the name (FCB 360 Data attributes) with the child name. Or you can use ids also if that’s better. You can wrap this into a workflow and use Iterator to make it dynamic and be able to change the number of iterations. Alternatively, you just need to put several ONE Metadata Reader steps in a row where the filter will change dynamicly for each parent name.

Let me know if you need more help with this, I can try to prepare an example plan. Also, if I get some advice from my colleagues about a better approach, I will let you know.

Kind regards,

Anna

 

Badge +1

 @anna.spakova Hello! I don't quite understand how to build a plan, and where do I get the IDs that you specified(attributes.none(termInstances.any(target.$id in ('410c6bac-0000-7000-0000-000000051d7f','410c6bac-0000-7000-0000-000000051cfb','08664d56-0000-7000-0000-00000008d94a')))).I need more help with this, could you help me with an example plan on the desktop

Thank you!

aakhmetkan

 

Userlevel 5
Badge +9

Hello @aakhmetkan , I am working on the example, I will try to have it by the end of this week.

 

Kind regards,

Anna

Userlevel 5
Badge +9

Hello @aakhmetkan please find attached the example plan. It contains 3 levels of hierarchy, if you’d need more, you can just replicate some of the steps in it. There are guidelines on where to change the name of the parent term to yours, I used some of our demo examples (Personal Data).

No more changes should be needed than the ones written in the plan (blue box), in the output CSV you should get the list of the tables that don’t contain any of the terms in the hierarchy.

Kind regards,

Anna

 

Reply