Services Building
Overview
Describes a connection relationship between a system and a spatial structure element in which the system may have a connection with one or more different spatial structure elements.
Spatial structure elements include sites, buildings, building storeys and individual spaces. A system may be related to as many spatial structure elements as required by specifying multiple system/spatial structure element relationships.
In a services building connection, the system is referred to as the 'relating system' whilst the spatial structure elements being serviced are referred to as the 'related buildings' (note that the reference to buildings in the attribute relates to earlier versions of the IFC model where a system could only service occurrences of IfcBuilding ; from IFC 2x2, the relationship allows for servicing of occurrences of IfcSpatialStructureElement. The attribute name was retained for reasons of upward compatibility of IFC toolbox software) . There is always exactly one relating system and there may be one or many related buildings.
Results
Declares the connection between a system and spatial structure element
| Description | Entity/Pset/Functional Part | MAN | REC | OPT |
|---|---|---|---|---|
| Set the occurrence of the system entity in the relationship | IfcSystem | |||
|
IfcSystem.Name::IfcLabel | |||
| Set the occurrences of the spatial structure elements that will be serviced by the system | IfcSpatialStructureElement <subtypes> | |||
| Assert the relating system | IfcRelServicesBuildings.RelatingSystem::IfcSystem | |||
| Assert the related spatial structure elements | IfcRelServicesBuildings.RelatedBuildings::IfcSpatialStructureElement <subtypes> | |||
| Assert general attributes for the relationship | ||||
|
IfcRelServicesBuildings.GlobalId::IfcGloballyUniqueId | |||
|
IfcRelServicesBuildings.OwnerHistory::fp_apply_owner_history | |||
|
IfcRelServicesBuildings.Name::IfcLabel | |||
|
IfcRelServicesBuildings.Description::IfcText |
IFC Entities Required
- IfcGroup
- IfcObject
- IfcProduct
- IfcRelationsip
- IfcRelConnect
- IfcRelServicesBuildings
- IfcRoot
- IfcSpatialStructureElement
- IfcSystem
IFC Datatypes Required
- IfcElementCompositionEnum
- IfcGloballyUniqueId
- IfcLabel
- IfcText
IFC Functions Required
- -
IFC Property Sets Required
- -
IDM Functional Parts Required
- fp_apply_owner_history
- fp_place_object
- fp_represent_product
Note that fp_place_object and fp_represent_product are included in this schema as they represent attributes of IfcProduct. They are not however asserted within this functional part.
EXPRESS-G
EXPRESS Schema
SCHEMA FP_SERVICES_BUILDING;
TYPE IfcGloballyUniqueId = STRING (22) FIXED;
END_TYPE;
TYPE IfcLabel = STRING;
END_TYPE;
TYPE IfcText = STRING;
END_TYPE;
TYPE IfcElementCompositionEnum = ENUMERATION OF
(COMPLEX,
ELEMENT,
PARTIAL);
END_TYPE;
ENTITY IfcProduct
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcObject);
ObjectPlacement : OPTIONAL fp_place_object;
Representation : OPTIONAL fp_represent_product;
WHERE
WR1 : (EXISTS(Representation) AND EXISTS(ObjectPlacement))
OR (EXISTS(Representation) AND
(NOT('IFC2X2_FINAL.IFCPRODUCTDEFINITIONSHAPE' IN TYPEOF(Representation))))
OR (NOT(EXISTS(Representation)));
END_ENTITY;
ENTITY IfcObject
ABSTRACT SUPERTYPE OF (ONEOF(IfcGroup, IfcProduct))
SUBTYPE OF(IfcRoot);
ObjectType : OPTIONAL IfcLabel;
WHERE
WR1 : SIZEOF(QUERY(temp <* IsDefinedBy | 'IFC2X2_FINAL.IFCRELDEFINESBYTYPE' IN TYPEOF(temp))) <= 1;
END_ENTITY;
ENTITY IfcRoot
ABSTRACT SUPERTYPE OF (ONEOF(IfcObject, IfcRelationship));
GlobalId : IfcGloballyUniqueId;
Name : OPTIONAL IfcLabel;
Description : OPTIONAL IfcText;
OwnerHistory : fp_apply_owner_history;
UNIQUE
UR1 : GlobalId;
END_ENTITY;
ENTITY fp_apply_owner_history;
END_ENTITY;
ENTITY IfcSpatialStructureElement
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcProduct);
LongName : OPTIONAL IfcLabel;
CompositionType : IfcElementCompositionEnum;
INVERSE
ServicedBySystems : SET OF IfcRelServicesBuildings FOR RelatedBuildings;
WHERE
WR41 : (HIINDEX(SELF\IfcObject.Decomposes) = 1)
AND
('IFC2X2_FINAL.IFCRELAGGREGATES' IN TYPEOF(SELF\IfcObject.Decomposes[1]))
AND
(('IFC2X2_FINAL.IFCPROJECT' IN TYPEOF (SELF\IfcObject.Decomposes[1].RelatingObject)) OR
('IFC2X2_FINAL.IFCSPATIALSTRUCTUREELEMENT' IN TYPEOF (SELF\IfcObject.Decomposes[1].RelatingObject))
);
END_ENTITY;
ENTITY IfcRelConnects
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcRelationship);
END_ENTITY;
ENTITY IfcRelServicesBuildings
SUBTYPE OF(IfcRelConnects);
RelatingSystem : IfcSystem;
RelatedBuildings : SET [1:?] OF IfcSpatialStructureElement;
END_ENTITY;
ENTITY IfcSystem
SUBTYPE OF(IfcGroup);
INVERSE
ServicesBuildings : SET [0:1] OF IfcRelServicesBuildings FOR RelatingSystem;
WHERE
WR1 : SIZEOF (QUERY (temp <* SELF\IfcGroup.IsGroupedBy.RelatedObjects | NOT('IFC2X2_FINAL.IFCELEMENT' IN TYPEOF(temp)))) = 0;
END_ENTITY;
ENTITY IfcGroup
SUBTYPE OF(IfcObject);
END_ENTITY;
ENTITY fp_place_object;
END_ENTITY;
ENTITY fp_represent_product;
END_ENTITY;
ENTITY IfcRelationship
SUBTYPE OF(IfcRoot);
END_ENTITY;
END_SCHEMA;