bSI-InfraRoom / IFC-Specification

IfcDoc baseline to produce the documentation
24 stars 25 forks source link

CT Port Nesting #305

Open SergejMuhic opened 2 years ago

SergejMuhic commented 2 years ago

The IfcRelNests.RelatingObject attribute requires a RuleID.

IfcDistributionElement.Name has to be from the terminal unit to the stream. One link up should be the goal.

billeast commented 2 years ago

Several types of information are needed by FM staff to efficiently operate the delivered project. The first type of information is the source of electrical power for the IfcElement. This source would be identified by the upstream electrical distribution panel (or switch gear) and the circuit number. The second type of information is the upstream cut-off valves for hydronic fluid. Two types of cut-off values are typically identified a "hot feed" and "cold feed". Another type of connection that may or may not be contained in a design model is that of the connection between a controlled object and it's controller. If these ports are available, as they should be in IFC 4.3, then some of the following required data should be available by upstream traversal of ifcPorts.

An initial mapping of the required information is found below:

FluidHotFeedName IsNestedBy[0].RelatedObjects[0].ConnectedTo[0].RelatedPort.Nests[0].RelatingObject where RelatedObjects[0].SystemType is “HEATING” and RelatedObjects[0].FlowDirection is “SINK” and RelatedPort is “SOURCE” recursively until RelatingObject.is_a(“IfcEnergyConversionDevice”) and RelatingObject.is_nota(“IfcCooledBeam”), then RelatingObject.Name

FluidColdFeedName IsNestedBy[0].RelatedObjects[0].ConnectedTo[0].RelatedPort.Nests[0].RelatingObject where RelatedObjects[0].SystemType is “CHILLEDWATER” and RelatedObjects[0].FlowDirection is “SINK” and RelatedPort is “SOURCE” recursively until RelatingObject.is_a(“IfcEnergyConversionDevice”) and RelatingObject.is_nota(“IfcCooledBeam”), then RelatingObject.Name

ElectricPanelName IsNestedBy[0].RelatedObjects[0].ConnectedTo[0].RelatedPort.Nests[0].RelatingObject where RelatedObjects[0].SystemType is “ELECTRICAL” and RelatedObjects[0].FlowDirection is “SINK” and RelatedPort is “SOURCE” recursively until RelatingObject.is_a(“IfcElectricDistributionBoard”), then RelatingObject.Name

ElectricCircuitName HasPropertySets[0].HasProperties[0].NominalValue where HasPropertySets.Name is “FMH_Element” and HasProperties.Name is “ElectricCircuitName” ControlledByName IsNestedBy[0].RelatedObjects[0].ConnectedTo[0].RelatedPort.Nests[0].RelatingObject where RelatedObjects[0].FlowDirection is “SINK” and RelatedPort is “SOURCE” recursively until RelatingObject.is_a(“IfcDistributionControlElement”), then RelatingObject.Name

InterlockedWithName IsNestedBy[0].RelatedObjects[0].ConnectedTo[0].RelatedPort.Nests[0].RelatingObject where RelatedObjects[0].FlowDirection is “SINK” and RelatedPort is “SOURCE” recursively until RelatingObject.is_in_allowed_ifc_type_objects(), then RelatingObject.Name