If your use case has a Space (Room) as a parent entity of multiple Zones, the CSV connector can accommodate this by default. The default Invert Space Zone Relationship setting (false) creates the relationship Zone->isPartOf->Room for Zones and Spaces mapped together in the same row.
Mapping Things to Multi-Zone Spaces
Thing located in parent Space
If each Thing is located in the parent Multi-Zone Space, this can be imported with one sheet. Here's an abridged example:
| spaceRefId | spaceName | spaceCode | zoneRefId | zoneName | zoneExactType | thingRefId |
|---|---|---|---|---|---|---|
| ROOM101 | Room 101 | 101 | HVACZONE01 | HVAC Zone 01 | HVAC_ZONE | VAV01 |
| ROOM101 | Room 101 | 101 | HVACZONE02 | HVAC Zone 02 | HVAC_ZONE | VAV02 |
This will create these relationships:
- VAV01->hasLocation->ROOM 101 and HVACZONE01->isPartOf->ROOM101
- VAV02->hasLocation->ROOM 101 and HVACZONE02->isPartOf->ROOM102
Thing located in a Space other than the parent
However, if each Thing feeding the Multi-Zone Space is located in some other Space -- not the parent Space of the HVAC Zone it feeds -- this use case can be accommodated with multiple imports to the same CSV connector.
The Advanced Config setting for Invert Space Zone Relationship should be false or left as default (blank) for each step. Executing each step in the order below is also important.
- First, import First import Things & Spaces (along with Building, Floors in each relevant row), where the Space is the actual location of the Thing. This creates the desired Thing→hasLocation→Space relationship.
- After setting the Thing's location, import Spaces & Zones, where the Spaces are the parent Spaces of each Zone. This creates the relationship Zone→isPartOf→Space and avoids mapping Things to Spaces where they aren't actually located.
- Finally, import Things & Zones. This creates the relationship Thing→feeds→Zone for each Zone that makes up the Multi-Zone Space.
Abridged Examples
First: Import Things & Spaces (leave Zone columns blank)
| spaceRefId | spaceName | spaceCode | ... | thingRefId | thingName | thingExactType |
|---|---|---|---|---|---|---|
| ROOM202 | Room 202 | 202 | VAV01 | Room 202 VAV | Variable_Air_Volume_Box | |
| ROOM205 | Room 205 | 202 | VAV02 | Room 205 VAV | Variable_Air_Volume_Box |
Second: Import Spaces & Zones (leave Thing columns blank)
| spaceRefId | spaceName | spaceCode | zoneRefId | zoneName | zoneExactType | thingRefId |
|---|---|---|---|---|---|---|
| ROOM101 | Room 101 | 101 | HVACZONE01 | HVAC Zone 01 | HVAC_ZONE | |
| ROOM101 | Room 101 | 101 | HVACZONE02 | HVAC Zone 02 | HVAC_ZONE |
Third: Import Things & Zones (leave Space columns blank)
| zoneRefId | zoneName | zoneExactType | thingRefId | thingName | thingExactType |
|---|---|---|---|---|---|
| HVACZONE01 | HVAC Zone 01 | HVAC_ZONE | VAV01 | Room 202 VAV | Variable_Air_Volume_Box |
| HVACZONE02 | HVAC Zone 02 | HVAC_ZONE | VAV02 | Room 205 VAV | Variable_Air_Volume_Box |
If you need further assistance, contact Mapped Support.