Skip to Main Content

Need help with Tunning - Recursive with clause

User_J6BYRJan 25 2023 — edited 28 hours ago

Hello all -
I need help with Query , Based on sql tuning advisor , i have created index and sql plan as well. But I place the query in Oracle apex front end, it freeze my window and take about 40 mins -60 mins load data.
Logic of the query is to find a parent and child and children and show the depth of the relationship when running for 1 , 10 or 100 Clients no issue but when running for all not even able to get the count .

WITH parents(reln_id, VISA_CLIENT_ID, VISA_CLIENT_ID_OWNER, INDIVIDUAL_ID, ENTITY_ID_OWNER, ENTITY_ID, relative_depth, OWNER_PERCENT,RELN_TYPE,ACTIVE,PATH) AS (

      SELECT reln\_id, VISA\_CLIENT\_ID, VISA\_CLIENT\_ID\_OWNER, INDIVIDUAL\_ID, ENTITY\_ID\_OWNER, ENTITY\_ID, 0 AS relative\_depth, OWNER\_PERCENT, RELN\_TYPE, ACTIVE,   
      CASE  
      WHEN VISA\_CLIENT\_ID\_OWNER IS NOT NULL THEN  
      '\*' || VISA\_CLIENT\_ID || '\*' || VISA\_CLIENT\_ID\_OWNER || '\*'   
      WHEN ENTITY\_ID\_OWNER IS NOT NULL THEN  
      '\*' || VISA\_CLIENT\_ID || '\*' || ENTITY\_ID\_OWNER || '\*'   
      WHEN INDIVIDUAL\_ID IS NOT NULL THEN  
      '\*' || VISA\_CLIENT\_ID || '\*' || INDIVIDUAL\_ID || '\*'   
      END AS PATH  
      FROM VCAT.RELATIONSHIP  

where visa_client_id IN ( SELECT visa_client_id FROM vcat.visa_client where upper (aml_status) in ('ACTIVE','APPROVED','CONDITIONALLY APPROVED','NEW') and visa_client_id =26159)
UNION ALL

    --INDIRECT RELATIONSHIPS  
      SELECT RELATIONSHIP.RELN\_ID, RELATIONSHIP.VISA\_CLIENT\_ID, RELATIONSHIP.VISA\_CLIENT\_ID\_OWNER, RELATIONSHIP.INDIVIDUAL\_ID, RELATIONSHIP.ENTITY\_ID\_OWNER, RELATIONSHIP.ENTITY\_ID, parents.relative\_depth + 1, relationship.OWNER\_PERCENT, relationship.RELN\_TYPE, RELATIONSHIP.ACTIVE,   
      CASE  
      WHEN RELATIONSHIP.VISA\_CLIENT\_ID\_OWNER IS NOT NULL THEN  
      parents.PATH || '\*' || RELATIONSHIP.VISA\_CLIENT\_ID\_OWNER || '\*'   
      WHEN RELATIONSHIP.ENTITY\_ID\_OWNER IS NOT NULL THEN  
      parents.PATH || '\*' || RELATIONSHIP.ENTITY\_ID\_OWNER || '\*'   
      WHEN RELATIONSHIP.INDIVIDUAL\_ID IS NOT NULL THEN  
      parents.PATH || '\*' || RELATIONSHIP.INDIVIDUAL\_ID|| '\*'   
      END AS PATH  
      FROM VCAT.RELATIONSHIP, parents  
      WHERE (RELATIONSHIP.VISA\_CLIENT\_ID = parents.VISA\_CLIENT\_ID\_OWNER OR RELATIONSHIP.ENTITY\_ID = parents.ENTITY\_ID\_OWNER)   
      AND PATH NOT LIKE  
      CASE WHEN RELATIONSHIP.VISA\_CLIENT\_ID\_OWNER IS NOT NULL THEN  
      '%' ||  '\*' || RELATIONSHIP.VISA\_CLIENT\_ID\_OWNER || '\*' || '%'  
      WHEN RELATIONSHIP.ENTITY\_ID\_OWNER IS NOT NULL THEN  
      '%' || '\*' || RELATIONSHIP.ENTITY\_ID\_OWNER || '\*' || '%'   
      WHEN RELATIONSHIP.INDIVIDUAL\_ID IS NOT NULL THEN  
      '%' || '\*' || RELATIONSHIP.INDIVIDUAL\_ID || '\*'  || '%'   
      END  
)

