Model Distribution Port (FP)
Provides information concerning distribution ports.
A port is a logical mechanism that is used to enable an element to connect to another element. A distribution port is a type of port that is used for connecting together distribution flow elements such as ductwork elements, pipework elements and electrical distribution elements.
A distribution element may have one or more points at which it connects to other elements. A distribution port is located at a point where a connection can occur. The location of the port is determined in the context of the local coordinate system of the element to which it belongs.
A port is defined as belonging to a particular element through a port to element connection relationship.
The information that is captured concerning a distribution port includes:
- Specification of port name and description if required
- Placement of the port in the context of the local coordinate system of the element to which it belongs
- The port may be assigned a shape representation; for a distribution system this would typically be a point.
- Specification of the relationship between the port and the element for which it provides a connection opportunity
- The direction of flow through the port
- The number of the port in the context of the element
- The type of connection made at the port
Note that in use, the port will be defined according to the type of system in which it is used. This usage defines properties (within particular property sets) that can be applied. The type of system may be set as a parameter in the exchange requirement by:
fp_model_distribution_port [duct] fp_model_distribution_port [pipe] fp_model_distribution_port [cable] fp_model_distribution_port [cablecarrier]

Results
Model of ports and identification of the element to which ports belong
| Description | Entity/Pset/Functional Part | MAN | REC | OPT |
|---|---|---|---|---|
| Determine the element to which the port is assigned This will be a subtype of IfcDistributionElement |
IfcElement (subtype) | |
||
| Model the port occurrence | ||||
| Set the global unique identifier | IfcDoorStyle.GlobalId -> IfcGloballyUniqueId | |
||
| Apply the owner history | IfcDoorStyle.OwnerHistory -> fp_apply_owner_history | |
||
| Specify a name for the distribution port | IfcDistributionPort.Name | |
||
| Specify a description for the distribution port | IfcDistributionPort.Description | |
||
| Place the port in the context of the element | IfcDistributionPort.ObjectPlacement -> fp_place_object | |
||
| Assign the flow direction of the distribution port Flow through a port may be defined as outward from the element (SOURCE), inward to the element (SINK), either outward or inward (SOURCEANDSINK) or left as not defined. Although this attribute is optional in the IFC model, it is recommended that it should be asserted. | IfcDistributionPort.FlowDirection -> IfcFlowDirectionEnum | |
||
| Establish the port connection relationship | ||||
| Make the port into the relating port of a connects port to element relationship | IfcRelConnectsPortToElement.RelatingPort -> IfcDistributionPort | |
||
| Make the element into the related element of a connects port to element relationship | IfcRelConnectsPortToElement.RelatedElement -> IfcElement (subtype) | |
||
| For a port in a ductwork element, set values in the property set Pset_ DistributionPortDuct as indicated below. | ||||
| Set the value for the port number The port number is defined in the context of the element according to local usage. For instance, for a tee element, the inlet port will be numbered 1, the outlet port will be numbered 2 and the branch distribution port will be numbered 3. | Pset_DistributionPortDuct.PortNumber -> IfcPropertySingleValue | |
||
| Set the connection type of the port The connection type defines the method by which the connection is made. | Pset_DistributionPortDuct.ConnectionType -> IfcPropertyEnumeratedValue | |
||
| For a port in a pipework element, set values in the property set Pset_ DistributionPortPipe as indicated below. | ||||
| Set the value for the port number The port number is defined in the context of the element according to local usage. For instance, for a tee element, the inlet port will be numbered 1, the outlet port will be numbered 2 and the branch distribution port will be numbered 3. | Pset_DistributionPortPipe.PortNumber -> IfcPropertySingleValue | |
||
| Set the connection type of the port The connection type defines the method by which the connection is made. | Pset_DistributionPortPipe.ConnectionType -> IfcPropertyEnumeratedValue | |
||
| For a port in an electrical distribution element, set values in the property set Pset_ DistributionPortCable as indicated below. | ||||
| Set the value for the port number The port number is defined in the context of the element according to local usage. For instance, for a tee element, the inlet port will be numbered 1, the outlet port will be numbered 2 and the branch distribution port will be numbered 3. | Pset_DistributionPortCable.PortNumber -> IfcPropertySingleValue | |
||
| Set the connection type of the port The connection type defines the method by which the connection is made. | Pset_DistributionPortCable.ConnectionType -> IfcPropertyEnumeratedValue | |
||
| Define the port to which the properties apply | fp_define_by_properties | |
- IFC Entities Required
- IfcDistributionPort
- IfcElement
- IfcObject
- IfcPort
- IfcProduct
- IfcRelationship
- IfcRelConnects
- IfcRelConnectsPortToElement
- IfcRoot
- IFC Datatypes Required
- IfcFlowDirectionEnum
- IfcGloballyUniqueId
- IfcIdentifier
- IfcLabel
- IfcText
- IFC Functions Required
- -
- IFC Property Sets Required
- Pset_DistributionPortDuct
- Pset_DistributionPortPipe
- IDM Functional Parts Required
- fp_apply_owner_history
- fp_define_by_properties
- fp_place_object
- fp_represent_product
EXPRESS-G

EXPRESS Schema
SCHEMA FP_MODEL_DISTRIBUTION_PORT;
TYPE IfcGloballyUniqueId = STRING (22) FIXED;
END_TYPE;
TYPE IfcIdentifier = STRING;
END_TYPE;
TYPE IfcLabel = STRING;
END_TYPE;
TYPE IfcText = STRING;
END_TYPE;
TYPE IfcFlowDirectionEnum = ENUMERATION OF
(SOURCE,
SINK,
SOURCEANDSINK,
NOTDEFINED);
END_TYPE;
ENTITY IfcProduct
ABSTRACT SUPERTYPE OF (ONEOF(IfcElement, IfcPort))
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
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 IfcRelationship
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcRoot);
END_ENTITY;
ENTITY IfcRelConnects
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcRelationship);
END_ENTITY;
ENTITY IfcElement
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcProduct);
Tag : OPTIONAL IfcIdentifier;
INVERSE
HasPorts : SET OF IfcRelConnectsPortToElement FOR RelatedElement;
END_ENTITY;
ENTITY IfcRelConnectsPortToElement
SUBTYPE OF(IfcRelConnects);
RelatingPort : IfcPort;
RelatedElement : IfcElement;
END_ENTITY;
ENTITY IfcPort
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcProduct);
INVERSE
ContainedIn : IfcRelConnectsPortToElement FOR RelatingPort;
END_ENTITY;
ENTITY fp_apply_owner_history;
END_ENTITY;
ENTITY fp_place_object;
END_ENTITY;
ENTITY fp_represent_product;
END_ENTITY;
ENTITY IfcDistributionPort
SUBTYPE OF(IfcPort);
FlowDirection : OPTIONAL IfcFlowDirectionEnum;
END_ENTITY;
ENTITY fp_define_by_properties;
END_ENTITY;
END_SCHEMA;