SK SKYVVA Documentation

14. Behavior of Sibling and Uncle node

The default behavior of the Sibling and Uncle node

When we use parent data to a child node, we copy data from parent to child. This means it repeats the data of the parent for all children.

<Response> <AccountTestV3> <AccountNumber>20001</AccountNumber> <Name>TestAccount1-SB</Name> <BillingCountry>Cambodia1</BillingCountry> <BillingCity>PhnomPenh1</BillingCity> <Account_ID>101</Account_ID> <Description>Test description ACCOUNT object</Description> <AssetTestV3> <AssetName>Test-Asset_01</AssetName> <Asset_ID>10</Asset_ID> <Description>Test description ASSET object</Description> <Quantity>2.3412</Quantity> <SerialNumber>AS-000121</SerialNumber> </AssetTestV3> <ContactTestV3> <Cont_ID>201</Cont_ID> <LastName>TestContact_01</LastName> <FirstName>DContact2</FirstName> <Email>Dtest.2019_201@gmail.com</Email> <Phone>301</Phone> <Description>Test description CONTACT object</Description> <CaseTestV3> <Subject>TestCase Agent-01</Subject> <SuppliedPhone>401</SuppliedPhone> <status>Failed</status> <Case_Id>2001</Case_Id> <Description>Test description CASE object</Description> </CaseTestV3> </ContactTestV3> <ContactTestV3> <Cont_ID>401</Cont_ID> <LastName>TestContact_02</LastName> <FirstName>CContact2</FirstName> <Email>ctest.2019_102@gmail.com</Email> <Phone>102</Phone> <Description>Test description CONTACT object</Description> </ContactTestV3> </AccountTestV3> </Response>

Do Mapping

[su_box title="The result on Message Monitoring " box_color="#2a8af0" title_color="#000000"]The data is displayed correctly. Because “AssetTestV3” has only one occurrence but “ContactTestV3” has two occurrences. So the “ContactTestV3” on index 2 cannot get data from “AssetTestV3”.[/su_box]

UseCase with  Uncle node

<Response> <AccountTestV3> <AccountNumber>20001</AccountNumber> <Name>TestAccount1-SB</Name> <BillingCountry>Cambodia1</BillingCountry> <BillingCity>PhnomPenh1</BillingCity> <Account_ID>101</Account_ID> <Description>Test description ACCOUNT object</Description> <AssetTestV3> <AssetName>Test-Asset_01</AssetName> <Asset_ID>10</Asset_ID> <Description>Test description ASSET object</Description> <Quantity>2.3412</Quantity> <SerialNumber>AS-000121</SerialNumber> </AssetTestV3> <AssetTestV3> <AssetName>Test-Asset_02</AssetName> <Asset_ID>20</Asset_ID> <Description>Test description ASSET object</Description> <Quantity>2.3412</Quantity> <SerialNumber>AS-000122</SerialNumber> </AssetTestV3> <ContactTestV3> <Cont_ID>201</Cont_ID> <LastName>TestContact_01</LastName> <FirstName>DContact2</FirstName> <Email>Dtest.2019_201@gmail.com</Email> <Phone>301</Phone> <Description>Test description CONTACT object</Description> <CaseTestV3> <Subject>TestCase Agent-01</Subject> <SuppliedPhone>401</SuppliedPhone> <status>Failed</status> <Case_Id>2001</Case_Id> <Description>Test description CASE object</Description> </CaseTestV3> <CaseTestV3> <Subject>TestCase Agent-02</Subject> <SuppliedPhone>501</SuppliedPhone> <status>Failed</status> <Case_Id>3001</Case_Id> <Description>Test description CASE object</Description> </CaseTestV3> </ContactTestV3> <ContactTestV3> <Cont_ID>401</Cont_ID> <LastName>TestContact_02</LastName> <FirstName>CContact2</FirstName> <Email>ctest.2019_102@gmail.com</Email> <Phone>102</Phone> <Description>Test description CONTACT object</Description> <CaseTestV3> <Subject>TestCase Agent-03</Subject> <SuppliedPhone>202</SuppliedPhone> <status>Failed</status> <Case_Id>4001</Case_Id> </CaseTestV3> </ContactTestV3> <ContactTestV3> <Cont_ID>801</Cont_ID> <LastName>TestContact_03</LastName> <FirstName>CContact3</FirstName> <Email>ctest.2019_103@gmail.com</Email> <Phone>103</Phone> <Description>Test description CASE object</Description> <CaseTestV3> <Subject>TestCase Agent-04</Subject> <SuppliedPhone>204</SuppliedPhone> <status>Failed</status> <Case_Id>4004</Case_Id> </CaseTestV3> </ContactTestV3> </AccountTestV3> </Response>

Do Mapping

[su_box title="The result on Message Monitoring" box_color="#2a8af0" title_color="#000000"]The data is displayed correctly. Because “AssetTestV3” has only 2 occurrences but “ContactTestV3” has 3 occurrences. So the “CaseTestV3” of “ContactTestV3” on index 3 cannot get data from “AssetTestV3”.[/su_box]