SELECT parents.reln_id,
parents.path,
CASE WHEN parents.VISA_CLIENT_ID IS NOT NULL THEN (SELECT vc.aml_status FROM vcat.visa_client vc WHERE parents.VISA_CLIENT_ID = vc.visa_client_id) END AS AML_STATUS,
parents.VISA_CLIENT_ID,
CASE WHEN parents.VISA_CLIENT_ID IS NOT NULL THEN (SELECT vc.client_name FROM vcat.visa_client vc WHERE parents.VISA_CLIENT_ID = vc.visa_client_id) END AS CLIENT_NAME,
'VISA Client and Its Owners' AS PERSPECTIVE,
CASE WHEN parents.VISA_CLIENT_ID IS NOT NULL THEN VISA_CLIENT_ID
WHEN parents.ENTITY_ID IS NOT NULL THEN ENTITY_ID
END AS ASSET_ID,
CASE WHEN parents.VISA_CLIENT_ID IS NOT NULL THEN (SELECT CLIENT_NAME FROM VCAT.VISA_CLIENT WHERE VISA_CLIENT.VISA_CLIENT_ID = parents.VISA_CLIENT_ID)
WHEN parents.ENTITY_ID IS NOT NULL THEN (SELECT ENTITY_NAME FROM VCAT.ENTITIES WHERE ENTITIES.ENTITY_ID = parents.ENTITY_ID)
END AS ASSET_NAME,
--parents.ENTITY_ID,
CASE WHEN parents.VISA_CLIENT_ID IS NOT NULL THEN 'VISA CLIENT'
WHEN parents.ENTITY_ID IS NOT NULL THEN 'ENTITY'
END AS ASSET_TYPE,
--parents.VISA_CLIENT_ID_OWNER,
-- parents.INDIVIDUAL_ID,
-- parents.ENTITY_ID_OWNER,
CASE WHEN parents.VISA_CLIENT_ID_OWNER IS NOT NULL THEN parents.VISA_CLIENT_ID_OWNER
WHEN parents.INDIVIDUAL_ID IS NOT NULL THEN parents.INDIVIDUAL_ID
WHEN parents.ENTITY_ID_OWNER IS NOT NULL THEN parents.ENTITY_ID_OWNER
END AS OWNER_ID,
CASE WHEN parents.VISA_CLIENT_ID_OWNER IS NOT NULL THEN (SELECT CLIENT_NAME FROM VCAT.VISA_CLIENT WHERE VISA_CLIENT.VISA_CLIENT_ID = parents.VISA_CLIENT_ID_OWNER)
WHEN parents.INDIVIDUAL_ID IS NOT NULL THEN (SELECT CASE WHEN MIDDLE_NAME IS NOT NULL AND SECOND_LAST_NAME IS NOT NULL THEN CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(FIRST_NAME,' '),MIDDLE_NAME),' '), LAST_NAME), ' '), SECOND_LAST_NAME)
WHEN MIDDLE_NAME IS NOT NULL AND SECOND_LAST_NAME IS NULL THEN CONCAT(CONCAT(CONCAT(CONCAT(FIRST_NAME,' '),MIDDLE_NAME),' '), LAST_NAME)
WHEN MIDDLE_NAME IS NULL AND SECOND_LAST_NAME IS NOT NULL THEN CONCAT(CONCAT(CONCAT(CONCAT(FIRST_NAME,' '),LAST_NAME),' '), SECOND_LAST_NAME)
WHEN MIDDLE_NAME IS NULL AND SECOND_LAST_NAME IS NULL THEN CONCAT(CONCAT(FIRST_NAME,' '), LAST_NAME)
END AS FULL_NAME FROM VCAT.INDIVIDUALS WHERE INDIVIDUALS.INDIVIDUALS_ID = parents.INDIVIDUAL_ID)
WHEN parents.ENTITY_ID_OWNER IS NOT NULL THEN (SELECT ENTITY_NAME FROM VCAT.ENTITIES WHERE ENTITIES.ENTITY_ID = parents.ENTITY_ID_OWNER)
END AS OWNER_NAME,
CASE WHEN parents.VISA_CLIENT_ID_OWNER IS NOT NULL THEN 'VISA CLIENT'
WHEN parents.INDIVIDUAL_ID IS NOT NULL THEN 'INDIVIDUAL'
WHEN parents.ENTITY_ID_OWNER IS NOT NULL THEN 'ENTITY'
END AS OWNER_TYPE,
parents.relative_depth,
CONCAT(parents.OWNER_PERCENT,'%') AS OWNERSHIP_PERCENTAGE,
parents.RELN_TYPE,
lov.lov_value AS RELN_STATUS
FROM parents JOIN vcat.list_of_values lov ON (parents.active = lov.lov_key AND lov.lov_name = 'RELN_STATUS')
ORDER BY parents.visa_client_id, parents.relative_depth DESC;

Summary Query

