Page History
A Building Operating System exposes assets to third parties. These assets use relations and tags to describe their mutual interactions. To make it consistent between different sites Linksper defines standardized relations to help describe these interactions.
Below is a schema showing several types of assets (Equipment, Device, Model, Data) and some examples of their mutual relationships. It's only a small part of a complex system, not all the relations are represented.
The following is a very important side of Linksper data models. On the above schema, we can distinguish two types of relations:
- Direct relations (plain line). They are direct relations between assets and are exposed to third parties with a dedicated tag. The tag is in the source asset and named with a similar name to the relation plus a suffix "Ids". This is useful to jump from an asset to another. For example the asset "Chiller 1" will contain a direct tag "coolFeedsIds" with the AHU 01 identifier as a value (Every asset has a unique identifier)
- Generic relations (dashed line). They are used to assign an asset to a data model (remember data models contain assets). There is no a direct tag for generic relation (such as
isInIds) but there are dedicated tags from the data model itself. For example the second "Energy" Data asset will have several tags such as "floor":"Level 1" and "pointType":"Meter" because they implement the data model. Since it also has a direct relation with another Energy data point, it will contain a tag "isSubmeterOfIds" with the ascendant meter id.
Example on the left of direct relations transformed with a direct tag in every source asset and on the right of a mix between generic relations transformed as a tag and direct relations.
⠀
Relations from Equipment assets
Every relation described starts from an Equipment asset to another asset type
Relation | Source asset type | Source examples | Target asset type | Target examples | Related Hierarchy | Related tag |
---|---|---|---|---|---|---|
airFeeds | Equipment | AHU, Fan Coil Unit... | Equipment, Model (Space) | Fan Coil Unit, Space... | Air Distribution | airFeedsIds |
airCompFeeds | Equipment | Compressor | Equipment, Model (Space) | Compressed Air Circuit | Compressed Air Distribution | airCompFeedsIds |
airExtracts | Equipment | Air Extractor... | Equipment, Model (Space) | Space | Air Extraction | airExtractsIds |
coolFeeds | Equipment | Chiller, Cooling Circuit... | Equipment, Model (Space) | Terminal Units | Cooling Distribution | coolFeedsIds |
heatFeeds | Equipment | Boiler, Heating Circuit.... | Equipment, Model (Space) | Terminal Units | Heating Distribution | heatFeedsIds |
elecFeeds | Equipment | Switchboard, Power Distribution Panel | Equipment | Power Distribution Panel, Light | Electrical Distribution | elecFeedsIds |
waterFeeds | Equipment | Booster | Equipment | Water Circuit | Water Distribution | waterFeedsIds |
isSubEquipmentOf | Equipment | Locker, Switch | Equipment | Locker Bank, Computer Rack | -- | isSubEquipmentIds |
hasRelatedDevice | Equipment | Fan Coil Unit, Power Distribution Panel | Device | Room Controller, Meter | -- | hasRelatedDevicesIds |
operatesWith | Equipment | Room Sensor, Light... | Equipment | Light... | operatesWithIds |
⠀
Relations from Point assets
Relation | Source asset type | Source examples | Target asset type | Target examples | Related Hierarchy | Related tag |
---|---|---|---|---|---|---|
isSubmeterOf | Data | Energy data points | Data | Energy data points | Metering Distribution | isSubmeterOfIds |
dataFeeds | Data | Data point | Device | Gateways, Controllers, IO Module | Data Distribution | dataFeedsIds |
⠀
⠀
Relations from Device assets
Relation | Source asset type | Source examples | Target asset type | Target examples | Related Hierarchy | Related tag |
---|---|---|---|---|---|---|
xxxDataFeeds | Device | IoT Device | Device, Linksper Instance | Hub | Data Distribution | restIpDataFeedsIds |
⠀
⠀
Direct access to relations
Direct access to relations is usually not used from the API, Hierarchies are read instead (Each of them provides a specific point of view on a group of assets)
However this is entirely possible using the additional field "allRelations" parameter while using the GET /v1/explore/assets/{id} endpoint (Other relations from the ones described above will appear as well).