Skip to main content
Version: v4.5

Path discovery

Discover paths between related items#

In the following use case example of connected mechanical equipment in a named user collection, you can retrieve the path from one piece of equipment to a hop depth you define.

Figure: Path between mechanical equipment related items in the same collection

image

Sample query

{   "$findWithRelatedGraph": {       "start": {           "collectionDesc": {               "_userItemId": "1801ks-inv-_ba_elem_UKFFYde0He"           },           "query": {               "_id": "61d16a426190581d330013ec"           },           "options": {               "page": {},               "project": {                   "_id": 1,                   "dtCategory": 1,                   "dtType": 1               }           }       },       "to": {           "segments": [               {                   "relatedDesc": {                       "_userType": "sys_equipments"                   },                   "as": "sys",                   "minDepth": 5,                   "maxDepth": 5,                   "options": {                       "project": {                           "dtCategory": 1,                           "dtType": 1                       }                   }               }           ],           "as": "paths",           "response": "path",           "options": {               "page": {                   "_offset": 0               }           }       }   }}

Sample response

{    "_list": [        {            //The collection that contains the start node            "_uri": "/nameduseritems/61d16a416190581d330013e8",            "_name": "1801KS-INV-01-ZZ-M3-Z-0001_Federated_elements",            "_userType": "rvt_elements",            "_tipId": "61d16a416190581d330013e9",            "_versions": [ //The collection versions                {                    //start node collection tip version                    "_userItemDbId": "61d16a416190581d330013e8",                    "_relatedItems": {                        "_pageSize": 1,                        "_list": [                            {                                //start node collection projection                                "dtCategory": "Mechanical and Plumbing Equipment",                                "dtType": "Supply Air Grills & Diffusers",                                "paths": {                                    "_pageSize": 1,                                    "_list": [                                        {                                            //start node                                            "_userItemId": "1801ks-inv-_ba_elem_UKFFYde0He",                                            "_userItemVersionId": "61d16a416190581d330013e9",                                            "_id": "61d16a426190581d330013ed",                                            "_version": 1,                                            "child": { //first hop                                                "_userItemId": "1801ks-inv-_ba_elem_UKFFYde0He",                                                "_userItemVersionId": "61d16a416190581d330013e9",                                                "_id": "61d16a426190581d330013ee",                                                "_version": 1,                                                "child": { //second hop                                                    "_userItemId": "1801ks-inv-_ba_elem_UKFFYde0He",                                                    "_userItemVersionId": "61d16a416190581d330013e9",                                                    "_id": "61d16a426190581d330013ef",                                                    "_version": 1,                                                    "child": { //third hop                                                        "_userItemId": "1801ks-inv-_ba_elem_UKFFYde0He",                                                        "_userItemVersionId": "61d16a416190581d330013e9",                                                        "_id": "61d16a426190581d330013f0",                                                        "_version": 1,                                                        "child": { //fourth hop                                                            "_userItemId": "1801ks-inv-_ba_elem_UKFFYde0He",                                                            "_userItemVersionId": "61d16a416190581d330013e9",                                                            "_id": "61d16a426190581d330013f1",                                                            "_version": 1                                                        }                                                    }                                                }                                            }                                        }                                    ],                                    "_offset": 0,                                    "_total": 1                                },                                "_id": "61d16a426190581d330013ec"                            }                        ],                        "_offset": 0,                        "_total": 1                    },                    "_id": "61d16a416190581d330013e9",                    "_isTip": true,                    "_metadata": {                        "_updatedById": "f5cca02a-a515-48ed-aea2-37637376416a",                        "_createdAt": 1641114177806,                        "_createdById": "f5cca02a-a515-48ed-aea2-37637376416a",                        "_updatedAt": 1641114177806                    },                    "_version": 1                }            ],            "_irn": "itemsvc:nameduseritem:61d16a416190581d330013e8",            "_namespaces": [                "lnt_EvqksGPz"            ],            "_nextVersion": 2,            "_shortName": "1801KS-INV-_ba_elem",            "_tipVersion": 1,            "_versionsCount": 1,            "_itemClass": "NamedUserCollection",            "_userItemId": "1801ks-inv-_ba_elem_UKFFYde0He",            "_syncedAt": "Sun Jan 02 09:23:41 GMT 2022",            "_id": "61d16a416190581d330013e8",            "_description": "Elements in BA model",            "_metadata": {                "_updatedById": "f5cca02a-a515-48ed-aea2-37637376416a",                "_createdAt": 1641114177799,                "_createdById": "f5cca02a-a515-48ed-aea2-37637376416a",                "_updatedAt": 1641114177799            },            "_kind": "collection"        }    ],    "_referencedItems": { //projection of all RelatedItems in each hop, grouped by userItemId and versionId        "1801ks-inv-_ba_elem_UKFFYde0He": { //hops in this collection userItemId            "61d16a416190581d330013e9": { //hops in this versionId                "61d16a426190581d330013f0": {                    "dtCategory": "Mechanical and Plumbing Equipment",                    "dtType": "Attenuator - Duct Silencer",                    "_id": "61d16a426190581d330013f0"                },                "61d16a426190581d330013f1": {                    "dtCategory": "Mechanical and Plumbing Equipment",                    "dtType": "Heat Recovery Unit",                    "_id": "61d16a426190581d330013f1"                },                "61d16a426190581d330013ef": {                    "_id": "61d16a426190581d330013ef"                },                "61d16a426190581d330013ee": {                    "dtCategory": "Mechanical and Plumbing Equipment",                    "dtType": "Fire Damper",                    "_id": "61d16a426190581d330013ee"                },                "61d16a426190581d330013ed": {                    "_id": "61d16a426190581d330013ed"                }            }        }    },    "_time": "121ms"}