WITH parents(reln_id, VISA_CLIENT_ID, VISA_CLIENT_ID_OWNER, INDIVIDUAL_ID, ENTITY_ID_OWNER, ENTITY_ID, relative_depth, OWNER_PERCENT,RELN_TYPE,ACTIVE,PATH) AS (

      SELECT reln\_id, VISA\_CLIENT\_ID, VISA\_CLIENT\_ID\_OWNER, INDIVIDUAL\_ID, ENTITY\_ID\_OWNER, ENTITY\_ID, 0 AS relative\_depth, OWNER\_PERCENT, RELN\_TYPE, ACTIVE,   
      CASE  
      WHEN VISA\_CLIENT\_ID\_OWNER IS NOT NULL THEN  
      '\*' || VISA\_CLIENT\_ID || '\*' || VISA\_CLIENT\_ID\_OWNER || '\*'   
      WHEN ENTITY\_ID\_OWNER IS NOT NULL THEN  
      '\*' || VISA\_CLIENT\_ID || '\*' || ENTITY\_ID\_OWNER || '\*'   
      WHEN INDIVIDUAL\_ID IS NOT NULL THEN  
      '\*' || VISA\_CLIENT\_ID || '\*' || INDIVIDUAL\_ID || '\*'   
      END AS PATH  
      FROM VCAT.RELATIONSHIP  

where visa_client_id IN ( SELECT visa_client_id FROM vcat.visa_client where upper (aml_status) in ('ACTIVE','APPROVED','CONDITIONALLY APPROVED','NEW') and visa_client_id =26159)
UNION ALL

    --INDIRECT RELATIONSHIPS  
      SELECT RELATIONSHIP.RELN\_ID, RELATIONSHIP.VISA\_CLIENT\_ID, RELATIONSHIP.VISA\_CLIENT\_ID\_OWNER, RELATIONSHIP.INDIVIDUAL\_ID, RELATIONSHIP.ENTITY\_ID\_OWNER, RELATIONSHIP.ENTITY\_ID, parents.relative\_depth + 1, relationship.OWNER\_PERCENT, relationship.RELN\_TYPE, RELATIONSHIP.ACTIVE,   
      CASE  
      WHEN RELATIONSHIP.VISA\_CLIENT\_ID\_OWNER IS NOT NULL THEN  
      parents.PATH || '\*' || RELATIONSHIP.VISA\_CLIENT\_ID\_OWNER || '\*'   
      WHEN RELATIONSHIP.ENTITY\_ID\_OWNER IS NOT NULL THEN  
      parents.PATH || '\*' || RELATIONSHIP.ENTITY\_ID\_OWNER || '\*'   
      WHEN RELATIONSHIP.INDIVIDUAL\_ID IS NOT NULL THEN  
      parents.PATH || '\*' || RELATIONSHIP.INDIVIDUAL\_ID|| '\*'   
      END AS PATH  
      FROM VCAT.RELATIONSHIP, parents  
        WHERE (RELATIONSHIP.VISA\_CLIENT\_ID = parents.VISA\_CLIENT\_ID\_OWNER OR RELATIONSHIP.ENTITY\_ID = parents.ENTITY\_ID\_OWNER)   
      
      AND PATH NOT LIKE  
      CASE WHEN RELATIONSHIP.VISA\_CLIENT\_ID\_OWNER IS NOT NULL THEN  
      '%' ||  '\*' || RELATIONSHIP.VISA\_CLIENT\_ID\_OWNER || '\*' || '%'  
      WHEN RELATIONSHIP.ENTITY\_ID\_OWNER IS NOT NULL THEN  
      '%' || '\*' || RELATIONSHIP.ENTITY\_ID\_OWNER || '\*' || '%'   
      WHEN RELATIONSHIP.INDIVIDUAL\_ID IS NOT NULL THEN  
      '%' || '\*' || RELATIONSHIP.INDIVIDUAL\_ID || '\*'  || '%'   
      END  
)  
  
select \* from parents;

Sample data

