Skip to main content
Version: v5.1

Path discovery

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"
}