Reltio Connect

 View Only
  • 1.  RIH Reltio App: Filter by Lower Level Attribute

    Posted 9 days ago

    In the RIH Reltio App I am trying to filter records by an attribute value.  The example filter in the app is "(equals(startObject,'entities/1')" and this syntax works if the attribute you are wanting to filter by is on the top level but what is the syntax for filtering lower level attributes?  For example, how would I filter to return only those records where the crosswalks type value is 'configuration/sources/Reltio'?



    ------------------------------
    Chris McCabe
    Clinician Nexus
    ------------------------------


  • 2.  RE: RIH Reltio App: Filter by Lower Level Attribute

    Reltio Employee
    Posted 9 days ago

    Hi Chris, 

    Assuming, you want to search for all entities which have a 'Reltio' Crosswalk, you can use the the following filter. to achieve this in RIH 

    equals(sourceSystems,'Reltio')

    So, the same filters that you can use in entity search API, can be used in the RIH entity search action as well. This documentation - https://docs.reltio.com/en/explore/get-going-with-apis-and-rocs-utilities/reltio-rest-apis/model-apis/entities-api/get-entity/filtering-entities will give you some more clarity on different filter conditions that can be used. 



    ------------------------------
    Diparnab Dey
    Technical Consultant
    Reltio
    Kolkata, West Bengal
    ------------------------------



  • 3.  RE: RIH Reltio App: Filter by Lower Level Attribute

    Posted 8 days ago

    Thank you for the response.  The search source system worked.  One scenario I am trying to query is to filter by a nested attribute.  Below is a sample JSON where the value I want to filter for is highlighted.  I try the following syntaxes but none returned any data:

    equals(attributes.SCH_Organization_Classification.value.SCH_Organization_Classification_Level_1.value,'Health System')

    equals(attributes.SCH_Organization_Classification.SCH_Organization_Classification_Level_1.value,'Health System')

    equals(attributes.SCH_Organization_Classification.SCH_Organization_Classification_Level_1,'Health System')

    Sample Data

    {
        "records": [
            {
                "uri": "entities/129QcP9u",
                "type": "configuration/entityTypes/HCO",
                "createdBy": "reltio_integration_stage",
                "createdTime": "2024-04-23T16:49:24.601999+00:00",
                "updatedBy": "reltio_integration_stage",
                "updatedTime": "2024-04-23T16:49:24.601999+00:00",
                "attributes": {
                    "SCH_Organization_Classification": [
                        {
                            "label": "Health System | Multiple Hospital System |",
                            "value": {
                                "SCH_Organization_Classification_Level_1": [
                                    {
                                        "type": "configuration/entityTypes/HCO/attributes/SCH_Organization_Classification/attributes/SCH_Organization_Classification_Level_1",
                                        "ov": true,
                                        "value": "Health System",
                                        "lookupCode": "HEALTH_SYSTEM_",
                                        "lookupRawValue": "1",
                                        "uri": "entities/129QcP9u/attributes/SCH_Organization_Classification/3V9ScV8Q6/SCH_Organization_Classification_Level_1/3V9ScVCgM"
                                    }



    ------------------------------
    Chris McCabe
    Clinician Nexus
    ------------------------------



  • 4.  RE: RIH Reltio App: Filter by Lower Level Attribute
    Best Answer

    Reltio Employee
    Posted 8 days ago

    Hi Chris,

    When we are performing the search, we don't need to add the .value .  Instead, if you use the search criteria as 
    equals(attributes.<Nest_parent_attr_name>.<Nest_child_attr_name>,'Value you want to search')

    So, the third input that you used is the correct one 

    equals(attributes.SCH_Organization_Classification.SCH_Organization_Classification_Level_1,'Health System')

    However, the reason why the search is not working for you even with the above condition is that the attribute that you are searching with is a lookup attribute. And in Reltio API, for lookup attributes, Reltio expects the lookup code to be passed for the search and not the lookup value. When you search from the UI, this reverse transcode is automatically done under the hood. 

    Change your filter criteria to the below in your RIH recipe, it should work and return the data

    equals(attributes.SCH_Organization_Classification.SCH_Organization_Classification_Level_1,'HEALTH_SYSTEM_')

    Let me know if you are still facing the issue or have a follow up question. 



    ------------------------------
    Diparnab Dey
    Technical Consultant
    Reltio
    Kolkata, West Bengal
    ------------------------------



  • 5.  RE: RIH Reltio App: Filter by Lower Level Attribute

    Posted 8 days ago

    That worked.  Thank you for the assistance.



    ------------------------------
    Chris McCabe
    Clinician Nexus
    ------------------------------