REM INSERTING into RELATIONSHIP_TABLE
SET DEFINE OFF;
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (24987,104873,null,1755,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (24987,104867,null,2025,null,null,'AML_OFF',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (24987,104868,null,26404,null,null,'CEO',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (24987,104869,null,26404,null,null,'COB',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (24987,104871,null,107487,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (24987,104872,null,112284,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (24987,6537,null,null,null,849,'EOC',100,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,1782,24987,null,null,null,'COC',10.78,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,106600,null,17550,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,106599,null,17551,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,106602,null,17887,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,24002,null,36986,null,null,'KEY_EX',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,23997,null,36987,null,null,'KEY_EX',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,24000,null,36988,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,23999,null,36989,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,23998,null,36990,null,null,'KEY_EX',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,106598,null,36991,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,106601,null,37106,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,23796,null,37154,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,23795,null,37156,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,24001,null,37169,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,23752,null,37191,null,null,'IOC',14,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,106596,null,40161,null,null,'BOD',null,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,4482,null,null,null,2085,'EOC',10.45,'1');
Insert into RELATIONSHIP_TABLE (VISA_CLIENT_ID,RELN_ID,VISA_CLIENT_ID_OWNER,INDIVIDUAL_ID,ENTITY_ID,ENTITY_ID_OWNER,RELN_TYPE,OWNER_PERCENT,ACTIVE) values (26159,4483,null,null,null,2087,'EOC',11.39,'1');

Desired output

1782 26159 24987 0 10.78 COC 1 *26159*24987*
106600 26159 17550 0 BOD 1 *26159*17550*
106599 26159 17551 0 BOD 1 *26159*17551*
106602 26159 17887 0 BOD 1 *26159*17887*
24002 26159 36986 0 KEY_EX 1 *26159*36986*
23997 26159 36987 0 KEY_EX 1 *26159*36987*
24000 26159 36988 0 BOD 1 *26159*36988*
23999 26159 36989 0 BOD 1 *26159*36989*
23998 26159 36990 0 KEY_EX 1 *26159*36990*
106598 26159 36991 0 BOD 1 *26159*36991*
106601 26159 37106 0 BOD 1 *26159*37106*
23796 26159 37154 0 BOD 1 *26159*37154*
23795 26159 37156 0 BOD 1 *26159*37156*
24001 26159 37169 0 BOD 1 *26159*37169*
23752 26159 37191 0 14 IOC 1 *26159*37191*
106596 26159 40161 0 BOD 1 *26159*40161*
4482 26159 2085 0 10.45 EOC 1 *26159*2085*
4483 26159 2087 0 11.39 EOC 1 *26159*2087*
6537 24987 849 1 100 EOC 1 *26159*24987**849*
104867 24987 2025 1 AML_OFF 1 *26159*24987**2025*
104868 24987 26404 1 CEO 1 *26159*24987**26404*
104869 24987 26404 1 COB 1 *26159*24987**26404*
104871 24987 107487 1 BOD 1 *26159*24987**107487*
104872 24987 112284 1 BOD 1 *26159*24987**112284*
104873 24987 1755 1 BOD 1 *26159*24987**1755*

Kindly help me to make this query faster for page load

Tom Smith Owns BlackRock pt 2

If Tom Smith owns BlackRock as an individual owner, he is considered a related party associated with BlackRock. This means, if we navigate to BlackRock’s client profile, we will see Tom Smith listed as a related party.

The vice versa is true too. If we navigate to Tom Smith’s profile, we will see BlackRock as its related party. From the perspective of Tom Smith, since he owns BlackRock, BlackRock is considered one of his related party.

Related party is an umbrella term for any company or individual that is connected to the one we are currently looking at.

PT2. A RELATIONSHIP CAN BE DIRECT OR INDIRECT.

Direct Relationship

Usually when we think of relationships, we tend to think of a direct relationship.

I own a pencil.

You own a car.

We both own a piece of paper.

These are considered direct relationships because we are directly owning these assets (pencil, car, a piece of paper). We are considered the owners of these items.

In the similar sense, the relationships in VCAT can also be direct relationships.

EXAMPLE 3 Direct Relationships

BlackRock (Entity) owns McDonalds (Visa Client).

Tom Smith (Individual) owns Leaf Co. (Entity).

These are direct relationships because there is a direct link between one company/individual and the other company. They directly own these companies similar to how we directly own a pencil or a car.

They only involve one layer of relationship (i.e. BlackRock owns McDonalds) to establish a connection.

Indirect Relationship

In the opposite end of the section, there are relationships that exist because of other relationships connected to them. They are bounded by multiple layers that could be crucial in establishing a connection. These are called indirect relationships.

EXAMPLE 4 Indirect Relationships

Tom Smith (Individual) owns Blackrock. (Client)

This is a direct relationship because Tom Smith directly owns BlackRock.

Tom Smith (Individual) owns Blackrock. (Client)

Blackrock (Client) owns Chipotle. (Client)

Tom Smith’s relationship to Blackrock is direct and Blackrock’s relationship to Chipotle is direct. However, Tom Smith is technically indirectly linked to Chipotle as an indirect owner.

This is because Tom Smith owns the company (Blackrock) that owns Chipotle. Notice that there’s intermediate relationships that contribute to Tom Smith’s connection to Chipotle. This is why he is an indirect owner (Beneficial Owner). If Blackrock’s connection to Chipotle did not exist, Tom Smith would not be considered an owner.

Tom Smith = owns => Blackrock = owns => Chipotle

Comments
Post Details
Added on Jan 25 2023
12 comments
106 views