Filter Condition of Sibling and Uncle node Filter Sibling

[su_box title="Note" box_color="#F91113" title_color="#000000"]The condition value must be unique. If the condition is not unique then run-time will display incorrect results.[/su_box]

<Response> <AccountTestV3> <AccountNumber>20001</AccountNumber> <Name>TestAccount1-SB</Name> <BillingCountry>Cambodia1</BillingCountry> <BillingCity>PhnomPenh1</BillingCity> <Account_ID>101</Account_ID> <Description>Test description ACCOUNT object</Description> <AssetTestV3> <AssetName>Test-Asset_01</AssetName> <Asset_ID>10</Asset_ID> <Description>Test description ASSET object</Description> <Quantity>2.3412</Quantity> <SerialNumber>AS-000121</SerialNumber> </AssetTestV3> <AssetTestV3> <AssetName>Test-Asset_02</AssetName> <Asset_ID>20</Asset_ID> <Description>Test description ASSET object</Description> <Quantity>2.3412</Quantity> <SerialNumber>AS-000122</SerialNumber> </AssetTestV3> <AssetTestV3> <AssetName>Test-Asset_03</AssetName> <Asset_ID>30</Asset_ID> <Description>Test description ASSET object</Description> <Quantity>2.3432</Quantity> <SerialNumber>AS-000123</SerialNumber> </AssetTestV3> <ContactTestV3> <Cont_ID>201</Cont_ID> <LastName>TestContact_01</LastName> <FirstName>DContact2</FirstName> <Email>Dtest.2019_201@gmail.com</Email> <Phone>301</Phone> <Description>Test description CONTACT object</Description> <CaseTestV3> <Subject>TestCase Agent-01</Subject> <SuppliedPhone>401</SuppliedPhone> <status>Failed</status> <Case_Id>2001</Case_Id> <Description>Test description CASE object</Description> </CaseTestV3> <CaseTestV3> <Subject>TestCase Agent-02</Subject> <SuppliedPhone>402</SuppliedPhone> <status>Failed</status> <Case_Id>2002</Case_Id> <Description>Test description CASE object</Description> </CaseTestV3> </ContactTestV3> </AccountTestV3> </Response>

Do Mapping

      [su_box title="Result of Message Monitoring " box_color="#2a8af0" title_color="#000000"]The result is correct. We get data from the field “AssetName” if “SerialNumber” equal “AS-000122”[/su_box]

 

Filter uncle

[su_box title="Note" box_color="#F91113" title_color="#000000"]The condition value must be unique. If the condition is not unique then run-time will display incorrect results. For the filter condition, we can not filter from the own node or from the parent node which does not make sense. [/su_box]

<Response> <AccountTestV3> <AccountNumber>20001</AccountNumber> <Name>TestAccount1-SB</Name> <BillingCountry>Cambodia1</BillingCountry> <BillingCity>PhnomPenh1</BillingCity> <Account_ID>101</Account_ID> <Description>Test description ACCOUNT object</Description> <AssetTestV3> <AssetName>Test-Asset_01</AssetName> <Asset_ID>10</Asset_ID> <Description>Test description ASSET object</Description> <Quantity>2.3412</Quantity> <SerialNumber>AS-000121</SerialNumber> </AssetTestV3> <AssetTestV3> <AssetName>Test-Asset_02</AssetName> <Asset_ID>20</Asset_ID> <Description>Test description ASSET object</Description> <Quantity>2.3412</Quantity> <SerialNumber>AS-000122</SerialNumber> </AssetTestV3> <AssetTestV3> <AssetName>Test-Asset_03</AssetName> <Asset_ID>30</Asset_ID> <Description>Test description ASSET object</Description> <Quantity>2.3432</Quantity> <SerialNumber>AS-000123</SerialNumber> </AssetTestV3> <ContactTestV3> <Cont_ID>201</Cont_ID> <LastName>TestContact_01</LastName> <FirstName>DContact2</FirstName> <Email>Dtest.2019_201@gmail.com</Email> <Phone>301</Phone> <Description>Test description CONTACT object</Description> <CaseTestV3> <Subject>TestCase Agent-01</Subject> <SuppliedPhone>401</SuppliedPhone> <status>Failed</status> <Case_Id>2001</Case_Id> <Description>Test description CASE object</Description> </CaseTestV3> <CaseTestV3> <Subject>TestCase Agent-02</Subject> <SuppliedPhone>402</SuppliedPhone> <status>Failed</status> <Case_Id>2002</Case_Id> <Description>Test description CASE object</Description> </CaseTestV3> </ContactTestV3> </AccountTestV3> </Response>

Do Mapping

We choose “CaseTestV3” as the master node to map to the Case object then take data from the field “AssetName” of node“AssetTestV3”     [su_box title="Note" box_color="#F91113" title_color="#000000"]To identify the node relationship, we start considering the first node map to the target object we can call this node the root node, and another node that maps to the target is called a master node.

[/su_box]

Filter Condition by Formula

Open this article in the interactive viewer →