Objects may be composed into parts to indicate levels of detail, such as a building having multiple storeys, a framed wall having studs, or a task having subtasks. Composition may form a hierarchy of multiple levels, where an object must have a single parent, or if a top-level object then declared within the single project or a project library.
<?xml version="1.0" encoding="utf-8"?>
<ConceptTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" uuid="5098cd13-bf4b-473a-a846-a60f69e9b738" name="Object Composition" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
<SubTemplates>
<ConceptTemplate uuid="02eefcc6-b26c-4f20-9c7c-c30ae74eb9a9" name="Aggregation" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
<SubTemplates>
<ConceptTemplate uuid="56396e81-a5e7-5290-a13f-ed0aeaa6ec64" name="Alignment Aggregation To Project" applicableSchema="IFC4" applicableEntity="IfcAlignment">
<Rules>
<AttributeRule AttributeName="Decomposes">
<EntityRules>
<EntityRule EntityName="IfcRelAggregates">
<AttributeRules>
<AttributeRule AttributeName="RelatingObject">
<EntityRules>
<EntityRule EntityName="IfcProject" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule RuleID="AlignmentName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="16689487-8082-435e-893f-c73b4caf7a22" name="Complementary Data Composition" applicableSchema="IFC4" applicableEntity="IfcComplementaryData">
<Rules>
<AttributeRule RuleID="Decomposes" AttributeName="Decomposes">
<EntityRules>
<EntityRule EntityName="IfcRelAggregates">
<AttributeRules>
<AttributeRule RuleID="RelatingObject" AttributeName="RelatingObject">
<EntityRules>
<EntityRule EntityName="IfcComplementaryData">
<AttributeRules>
<AttributeRule RuleID="ElementName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="a7664693-8f92-465f-94eb-869a758ffe13" name="Complementary Data Decomposition" applicableSchema="IFC4" applicableEntity="IfcComplementaryData">
<Rules>
<AttributeRule RuleID="IsDecomposedBy" AttributeName="IsDecomposedBy">
<EntityRules>
<EntityRule EntityName="IfcRelAggregates">
<AttributeRules>
<AttributeRule RuleID="RelatedObjects" AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcComplementaryData">
<AttributeRules>
<AttributeRule RuleID="PartName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="ca0f65e2-3913-4fdb-8a09-0c5c7a0d5421" name="Element Composition" applicableSchema="IFC4" applicableEntity="IfcElement">
<Rules>
<AttributeRule RuleID="Decomposes" AttributeName="Decomposes">
<EntityRules>
<EntityRule EntityName="IfcRelAggregates">
<AttributeRules>
<AttributeRule RuleID="RelatingObject" AttributeName="RelatingObject">
<EntityRules>
<EntityRule EntityName="IfcElement">
<AttributeRules>
<AttributeRule RuleID="ElementName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="8a27c15a-c4ea-4ca9-8cce-7fbba1c9bce0" name="Element Decomposition" applicableSchema="IFC4" applicableEntity="IfcElement">
<Rules>
<AttributeRule RuleID="IsDecomposedBy" AttributeName="IsDecomposedBy">
<EntityRules>
<EntityRule EntityName="IfcRelAggregates">
<AttributeRules>
<AttributeRule RuleID="RelatedObjects" AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcElement">
<AttributeRules>
<AttributeRule RuleID="PartName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="8c0fd2f7-71bb-4e6e-8fdb-0c02b352f14a" name="Spatial Composition" applicableSchema="IFC4" applicableEntity="IfcSpatialElement">
<Rules>
<AttributeRule AttributeName="Decomposes">
<EntityRules>
<EntityRule EntityName="IfcRelAggregates">
<AttributeRules>
<AttributeRule RuleID="RelatingObject" AttributeName="RelatingObject">
<EntityRules>
<EntityRule EntityName="IfcProject">
<AttributeRules>
<AttributeRule RuleID="ProjectName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
<EntityRule EntityName="IfcSpatialElement">
<AttributeRules>
<AttributeRule RuleID="SpatialElementName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="667f8443-ecce-4a8d-a63f-931fab0453e0" name="Spatial Decomposition" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
<Rules>
<AttributeRule AttributeName="IsDecomposedBy">
<EntityRules>
<EntityRule EntityName="IfcRelAggregates">
<AttributeRules>
<AttributeRule RuleID="RelatedObjects" AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcSpatialElement">
<AttributeRules>
<AttributeRule RuleID="SpatialElementName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
</SubTemplates>
</ConceptTemplate>
<ConceptTemplate uuid="14891e19-2eaa-4641-8913-629bb9a60801" name="Element Projecting" applicableSchema="IFC4" applicableEntity="IfcElement">
<Rules>
<AttributeRule AttributeName="HasProjections">
<EntityRules>
<EntityRule EntityName="IfcRelProjectsElement">
<AttributeRules>
<AttributeRule AttributeName="RelatedFeatureElement">
<EntityRules>
<EntityRule EntityName="IfcProjectionElement">
<AttributeRules>
<AttributeRule AttributeName="PredefinedType">
<EntityRules>
<EntityRule EntityName="IfcProjectionElementTypeEnum" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="b9005e79-b5c5-4c0b-9d86-046c21ad420d" name="Element Voiding" applicableSchema="IFC4" applicableEntity="IfcElement">
<Rules>
<AttributeRule RuleID="HasOpenings" AttributeName="HasOpenings">
<EntityRules>
<EntityRule EntityName="IfcRelVoidsElement" />
</EntityRules>
</AttributeRule>
</Rules>
<SubTemplates>
<ConceptTemplate uuid="e2d1e67a-b584-476c-878e-132af9f8e2b8" name="Element Openings" applicableSchema="IFC4" applicableEntity="IfcElement">
<Rules>
<AttributeRule RuleID="HasOpenings" AttributeName="HasOpenings">
<EntityRules>
<EntityRule EntityName="IfcRelVoidsElement">
<AttributeRules>
<AttributeRule RuleID="RelatedOpeningElement" AttributeName="RelatedOpeningElement">
<EntityRules>
<EntityRule EntityName="IfcOpeningElement">
<AttributeRules>
<AttributeRule RuleID="OpeningElementType" AttributeName="PredefinedType">
<EntityRules>
<EntityRule EntityName="IfcOpeningElementTypeEnum" />
</EntityRules>
</AttributeRule>
<AttributeRule RuleID="FillsVoids" AttributeName="FillsVoids">
<EntityRules>
<EntityRule EntityName="IfcRelFillsElement">
<AttributeRules>
<AttributeRule RuleID="RelatedBuiltElement" AttributeName="RelatedBuildingElement">
<EntityRules>
<EntityRule EntityName="IfcDoor" />
<EntityRule EntityName="IfcWindow" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="5b37561e-5789-4f06-89b8-59a00a04376e" name="Element Voiding Features" applicableSchema="IFC4" applicableEntity="IfcElement">
<Rules>
<AttributeRule RuleID="HasOpenings" AttributeName="HasOpenings">
<EntityRules>
<EntityRule EntityName="IfcRelVoidsElement">
<AttributeRules>
<AttributeRule RuleID="RelatedVoidingFeature" AttributeName="RelatedOpeningElement">
<EntityRules>
<EntityRule EntityName="IfcVoidingFeature">
<AttributeRules>
<AttributeRule RuleID="VoidingFeatureType" AttributeName="PredefinedType">
<EntityRules>
<EntityRule EntityName="IfcVoidingFeatureTypeEnum" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="dbb05c46-12f4-4bdc-89f5-d7c9d5c075ce" name="Excavation Cuttings" applicableSchema="IFC4" applicableEntity="IfcElement">
<Rules>
<AttributeRule RuleID="HasOpenings" AttributeName="HasOpenings">
<EntityRules>
<EntityRule EntityName="IfcRelVoidsElement">
<AttributeRules>
<AttributeRule RuleID="RelatedEarthworksCut" AttributeName="RelatedOpeningElement">
<EntityRules>
<EntityRule EntityName="IfcExcavation">
<AttributeRules>
<AttributeRule RuleID="FillsVoids" AttributeName="FillsVoids">
<EntityRules>
<EntityRule EntityName="IfcRelFillsElement">
<AttributeRules>
<AttributeRule RuleID="RelatedBuiltElement" AttributeName="RelatedBuildingElement">
<EntityRules>
<EntityRule EntityName="IfcCourse" />
<EntityRule EntityName="IfcDeepFoundation" />
<EntityRule EntityName="IfcEarthworksFill" />
<EntityRule EntityName="IfcFooting" />
<EntityRule EntityName="IfcPavement" />
<EntityRule EntityName="IfcSlab" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
</SubTemplates>
</ConceptTemplate>
<ConceptTemplate uuid="d1e6b86e-7658-443c-b708-86b7dd8b12f4" name="Nesting" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
<Rules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests" />
</EntityRules>
</AttributeRule>
</Rules>
<SubTemplates>
<ConceptTemplate uuid="334e7f67-fd69-465f-b314-a2010a997465" name="Alignment Layout" applicableSchema="IFC4" applicableEntity="IfcAlignment">
<Rules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentHorizontal">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentSegment">
<AttributeRules>
<AttributeRule AttributeName="DesignParameters">
<EntityRules>
<EntityRule EntityName="IfcAlignmentHorizontalSegment" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
<EntityRule EntityName="IfcAlignmentVertical">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentSegment">
<AttributeRules>
<AttributeRule AttributeName="DesignParameters">
<EntityRules>
<EntityRule EntityName="IfcAlignmentVerticalSegment" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
<EntityRule EntityName="IfcAlignmentCant">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentSegment">
<AttributeRules>
<AttributeRule AttributeName="DesignParameters">
<EntityRules>
<EntityRule EntityName="IfcAlignmentCantSegment" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="bb43034c-7c71-5187-b8ee-c5d0c9266c6f" name="Alignment Layouts" applicableSchema="IFC4" applicableEntity="IfcAlignment">
<Rules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentHorizontal" />
<EntityRule EntityName="IfcAlignmentVertical" />
<EntityRule EntityName="IfcAlignmentCant" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
<SubTemplates>
<ConceptTemplate uuid="9f2220fe-98ec-5afd-82ff-3cd0b0bbcc02" name="Alignment Layout - Horizontal, Vertical and Cant" applicableSchema="IFC4" applicableEntity="IfcAlignment">
<Rules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentHorizontal">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentSegment">
<AttributeRules>
<AttributeRule AttributeName="DesignParameters">
<EntityRules>
<EntityRule EntityName="IfcAlignmentHorizontalSegment" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
<EntityRule EntityName="IfcAlignmentVertical">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentSegment">
<AttributeRules>
<AttributeRule AttributeName="DesignParameters">
<EntityRules>
<EntityRule EntityName="IfcAlignmentVerticalSegment" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
<EntityRule EntityName="IfcAlignmentCant">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentSegment">
<AttributeRules>
<AttributeRule AttributeName="DesignParameters">
<EntityRules>
<EntityRule EntityName="IfcAlignmentCantSegment" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="31c80d61-aa70-5fdc-a1e4-eb94e37885fa" name="Alignment Layout - Reusing Horizontal Layout" applicableSchema="IFC4" applicableEntity="IfcAlignment">
<Rules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentHorizontal">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentSegment">
<AttributeRules>
<AttributeRule AttributeName="DesignParameters">
<EntityRules>
<EntityRule EntityName="IfcAlignmentHorizontalSegment" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="IsDecomposedBy">
<EntityRules>
<EntityRule EntityName="IfcRelAggregates">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignment">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentVertical">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentSegment">
<AttributeRules>
<AttributeRule AttributeName="DesignParameters">
<EntityRules>
<EntityRule EntityName="IfcAlignmentVerticalSegment" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
<EntityRule EntityName="IfcAlignment">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentVertical">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentSegment">
<AttributeRules>
<AttributeRule AttributeName="DesignParameters">
<EntityRules>
<EntityRule EntityName="IfcAlignmentVerticalSegment" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
<EntityRule EntityName="IfcAlignmentCant">
<AttributeRules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAlignmentSegment">
<AttributeRules>
<AttributeRule AttributeName="DesignParameters">
<EntityRules>
<EntityRule EntityName="IfcAlignmentCantSegment" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
</SubTemplates>
</ConceptTemplate>
<ConceptTemplate uuid="fbf23658-a429-4480-9b41-5e805944781b" name="Element Nesting" applicableSchema="IFC4" applicableEntity="IfcElement">
<Rules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule RuleID="Type" AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcElement">
<AttributeRules>
<AttributeRule AttributeName="ObjectPlacement">
<EntityRules>
<EntityRule EntityName="IfcLocalPlacement" />
</EntityRules>
</AttributeRule>
<AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" />
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="38ca8788-5e47-411c-8294-d56f9e9a5691" name="Object Nesting" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
<Rules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule RuleID="Type" AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcObject" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" name="Port Nesting" applicableSchema="IFC4" applicableEntity="IfcDistributionElement">
<Rules>
<AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" />
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcDistributionPort">
<AttributeRules>
<AttributeRule RuleID="PortName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule RuleID="Flow" AttributeName="FlowDirection">
<EntityRules>
<EntityRule EntityName="IfcFlowDirectionEnum" />
</EntityRules>
</AttributeRule>
<AttributeRule RuleID="SystemType" AttributeName="SystemType">
<EntityRules>
<EntityRule EntityName="IfcDistributionSystemEnum" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="ObjectPlacement">
<EntityRules>
<EntityRule EntityName="IfcLocalPlacement">
<AttributeRules>
<AttributeRule AttributeName="RelativePlacement">
<EntityRules>
<EntityRule EntityName="IfcAxis2Placement3D">
<AttributeRules>
<AttributeRule AttributeName="Location">
<EntityRules>
<EntityRule EntityName="IfcCartesianPoint" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Axis">
<EntityRules>
<EntityRule EntityName="IfcDirection" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="RefDirection">
<EntityRules>
<EntityRule EntityName="IfcDirection" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="IsDeclaredBy" />
<AttributeRule AttributeName="PredefinedType">
<EntityRules>
<EntityRule EntityName="IfcDistributionPortTypeEnum" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="d56d815c-26a9-5877-992f-be25876deb54" name="Survey Elements Nesting" applicableSchema="IFC4" applicableEntity="IfcAnnotation">
<Rules>
<AttributeRule AttributeName="IsNestedBy">
<EntityRules>
<EntityRule EntityName="IfcRelNests">
<AttributeRules>
<AttributeRule AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcAnnotation">
<AttributeRules>
<AttributeRule AttributeName="PredefinedType">
<EntityRules>
<EntityRule EntityName="IfcAnnotationTypeEnum" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="PredefinedType">
<EntityRules>
<EntityRule EntityName="IfcAnnotationTypeEnum" />
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
</SubTemplates>
</ConceptTemplate>
<ConceptTemplate uuid="db1e5cb3-9a56-42c0-9633-90e92a89eff6" name="Surface Feature Adherence" applicableSchema="IFC4" applicableEntity="IfcElement">
<Rules>
<AttributeRule RuleID="HasSurfaceFeatures" AttributeName="HasSurfaceFeatures">
<EntityRules>
<EntityRule EntityName="IfcRelAdheresToElement">
<AttributeRules>
<AttributeRule RuleID="RelatedSurfaceFeatures" AttributeName="RelatedSurfaceFeatures">
<EntityRules>
<EntityRule EntityName="IfcSurfaceFeature">
<AttributeRules>
<AttributeRule RuleID="SurfaceFeatureName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="9fcc5a66-22a7-41ac-9328-31759845d152" name="Type Element Aggregation" applicableSchema="IFC4" applicableEntity="IfcElementType">
<Rules>
<AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" />
<AttributeRule AttributeName="IsDecomposedBy">
<EntityRules>
<EntityRule EntityName="IfcRelAggregates">
<AttributeRules>
<AttributeRule RuleID="RelatedObjects" AttributeName="RelatedObjects">
<EntityRules>
<EntityRule EntityName="IfcElement" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Decomposes" />
</Rules>
</ConceptTemplate>
</SubTemplates>
</ConceptTemplate>