<?xml version="1.0"?>
<mvdXML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" uuid="4ac062ff-21ea-4d91-a2a0-9f9c63b875e5" name="" status="sample" xsi:schemaLocation="http://www.buildingsmart-tech.org/mvd/XML/1.1 http://www.buildingsmart-tech.org/mvd/XML/1.1/mvdXML_V1.1_add1.xsd" xmlns="http://buildingsmart-tech.org/mvd/XML/1.1">
  <Templates>
    <ConceptTemplate uuid="805deb96-2684-4bc5-a9ad-3a29199dc023" name="Project Context" status="sample" applicableSchema="IFC4" applicableEntity="IfcContext">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>All project data sets shall contain a single <i>IfcProject</i> instance indicating overall context and a directory of objects contained within. The context definition may include:</p>
<ul>
 <li>the default units</li>
 <li>the geometric representation context for the shape representations</li>
 <li>the global positioning of the project coordinate system</li>
 <li>the reference to classification systems, or other external information sources, used</li>
 <li>the registry of object types and property templates used in the project context</li>
</ul>
]]></Body>
        </Definition>
      </Definitions>
      <Rules>
        <AttributeRule AttributeName="LongName">
          <EntityRules>
            <EntityRule EntityName="IfcLabel" />
          </EntityRules>
        </AttributeRule>
        <AttributeRule AttributeName="ObjectType">
          <EntityRules>
            <EntityRule EntityName="IfcLabel" />
          </EntityRules>
        </AttributeRule>
        <AttributeRule AttributeName="Phase">
          <EntityRules>
            <EntityRule EntityName="IfcLabel" />
          </EntityRules>
        </AttributeRule>
      </Rules>
      <SubTemplates>
        <ConceptTemplate uuid="ab1e2cfd-9f21-4f4a-b6af-cc26d84e45ac" name="Project Declaration" status="sample" applicableSchema="IFC4" applicableEntity="IfcContext">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>The project provides a directory of object types and property templates contained within using declaration relationships.</p>
<blockquote class="note">NOTE&nbsp; The actual object occurrences used within the context of a project, such as walls, beams, air outlets, are assigned to a spatial hierarchy that is linked to the project using the aggregation hierarchy. See concept <em>Spatial Decomposition</em> for linking a spatial structure to the project.</blockquote>
<blockquote class="history">HISTORY&nbsp; New concept template enabled by schema enhancements in IFC4.</blockquote>
]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="Declares">
              <EntityRules>
                <EntityRule EntityName="IfcRelDeclares">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedDefinitions" />
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="Phase">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="ObjectType">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="LongName">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="634e27f7-7edb-4e22-b8cc-25f1cdc765ce" name="Project Type Definitions" status="sample" applicableSchema="IFC4" applicableEntity="IfcContext">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Declaration of object types, such as element types utilized by the element occurrences within this project, within the context of the project. It provides a directory of all object types independently if and where they are used by object occurrences.</p>
<blockquote class="history">HISTORY&nbsp; New concept template enabled by schema enhancements in IFC4.</blockquote>
]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="RelatedTypes[Type]='IfcBeamType' AND RelatedTypes[Size]=3"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Declares">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelDeclares">
                      <AttributeRules>
                        <AttributeRule RuleID="RelatedTypes" AttributeName="RelatedDefinitions">
                          <EntityRules>
                            <EntityRule EntityName="IfcTypeObject" />
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Phase">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="ObjectType">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="LongName">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="4ccaac0c-88f8-4c1d-91fd-2214d0e513c4" name="Project Units" status="sample" applicableSchema="IFC4" applicableEntity="IfcContext">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>The project context includes the definition of the default units within the IFC data set. They are declared once for the context of the whole data set. Default units are those units that apply:</p>
<ul>
 <li>to all geometric representation items within the geometric representation contexts;</li>
 <li>to all attributes with a defined datatype indicating a measure datatype;</li>
 <li>to all properties and quantities with a defined datatype indicating a measure datatype and with no local unit definitions provided.</li>
</ul>
<p> Default units are defined as either:</p>
<ul>
 <li>SI Units with SI unit name and prefix</li>
 <li>Conversion based units with a conversion factor to its SI unit</li>
 <li>Derived units, consisting of one-to-many unit elements, being SI units or conversion based units</li>
 <li>Monetary unit as a special case of a unit to hold the currency name</li>
</ul>
<blockquote class="example">
EXAMPLE&nbsp; Meter is an SI unit without prefix, milli meter is an SI unit with prefix, inch and foot are conversion based units to be declared with a converstion factor to the SI unit (here meter), heat flux density (W/m2) is a derived unit with the unit elements Power (W) and Area (m2), and Euro is a monetary unit.
</blockquote>]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="HasUnits[Exists]=TRUE"/>
                <TemplateRule Parameters="SIUnitType[Value]='LENGTHUNIT' AND SIUnitName[Value]='METRE'"/>
                <TemplateRule Parameters="ConversionUnitType[Value]='PLANEANGLEUNIT' AND ConversionUnitName[Value]='degree'"/>
                <TemplateRule Parameters="DerivedUnitType[Value]='MASSDENSITYUNIT'"/>
</TemplateRules>]]></Body>
              <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="HasUnits" AttributeName="UnitsInContext">
              <EntityRules>
                <EntityRule EntityName="IfcUnitAssignment">
                  <AttributeRules>
                    <AttributeRule AttributeName="Units">
                      <EntityRules>
                        <EntityRule EntityName="IfcDerivedUnit">
                          <AttributeRules>
                            <AttributeRule RuleID="DerivedUnitType" AttributeName="UnitType">
                              <EntityRules>
                                <EntityRule EntityName="IfcDerivedUnitEnum" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Elements">
                              <EntityRules>
                                <EntityRule EntityName="IfcDerivedUnitElement">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Unit">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcNamedUnit" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="UserDefinedType">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                        <EntityRule EntityName="IfcMonetaryUnit">
                          <AttributeRules>
                            <AttributeRule AttributeName="Currency">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                        <EntityRule EntityName="IfcSIUnit">
                          <AttributeRules>
                            <AttributeRule RuleID="SIUnitType" AttributeName="UnitType">
                              <EntityRules>
                                <EntityRule EntityName="IfcUnitEnum" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Prefix">
                              <EntityRules>
                                <EntityRule EntityName="IfcSIPrefix" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="SIUnitName" AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcSIUnitName" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                        <EntityRule EntityName="IfcConversionBasedUnit">
                          <AttributeRules>
                            <AttributeRule AttributeName="Dimensions">
                              <EntityRules>
                                <EntityRule EntityName="IfcDimensionalExponents" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="ConversionUnitType" AttributeName="UnitType">
                              <EntityRules>
                                <EntityRule EntityName="IfcUnitEnum" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="ConversionUnitName" AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="ConversionFactor">
                              <EntityRules>
                                <EntityRule EntityName="IfcMeasureWithUnit" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                        <EntityRule EntityName="IfcConversionBasedUnitWithOffset">
                          <AttributeRules>
                            <AttributeRule AttributeName="Dimensions">
                              <EntityRules>
                                <EntityRule EntityName="IfcDimensionalExponents" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="UnitType">
                              <EntityRules>
                                <EntityRule EntityName="IfcUnitEnum" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="ConversionFactor">
                              <EntityRules>
                                <EntityRule EntityName="IfcMeasureWithUnit" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="ConversionOffset">
                              <EntityRules>
                                <EntityRule EntityName="IfcReal" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="Phase">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="ObjectType">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="LongName">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
        <ConceptTemplate uuid="38dac6f0-997c-4544-9bca-b6326b9a3e4b" name="Project Representation Context" status="sample" applicableSchema="IFC4" applicableEntity="IfcContext">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>A project representation context indicates the coordinate system orientation, direction of true north, 

precision, and other values that apply to all geometry within a project or project library. A main geometric representation context is created for 3D model, and 2D representations, both can be further refined using geometric representation sub contexts.</p>]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="RepresentationContexts">
              <EntityRules>
                <EntityRule EntityName="IfcGeometricRepresentationContext">
                  <AttributeRules>
                    <AttributeRule RuleID="ContextIdentifier" AttributeName="ContextIdentifier">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="ContextType" AttributeName="ContextType">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="Precision" />
                    <AttributeRule AttributeName="CoordinateSpaceDimension">
                      <EntityRules>
                        <EntityRule EntityName="IfcDimensionCount" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="WorldCoordinateSystem">
                      <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>
                    <AttributeRule AttributeName="TrueNorth">
                      <EntityRules>
                        <EntityRule EntityName="IfcDirection" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="HasSubContexts">
                      <EntityRules>
                        <EntityRule EntityName="IfcGeometricRepresentationSubContext">
                          <AttributeRules>
                            <AttributeRule RuleID="SubContextIdentifier" AttributeName="ContextIdentifier">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="SubContextType" AttributeName="ContextType">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="TargetScale">
                              <EntityRules>
                                <EntityRule EntityName="IfcPositiveRatioMeasure" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="TargetView">
                              <EntityRules>
                                <EntityRule EntityName="IfcGeometricProjectionEnum" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="UserDefinedTargetView">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="Phase">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="ObjectType">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="LongName">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="0c93e2c2-cb23-46a8-8b9a-c772c280fc26" name="Project Representation Context 3D" status="sample" applicableSchema="IFC4" applicableEntity="IfcContext">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The main geometric representation context that is created for 3D representations, it can be further refined using geometric representation sub contexts for specific 3D contexts.</p>
<blockquote class="note">NOTE&nbsp; The 3D shape representations with the representation identifier "Body" are linked to the 3D geometric representation subset with context identifier "Body" and context type "Model".</blockquote>]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="ContextIdentifier[Value]='Model' AND ContextType[Value]='Body' AND SubContextIdentifier[Value]='Model'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="RepresentationContexts">
                  <EntityRules>
                    <EntityRule EntityName="IfcGeometricRepresentationContext">
                      <AttributeRules>
                        <AttributeRule RuleID="ContextIdentifier" AttributeName="ContextIdentifier">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule RuleID="ContextType" AttributeName="ContextType">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="CoordinateSpaceDimension">
                          <EntityRules>
                            <EntityRule EntityName="IfcDimensionCount" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="WorldCoordinateSystem">
                          <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>
                        <AttributeRule AttributeName="TrueNorth">
                          <EntityRules>
                            <EntityRule EntityName="IfcDirection" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="HasSubContexts">
                          <EntityRules>
                            <EntityRule EntityName="IfcGeometricRepresentationSubContext">
                              <AttributeRules>
                                <AttributeRule AttributeName="TargetScale">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPositiveRatioMeasure" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="TargetView">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricProjectionEnum" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="UserDefinedTargetView">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="SubContextIdentifier" AttributeName="ContextIdentifier">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="SubContextType" AttributeName="ContextType">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                            <EntityRule EntityName="IfcGeometricRepresentationSubContext" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Precision" />
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Phase">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="ObjectType">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="LongName">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="d326800d-02e0-4442-84e7-b8fb4fde0400" name="Project Global Positioning" status="sample" applicableSchema="IFC4" applicableEntity="IfcContext">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Adding a geospatial coordinate reference, using an recognized coordinate reference system, to the geometric representation context. It allows to position the project coordinate system on earth (normally using eastings, northings, elevation about datum, and orientation).</p>
<blockquote class="history">HISTORY&nbsp; New concept template enabled by schema enhancements in IFC4.</blockquote>]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="HasGlobalPosition[Exists]=TRUE"/>
	<TemplateRule Parameters="CRSName[Value]=EPSG:5555"/>
	<!-- Other checking parameters: Eastings[Value], Northings[Value], OrthogonalHeight[Value], XaxisAbscissa[Value], XAxisOrdinate[Value] -->
</TemplateRules>]]></Body>
              <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="RepresentationContexts">
              <EntityRules>
                <EntityRule EntityName="IfcGeometricRepresentationContext">
                  <AttributeRules>
                    <AttributeRule RuleID="HasGlobalPosition" AttributeName="HasCoordinateOperation">
                      <EntityRules>
                        <EntityRule EntityName="IfcMapConversion">
                          <AttributeRules>
                            <AttributeRule RuleID="Eastings" AttributeName="Eastings">
                              <EntityRules>
                                <EntityRule EntityName="IfcLengthMeasure" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="Northings" AttributeName="Northings">
                              <EntityRules>
                                <EntityRule EntityName="IfcLengthMeasure" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="OrthogonalHeight" AttributeName="OrthogonalHeight">
                              <EntityRules>
                                <EntityRule EntityName="IfcLengthMeasure" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="XAxisAbscissa" AttributeName="XAxisAbscissa">
                              <EntityRules>
                                <EntityRule EntityName="IfcReal" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="XAxisOrdinate" AttributeName="XAxisOrdinate">
                              <EntityRules>
                                <EntityRule EntityName="IfcReal" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Scale">
                              <EntityRules>
                                <EntityRule EntityName="IfcReal" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="TargetCRS">
                              <EntityRules>
                                <EntityRule EntityName="IfcProjectedCRS">
                                  <AttributeRules>
                                    <AttributeRule RuleID="CRSName" AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="GeodeticDatum">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="VerticalDatum">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="MapProjection">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="MapZone">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="MapUnit">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcNamedUnit" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="Phase">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="ObjectType">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="LongName">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
        <ConceptTemplate uuid="818ca5a3-4574-49b1-9951-ae7bad5c3341" name="Project Classification Information" status="sample" applicableSchema="IFC4" applicableEntity="IfcContext">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Projects may define classification structures, which may be used to classify objects contained within the same project, or other referencing projects (incorporating the current project as <i>IfcProjectLibrary</i>).</p>
<p>The classification information can either be provided as an external classification reference, only refering to an <em>IfcClassification</em>, that holds the classification name, edition and a resource location, or to an <em>IfcClassification</em> containing the <em>IfcClassificationReference</em>'s as the classification notations, and thereby allowing to include the classification system structure within the exchange structure.</p>]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="ClassificationSource[Value]='DIN' AND ClassificationName[Value]='DIN 276'"/>
</TemplateRules>]]></Body>
              <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssociations">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesClassification">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingClassification">
                      <EntityRules>
                        <EntityRule EntityName="IfcClassification">
                          <AttributeRules>
                            <AttributeRule RuleID="ClassificationSource" AttributeName="Source">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="ClassificationName" AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="ReferenceTokens" AttributeName="ReferenceTokens">
                              <EntityRules>
                                <EntityRule EntityName="IfcIdentifier" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="HasReferences">
                              <EntityRules>
                                <EntityRule EntityName="IfcClassificationReference">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="HasReferences">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcClassificationReference" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Identification">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Sort">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="Phase">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="ObjectType">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="LongName">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="33e0be15-e301-4858-9f4b-18b2eb5488ba" name="Object Definition" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>The concept templates of <em>Object Definition</em> provides the means to define an object occurrence by its object type and attached property and quantity sets.</p>]]></Body>
        </Definition>
      </Definitions>
      <SubTemplates>
        <ConceptTemplate uuid="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" name="Object Typing" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Object occurrences can be defined by a particular object type, using the <em>Object Typing</em> concept. A pair of entities are defined for most semantic objects - an  object occurrence entity and a corresponding object type entity.</p> 
<blockquote class="example">EXAMPLE&nbsp; The <em>IfcTank</em> is the object occurrence entity that has a corresponding <em>IfcTankType</em> being the object type entity.</blockquote>
<p>On instance level, an object occurrence instance may have:</p>
<ul>
 <li>similar state as its object type instance by applying all characteristics defined at the type;</li>
 <li>overridden state for particular characteristics;</li>
 <li>no defined object type instance.</li>
</ul>
<p>Characteristics defined at the object type level may include:</p>
<ul>
 <li>common naming and predefined type;</li>
 <li>common properties within a type driven property set;</li>
 <li>common geometry representations, applied as mapped representation to each occurences;</li>
 <li>common material assignments (with exception of material set usages);</li>
 <li>common definition of a decomposition structure.</li>
</ul>
<p>Many object occurrence and object type entities have an attribute named <i>PredefinedType</i> consisting of a specific enumeration. Such predefined type essentially provides another level of inheritance to further differentiate objects without the need for additional entities. Predefined types are not just informational; various rules apply such as applicable property sets, part composition, and distribution ports. If the object is typed by an <i>IfcTypeObject</i>, then the <i>PredefinedType</i> at the <i>IfcObject</i> occurrence shall only be used if the <i>PredefinedType</i> at <i>IfcTypeObject</i> is set to <i>NOTDEFINED</i>.</p>
<blockquote class="example">EXAMPLE&nbsp; For scenarios of object types having part compositions, such parts may be reflected at object occurrences having separate state. For example, a <i>wall type</i> may define a particular arrangement of studs, a <i>wall occurrence</i> may reflect the same arrangement of studs, and studs within the wall occurrence may participate in specific relationships that do not exist at the type such as being connected to an electrical junction box.</blockquote>
<blockquote class="note">NOTE&nbsp; If the object type has aggregated elements, such objects are reflected at the object occurrence using the <em>IfcRelDefinesByObject</em> relationship.</blockquote>]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType[Type]='IfcBeamType' AND TypeName[Value]='IPE 120'"/>
</TemplateRules>  ]]></Body>
              <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="HasType" Description="*" AttributeName="IsTypedBy">
              <EntityRules>
                <EntityRule EntityName="IfcRelDefinesByType">
                  <AttributeRules>
                    <AttributeRule RuleID="RelatingType" AttributeName="RelatingType">
                      <EntityRules>
                        <EntityRule EntityName="IfcTypeObject">
                          <AttributeRules>
                            <AttributeRule RuleID="TypeName" AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="ApplicableOccurrence">
                              <EntityRules>
                                <EntityRule EntityName="IfcIdentifier" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="PredefinedType" />
          </Rules>
        </ConceptTemplate>
        <ConceptTemplate uuid="36984334-3ac8-4e59-85a6-f68d65e379c7" name="Property Sets" status="sample" applicableSchema="IFC4" applicableEntity="IfcRoot">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>The concept template <em>Property Sets</em> describes how sets of properties (usually defined by a name, value, unit triple) are associated to objects or object types.</p>]]></Body>
            </Definition>
          </Definitions>
          <SubTemplates>
            <ConceptTemplate uuid="f74255a6-0c0e-4f31-84ad-24981db62461" name="Property Sets for Objects" version="1" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The concept template <em>Property Sets for Objects</em> describes how an object occurrence can be related to a single or multiple property sets. A property set contains a single or multiple properties. The data types of  an individual property are single value, enumerated value,  bounded value, table value, reference value, list value, and combination of property occurrences.</p>
<p>Property sets can also be related to an object type, see concept <em>Property Sets for Types</em>. They then define the common properties for all occurrences of the same type. If the same property (by name) is provided by the same property set (by name), then the properties directly assigned to the object occurrence override the properties assigned to the object type.</p>
]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" />
                <AttributeRule AttributeName="IsDefinedBy">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelDefinesByProperties">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingPropertyDefinition">
                          <EntityRules>
                            <EntityRule EntityName="IfcPropertySet">
                              <AttributeRules>
                                <AttributeRule RuleID="PsetName" AttributeName="Name" />
                                <AttributeRule RuleID="Properties" AttributeName="HasProperties">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPropertySingleValue">
                                      <References>
                                        <Template ref="6655f6d0-29a8-47b8-8f3d-c9fce9c9a620" />
                                      </References>
                                    </EntityRule>
                                    <EntityRule EntityName="IfcPropertyBoundedValue">
                                      <References>
                                        <Template ref="3d67a2d2-761d-44d9-a09e-b7fbb1fa5632" />
                                      </References>
                                    </EntityRule>
                                    <EntityRule EntityName="IfcPropertyEnumeratedValue">
                                      <References>
                                        <Template ref="c148a099-c351-43a8-9266-5f3de0b45a95" />
                                      </References>
                                    </EntityRule>
                                    <EntityRule EntityName="IfcPropertyListValue">
                                      <References>
                                        <Template ref="8e10b688-9179-4e3a-8db2-6abcaafe952d" />
                                      </References>
                                    </EntityRule>
                                    <EntityRule EntityName="IfcPropertyTableValue">
                                      <References>
                                        <Template ref="35c947b0-6abc-4b13-8ec7-696ef2041721" />
                                      </References>
                                    </EntityRule>
                                    <EntityRule EntityName="IfcComplexProperty">
                                      <AttributeRules>
                                        <AttributeRule RuleID="PropertyName" AttributeName="Name" />
                                        <AttributeRule AttributeName="HasProperties">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcPropertySingleValue">
                                              <References IdPrefix="Complex">
                                                <Template ref="6655f6d0-29a8-47b8-8f3d-c9fce9c9a620" />
                                              </References>
                                            </EntityRule>
                                            <EntityRule EntityName="IfcPropertyBoundedValue">
                                              <References IdPrefix="Complex">
                                                <Template ref="3d67a2d2-761d-44d9-a09e-b7fbb1fa5632" />
                                              </References>
                                            </EntityRule>
                                            <EntityRule EntityName="IfcPropertyEnumeratedValue">
                                              <References>
                                                <Template ref="c148a099-c351-43a8-9266-5f3de0b45a95" />
                                              </References>
                                            </EntityRule>
                                            <EntityRule EntityName="IfcPropertyListValue" />
                                            <EntityRule EntityName="IfcPropertyTableValue" />
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="e26040e8-82e2-4f6a-bc63-ac8e6da2d0ae" name="Property Sets with Override" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The concept template <em>Property Sets with Override</em> extends the concept template <i>Property Sets for Objects</i> by allowing a property to be either provided at the individual object, or at the object type. If the same property (by name) is provided by the same property set (by name), then the property directly assigned to the object occurrence overrides the property assigned to the object type.</p>
]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[<TemplateRules operator="or">
                <TemplateRule Parameters="PsetName[Value]='Pset_BeamCommon' AND PropertyName[Value]='FireRating' AND Value[Value]='F30'"/>
                <TemplateRules operator="and">
                                <TemplateRule Parameters="TypePsetName[Value]='Pset_BeamCommon' AND TypePropertyName[Value]='FireRating' AND TypeValue[Value]='F30'"/>
                                <TemplateRules operator="nor">
                                                <TemplateRule Parameters="PsetName[Value]='Pset_BeamCommon' AND PropertyName[Value]='FireRating' AND Value[Exists]=TRUE"/>
                                </TemplateRules>
                </TemplateRules>
</TemplateRules>]]></Body>
                      <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" />
                    <AttributeRule AttributeName="IsDefinedBy">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelDefinesByProperties">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingPropertyDefinition">
                              <EntityRules>
                                <EntityRule EntityName="IfcPropertySet">
                                  <AttributeRules>
                                    <AttributeRule RuleID="PsetName" AttributeName="Name" />
                                    <AttributeRule RuleID="Properties" AttributeName="HasProperties">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcPropertySingleValue">
                                          <References>
                                            <Template ref="6655f6d0-29a8-47b8-8f3d-c9fce9c9a620" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcPropertyBoundedValue">
                                          <References>
                                            <Template ref="3d67a2d2-761d-44d9-a09e-b7fbb1fa5632" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcPropertyEnumeratedValue">
                                          <References>
                                            <Template ref="c148a099-c351-43a8-9266-5f3de0b45a95" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcPropertyListValue">
                                          <References>
                                            <Template ref="8e10b688-9179-4e3a-8db2-6abcaafe952d" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcPropertyTableValue">
                                          <References>
                                            <Template ref="35c947b0-6abc-4b13-8ec7-696ef2041721" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcComplexProperty">
                                          <AttributeRules>
                                            <AttributeRule RuleID="PropertyName" AttributeName="Name" />
                                            <AttributeRule AttributeName="HasProperties">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcPropertySingleValue">
                                                  <References>
                                                    <Template ref="6655f6d0-29a8-47b8-8f3d-c9fce9c9a620" />
                                                  </References>
                                                </EntityRule>
                                                <EntityRule EntityName="IfcPropertyBoundedValue">
                                                  <References>
                                                    <Template ref="3d67a2d2-761d-44d9-a09e-b7fbb1fa5632" />
                                                  </References>
                                                </EntityRule>
                                                <EntityRule EntityName="IfcPropertyEnumeratedValue">
                                                  <References>
                                                    <Template ref="c148a099-c351-43a8-9266-5f3de0b45a95" />
                                                  </References>
                                                </EntityRule>
                                                <EntityRule EntityName="IfcPropertyListValue" />
                                                <EntityRule EntityName="IfcPropertyTableValue" />
                                              </EntityRules>
                                            </AttributeRule>
                                          </AttributeRules>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="IsTypedBy">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelDefinesByType">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingType">
                              <EntityRules>
                                <EntityRule EntityName="IfcTypeObject">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="HasPropertySets">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcPropertySet">
                                          <AttributeRules>
                                            <AttributeRule RuleID="TypePsetName" AttributeName="Name" />
                                            <AttributeRule RuleID="TypeProperties" AttributeName="HasProperties">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcPropertySingleValue">
                                                  <References IdPrefix="Type">
                                                    <Template ref="6655f6d0-29a8-47b8-8f3d-c9fce9c9a620" />
                                                  </References>
                                                </EntityRule>
                                                <EntityRule EntityName="IfcPropertyBoundedValue">
                                                  <References IdPrefix="Type">
                                                    <Template ref="3d67a2d2-761d-44d9-a09e-b7fbb1fa5632" />
                                                  </References>
                                                </EntityRule>
                                                <EntityRule EntityName="IfcPropertyEnumeratedValue">
                                                  <References IdPrefix="Type">
                                                    <Template ref="c148a099-c351-43a8-9266-5f3de0b45a95" />
                                                  </References>
                                                </EntityRule>
                                                <EntityRule EntityName="IfcPropertyListValue">
                                                  <References IdPrefix="Type">
                                                    <Template ref="8e10b688-9179-4e3a-8db2-6abcaafe952d" />
                                                  </References>
                                                </EntityRule>
                                                <EntityRule EntityName="IfcPropertyTableValue">
                                                  <References IdPrefix="Type">
                                                    <Template ref="35c947b0-6abc-4b13-8ec7-696ef2041721" />
                                                  </References>
                                                </EntityRule>
                                              </EntityRules>
                                            </AttributeRule>
                                          </AttributeRules>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="6652398e-6579-4460-8cb4-26295acfacc7" name="Quantity Sets" version="1" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[
<p>Any specialization of object can be related to multiple quantity set occurrences. A quantity set contains multiple quantity occurrences. The data type of quantity occurrence values are count, length, area, volume, weight, time, or a combination of quantities. Each quantity is defined by its name, value, and optionally a description and a formula.</p>
<p>The quantity set is expressed by instances of <em>IfcElementQuantity</em>, where the <em>Name</em> attribute determines the common designator of the quantity set. This specification contains a number of predefined quantity sets, a template definition is provided for each of them. The name of the template has to be used as the value of the <em>Name</em> attribute. The <em>MethodOfMeasurement</em> attribute specifies the method, by which the values of the individual quantities are calculated. For the quantity set templates included in this specification, the value of <em>MethodOfMeasurement</em> shall be "BaseQuantities".</p>]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="QsetName[Value]='Qto_BeamBaseQuantities' AND QuantityName[Value]='Length' AND LengthValue[Value]=2000"/>
</TemplateRules>]]></Body>
              <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="IsDefinedBy">
              <EntityRules>
                <EntityRule EntityName="IfcRelDefinesByProperties">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingPropertyDefinition">
                      <EntityRules>
                        <EntityRule EntityName="IfcElementQuantity">
                          <AttributeRules>
                            <AttributeRule RuleID="QsetName" AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Description">
                              <EntityRules>
                                <EntityRule EntityName="IfcText" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="MethodOfMeasurement">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="Quantities" AttributeName="Quantities">
                              <EntityRules>
                                <EntityRule EntityName="IfcQuantityLength">
                                  <References>
                                    <Template ref="dd8678e1-e300-4f70-9d63-e539db4bd11c" />
                                  </References>
                                </EntityRule>
                                <EntityRule EntityName="IfcQuantityArea">
                                  <References>
                                    <Template ref="65ac4747-6eff-437e-94e2-643fd4e3bf86" />
                                  </References>
                                </EntityRule>
                                <EntityRule EntityName="IfcQuantityVolume">
                                  <References>
                                    <Template ref="6491a3b0-b7e9-412a-8226-bcd91c2b0b0e" />
                                  </References>
                                </EntityRule>
                                <EntityRule EntityName="IfcQuantityWeight">
                                  <References>
                                    <Template ref="e1016e56-3c89-4f42-9679-07e1db3c0afb" />
                                  </References>
                                </EntityRule>
                                <EntityRule EntityName="IfcQuantityCount">
                                  <References>
                                    <Template ref="8aaeff32-572c-4f6a-ac64-e2151663cbf1" />
                                  </References>
                                </EntityRule>
                                <EntityRule EntityName="IfcQuantityTime">
                                  <References>
                                    <Template ref="43c4c050-04de-4b0f-9e43-708bd98201a8" />
                                  </References>
                                </EntityRule>
                                <EntityRule EntityName="IfcPhysicalComplexQuantity">
                                  <AttributeRules>
                                    <AttributeRule RuleID="QuantityName" AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="ComplexDiscrimination" AttributeName="Discrimination">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="ComplexQuantities" AttributeName="HasQuantities">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcQuantityLength">
                                          <References IdPrefix="PartOfComplex">
                                            <Template ref="dd8678e1-e300-4f70-9d63-e539db4bd11c" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcQuantityArea">
                                          <References IdPrefix="PartOfComplex">
                                            <Template ref="65ac4747-6eff-437e-94e2-643fd4e3bf86" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcQuantityVolume">
                                          <References IdPrefix="PartOfComplex">
                                            <Template ref="6491a3b0-b7e9-412a-8226-bcd91c2b0b0e" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcQuantityWeight">
                                          <References IdPrefix="PartOfComplex">
                                            <Template ref="e1016e56-3c89-4f42-9679-07e1db3c0afb" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcQuantityCount">
                                          <References IdPrefix="PartOfComplex">
                                            <Template ref="8aaeff32-572c-4f6a-ac64-e2151663cbf1" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcQuantityTime">
                                          <References IdPrefix="PartOfComplex">
                                            <Template ref="43c4c050-04de-4b0f-9e43-708bd98201a8" />
                                          </References>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="ccb45aa2-74e1-46e8-8e35-ca5e5d7cc9dd" name="Object Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcRoot">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>All entities having semantic significance derive from <i>IfcRoot</i>, where instances are identifiable within a data set using a compressed globally unique identifier (IFC-GUID). This identifier must never change during the lifetime of an object, which allows data to be merged, versioned, or referenced from other locations.</p>
<p>Resource-level instances (not deriving from <i>IfcRoot</i>) do not have any identity, such that two instances having identical state are considered equal. For example, if an object has coordinates described by an  <i>IfcCartesianPoint</i> instance, another object with the same coordinates may have a separate instance of <i>IfcCartesianPoint</i> or share the same instance; such difference is a matter of data storage optimization and does not imply any semantic relationship. This also implies that non-rooted instances may only exist if referenced by at least one rooted instance through either a direct attribute or inverse attribute, or following a chain of attribute references on instances.</p>
<p>The distinction between rooted and non-rooted (resource-level) entities achieves several goals:</p>
<ul class="ref">
 <li>File size may be reduced by interning (sharing) non-rooted data instances;</li>
 <li>Database retrieval may be more efficient by storing non-rooted data local to rooted data instances;</li>
 <li>Storage size may be reduced by avoiding IFC-GUID storage for items not requiring direct retrieval;</li>
 <li>Comparisons of differences may be done at a higher level where the context of such change is apparent;</li>
 <li>Implementations may treat non-rooted data instances as immutable for efficiency or simplified usage.</li>
</ul>]]></Body>
        </Definition>
      </Definitions>
      <SubTemplates>
        <ConceptTemplate uuid="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" name="Software Identity" status="sample" applicableSchema="IFC4" applicableEntity="IfcRoot">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>

An object needs to be identifiable for accurate processing by both human and automated processes. Identification may be through several attributes such as Identifcation, Name, Description or GUID. The GUID is compressed for the purpose of being exchanged within an IFC data set - the compressed GUID is refered to as "IFC-GUID". While the IFC-GUID is normally generated automatically and has to be persistent, the Identification may relate to other informal registers but should be unique within the set of objects of the same type. The Name and Description should allow any object to be identified in the context of the project or facility being modelled.
</p>

     
<p>

Various objects may have additional identifications that may be human-readable and/or may be structured through classification association.

 

Various file formats may use additional identifications of instances for serialization purposes, however there is no requirement or guarantee for such identifications to remain the same between revisions or across applications. For example, the IFC-SPF file format lists each instance with a 64-bit integer that is unique within the particular file.

</p>
]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="GUID" AttributeName="GlobalId">
              <EntityRules>
                <EntityRule EntityName="IfcGloballyUniqueId" />
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
        <ConceptTemplate uuid="b441c773-3fdc-42b6-a323-ad268dcd85f2" name="Revision Control" status="sample" applicableSchema="IFC4" applicableEntity="IfcRoot">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>

While objects may reflect a final state, they may also be continually revised over the course of a project

 lifecycle and reflect transient state. For scenarios of multiple users making updates to the same information,

 there is a concept of local copies of information based upon a shared repository supporting multiple users.

 Such shared repository is often referred to as a <i>model server</i>. A model server is similar in concept to a

 document revision server, but is able to identify changes declared on a per-object basis rather than inferring

 changes from differences in text. A model server has a concept of revisions on a per-project basis, where each

  revision consists of a set of changes to contained objects by a particular user at a particular time.

</p>

      

<p>

To support a model server scenario, each object may be marked with a <i>change action</i> indicating the object

 was added, modified, deleted, or has no change since the project was retrieved from the server at a particular

 revision sequence. Given an object's identity (IFC-GUID) and change action, the state of the object may be

 merged when submitted to a model server. An object is considered modified when any of its direct attributes change, attributes on a referenced resource

 definition (any entity not deriving from <i>IfcRoot</i>) change, items are added or removed from sets, or items

 are added, removed, or reordered within lists.</p>



<p>

For cases when multiple users make conflicting changes to the same objects, users may choose to keep their own

 changes, accept changes from others, merge both changes, or a combination thereof upon submitting to a server.

 Alternatively, to avoid such merge scenario and coordinate work, objects may be locked such that a particular

 user has exclusive access to read and/or write a particular object at the current time.</p>



<p>Project libraries may also be retrieved from model servers having particular revision, and potentially

 different server URI than the referencing Project. As a project may include multiple revisions of the same

 project library (a common scenario when multiple users are involved using libraries revised by others), the

 IfcRoot.ObjectIdentifier IFC-GUID is only valid within the scope of the referencing project, and a separate

 <i>library reference</i> identifies a project library based object within its originating model server.</p>

<p>

Finally, objects may also carry informational attributes indicating when an object was created, who, when, and

 what application was used to last modify an object, and who currently owns the object, potentially having

 exclusive use according to its lock state.

</p>
]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="OwnerHistory">
              <EntityRules>
                <EntityRule EntityName="IfcOwnerHistory">
                  <AttributeRules>
                    <AttributeRule AttributeName="OwningUser">
                      <EntityRules>
                        <EntityRule EntityName="IfcPersonAndOrganization">
                          <AttributeRules>
                            <AttributeRule AttributeName="ThePerson">
                              <EntityRules>
                                <EntityRule EntityName="IfcPerson">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Identification">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="FamilyName">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="GivenName">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="MiddleNames">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="PrefixTitles">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="SuffixTitles">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Roles">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcActorRole" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Addresses">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcTelecomAddress">
                                          <AttributeRules>
                                            <AttributeRule AttributeName="Purpose">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcAddressTypeEnum" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="TelephoneNumbers">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="FacsimileNumbers">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="ElectronicMailAddresses">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="WWWHomePageURL">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcURIReference" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="MessagingIDs">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcURIReference" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Description">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcText" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="UserDefinedPurpose">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" />
                                              </EntityRules>
                                            </AttributeRule>
                                          </AttributeRules>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="TheOrganization">
                              <EntityRules>
                                <EntityRule EntityName="IfcOrganization">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Identification">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Roles">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcActorRole" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Addresses">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcAddress" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Roles">
                              <EntityRules>
                                <EntityRule EntityName="IfcActorRole">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Role">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcRoleEnum" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="UserDefinedRole">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="OwningApplication">
                      <EntityRules>
                        <EntityRule EntityName="IfcApplication">
                          <AttributeRules>
                            <AttributeRule AttributeName="ApplicationDeveloper" />
                            <AttributeRule AttributeName="Version" />
                            <AttributeRule AttributeName="ApplicationFullName" />
                            <AttributeRule AttributeName="ApplicationIdentifier" />
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="State">
                      <EntityRules>
                        <EntityRule EntityName="IfcStateEnum" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="ChangeAction">
                      <EntityRules>
                        <EntityRule EntityName="IfcChangeActionEnum" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="CreationDate">
                      <EntityRules>
                        <EntityRule EntityName="IfcTimeStamp" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="LastModifiedDate">
                      <EntityRules>
                        <EntityRule EntityName="IfcTimeStamp" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="LastModifyingUser">
                      <EntityRules>
                        <EntityRule EntityName="IfcPersonAndOrganization" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="LastModifyingApplication">
                      <EntityRules>
                        <EntityRule EntityName="IfcApplication">
                          <AttributeRules>
                            <AttributeRule AttributeName="ApplicationDeveloper" />
                            <AttributeRule AttributeName="Version" />
                            <AttributeRule AttributeName="ApplicationFullName" />
                            <AttributeRule AttributeName="ApplicationIdentifier" />
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
        <ConceptTemplate uuid="c19ec186-9cfd-47fc-a4d4-9fb35008d04a" name="Object User Identity" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>An object may be labeled for human identification where the <i>Name</i> may indicate a well-known identifier. While there is no restriction on usage of such identifier, it is recommended the <i>Name</i> is unique within it's containing scope. Further guidance on usage is provided at specific entities; for example, for spaces, the <i>Name</i> may reflect a room number. An object may have a description provided via the <i>Description</i> attribute that provides further context in identifying or locating the object.</p>

<p>Specific subtypes introduce additional attributes for <em>User Identity</em>.</p>
<ul>
 <li>Spatial objects may be further identified via the <i>LongName</i> attribute. This value should generally correspond to building signage describing floor levels or rooms. While the <i>Name</i> attribute generally provides a coded or abbreviated identifier, the <i>LongName</i> provides a functional name for the location such as "Reception Area". See concept template <em>Spatial Element Occurrence Attributes</em></li>
 <li>Physical elements may be further identified via the <i>Tag</i> attribute. This is a human readable identifier such as an element or item number While there is no restriction on usage of such tags, it is recommended the <i>Tag</i> is unique within it's containing scope. See concept template <em>Element Occurrence Attributes</em></li>
</ul>]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="ObjectName[Value]='Beam_01'"/>
</TemplateRules> ]]></Body>
              <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="ObjectName" AttributeName="Name">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule RuleID="ObjectDescription" AttributeName="Description">
              <EntityRules>
                <EntityRule EntityName="IfcText" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="IsTypedBy">
              <EntityRules>
                <EntityRule EntityName="IfcRelDefinesByType">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingType">
                      <EntityRules>
                        <EntityRule EntityName="IfcTypeObject">
                          <AttributeRules>
                            <AttributeRule RuleID="TypeName" AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="TypeDescription" AttributeName="Description">
                              <EntityRules>
                                <EntityRule EntityName="IfcText" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
        <ConceptTemplate uuid="25248261-98df-4d0a-9364-5653575ca421" name="Object Predefined Type" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>
Many object occurrences have an
 attribute named <i>PredefinedType</i> being a specific
 enumeration. Such predefined
 type essentially provides another level of "classification by inheritance" to
 further differentiate objects without the need for
 additional sub types. Predefined types are not
 just informational; various rules apply such as applicable
 property
 sets, part composition, and distribution ports.Such predefined types are added by selecting the correct enumerator for the attribute <em>PredefinedType</em>. If a custom value is needed, the attribute <i>ObjectType</i> has to be used to define such custom type, whereas the <i>PredefinedType</i> is set to <i>USERDEFINED</i>.</p>

<p>The main attributes to be provided for a <em>Object Occurrence Predefined Type</em> are:</p>
<ul>

 
<li><em>PredefinedType</em>: holds the entity specific enumeration of predefined types to further classify the entity</li>

 
<li><em>ObjectType</em>: allows for a custom value, if no applicable enumerator can be found</li>

</ul>

 If the object is typed by an <i>IfcTypeObject</i>, then the <i>PredefinedType</i> at the <i>IfcObject</i> occurrence shall only be used if the <i>PredefinedType</i> at <i>IfcTypeObject</i> is set to <i>NOTDEFINED</i>.

]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[<TemplateRules operator="and">
  <TemplateRules operator="or">
	<!-- Other checking type attribute on object or occurrence -->
	<TemplateRule Parameters="PredefinedType[Value]='USERDEFINED' AND UserDefinedType[Value]='Aussteifung'"/>
      <TemplateRules operator="and">
          <TemplateRules operator="nor">
            <TemplateRule Parameters="PredefinedType[Value]='USERDEFINED' OR UserDefinedType[Value]='Aussteifung'"/>
          </TemplateRules>
          <TemplateRules operator="or">
             <TemplateRule Parameters="TypePredefinedType[Value]='USERDEFINED' AND TypeUserdefinedType[Value]='Aussteifung'"/>
          </TemplateRules>
      </TemplateRules>
  </TemplateRules>
</TemplateRules>]]></Body>
              <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="UserDefinedType" AttributeName="ObjectType">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" />
            <AttributeRule AttributeName="IsTypedBy">
              <EntityRules>
                <EntityRule EntityName="IfcRelDefinesByType">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingType">
                      <EntityRules>
                        <EntityRule EntityName="IfcTypeObject">
                          <AttributeRules>
                            <AttributeRule RuleID="TypeUserdefinedType" AttributeName="ElementType" />
                            <AttributeRule RuleID="TypePredefinedType" AttributeName="PredefinedType" />
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
        <ConceptTemplate uuid="73e34d23-ed0d-4afd-a87d-4da2df34466a" name="Object Occurrence Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcRoot">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Specific entities have additional attributes defined for describing common characteristics at occurrences.</p>]]></Body>
            </Definition>
          </Definitions>
          <SubTemplates>
            <ConceptTemplate uuid="9661dfc6-707f-49a8-8881-7142b07f3bb1" name="Spatial Element Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpatialElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Spatial objects may be further identified via the <i>LongName</i> attribute. This value should generally correspond to building signage describing floor levels or rooms. While the <i>Name</i> attribute generally provides a coded or abbreviated identifier, the <i>LongName</i> provides a functional name for the location such as "Reception Area". </p>]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="Name" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="LongName" AttributeName="LongName">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="f6c9eecc-f5fc-4096-a037-12c2cd4d9d97" name="Site Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcSite">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>A site may be located according to latitute, longitute, elevation, land title designation, and/or postal address.</p>]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="Name[Value]='SiteName'"/>
	<TemplateRule Parameters="LongName[Value]='LongSiteName'"/>
	<TemplateRule Parameters="Latitude[Value]=-33.85"/>
                <TemplateRule Parameters="Longitude[Value]=151.2"/>
                <TemplateRule Parameters="Elevation[Value]=58"/>
	<TemplateRule Parameters="HasAddress[Size]>0"/>
</TemplateRules>]]></Body>
                      <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule RuleID="LongName" AttributeName="LongName">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="Name" AttributeName="Name">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="CompositionType">
                      <EntityRules>
                        <EntityRule EntityName="IfcElementCompositionEnum" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="LandTitleNumber">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="Latitude" AttributeName="RefLatitude">
                      <EntityRules>
                        <EntityRule EntityName="IfcCompoundPlaneAngleMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="Longitude" AttributeName="RefLongitude">
                      <EntityRules>
                        <EntityRule EntityName="IfcCompoundPlaneAngleMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="Elevation" AttributeName="RefElevation">
                      <EntityRules>
                        <EntityRule EntityName="IfcLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="HasAddress" AttributeName="SiteAddress">
                      <EntityRules>
                        <EntityRule EntityName="IfcPostalAddress">
                          <AttributeRules>
                            <AttributeRule AttributeName="Purpose">
                              <EntityRules>
                                <EntityRule EntityName="IfcAddressTypeEnum" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Description">
                              <EntityRules>
                                <EntityRule EntityName="IfcText" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="InternalLocation">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="AddressLines">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="PostalBox">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Town">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Region">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="PostalCode">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Country">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="UserDefinedPurpose">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
                <ConceptTemplate uuid="40100f0d-dd58-47f3-899a-b6a5a6b4f572" name="Building Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcBuilding">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>A building may be located according to a postal address, and may indicate a baseline elevation and land elevation.</p>]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="Name[Value]='AEC3 Office'"/>
	<TemplateRule Parameters="LongName[Value]='AEC3 Office Building Munich'"/>
	<TemplateRule Parameters="HasAdress[Size]=1"/>
	<TemplateRule Parameters="AddressLines[Value]='Joseph-Wild-Str.13'"/>
	<TemplateRule Parameters="Town[Value]='München'"/>
	<TemplateRule Parameters="PostalCode[Value]='81829'"/>
	<TemplateRule Parameters="Country[Value]='D'"/>
</TemplateRules>]]></Body>
                      <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule RuleID="LongName" AttributeName="LongName">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="Name" AttributeName="Name">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="CompositionType">
                      <EntityRules>
                        <EntityRule EntityName="IfcElementCompositionEnum" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="ElevationOfRefHeight">
                      <EntityRules>
                        <EntityRule EntityName="IfcLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="ElevationOfTerrain">
                      <EntityRules>
                        <EntityRule EntityName="IfcLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="HasAddress" AttributeName="BuildingAddress">
                      <EntityRules>
                        <EntityRule EntityName="IfcPostalAddress">
                          <AttributeRules>
                            <AttributeRule AttributeName="Purpose">
                              <EntityRules>
                                <EntityRule EntityName="IfcAddressTypeEnum" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Description">
                              <EntityRules>
                                <EntityRule EntityName="IfcText" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="UserDefinedPurpose">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="InternalLocation">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="AddressLines" AttributeName="AddressLines">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="PostalBox">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="Town" AttributeName="Town">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Region">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="PostalCode" AttributeName="PostalCode">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="Country" AttributeName="Country">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
                <ConceptTemplate uuid="488c9bb2-3102-4b89-bd20-42aa7060ae08" name="Storey Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcBuildingStorey">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>A building storey may be indicate the elevation of the top surface of the floor slab, excluding any floor coverings. For storeys with raised or sunken areas, the elevation should reflect the largest area of the slab. For split-level buildings, each level should have it's own <i>IfcBuildingStorey</i>.</p>]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="Name[Value]='OG2'"/>
	<TemplateRule Parameters="LongName[Value]='Obergeschoss 2'"/>
	<TemplateRule Parameters="Elevation[Value]=10.0"/>
</TemplateRules>]]></Body>
                      <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule RuleID="LongName" AttributeName="LongName">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="Name" AttributeName="Name">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="CompositionType">
                      <EntityRules>
                        <EntityRule EntityName="IfcElementCompositionEnum" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="Elevation" AttributeName="Elevation">
                      <EntityRules>
                        <EntityRule EntityName="IfcLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
                <ConceptTemplate uuid="543a52a7-799c-4349-a0ba-04c3fc2914d3" name="Space Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpace">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>Space may be further described by their elevation including floor coverings.</p>]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="Name[Value]='OF-02.012'"/>
	<TemplateRule Parameters="LongName[Value]='Office 2.12'"/>
	<TemplateRule Parameters="TypeName[Value]='OF-02'"/>
	<TemplateRule Parameters="TypeLongName[Value]='Office OF-02'"/>
</TemplateRules>]]></Body>
                      <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule RuleID="LongName" AttributeName="LongName">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="Name" AttributeName="Name">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="CompositionType">
                      <EntityRules>
                        <EntityRule EntityName="IfcElementCompositionEnum" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="ElevationWithFlooring">
                      <EntityRules>
                        <EntityRule EntityName="IfcLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="IsTypedBy">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelDefinesByType">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingType">
                              <EntityRules>
                                <EntityRule EntityName="IfcSpaceType">
                                  <AttributeRules>
                                    <AttributeRule RuleID="TypeName" AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="TypeLongName" AttributeName="LongName">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
                <ConceptTemplate uuid="0541525d-d527-4edc-a326-e82c23c30c7d" name="Spatial Zone Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpatialZone">
                  <Rules>
                    <AttributeRule RuleID="Name" AttributeName="Name">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="LongName" AttributeName="LongName">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="IsTypedBy">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelDefinesByType">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingType">
                              <EntityRules>
                                <EntityRule EntityName="IfcSpatialZoneType">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="LongName">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="8042f661-d4d7-4e93-a506-6d04a405d05a" name="System Element Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcSystem">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Systems may be further identified via the <i>LongName</i> attribute. This value should generally correspond to readable names for systems. While the <i>Name</i> attribute generally provides a coded or abbreviated identifie, like "HW", the <i>LongName</i> provides a functional name for the system such as "Hot water system". </p>]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="Name" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="LongName" AttributeName="LongName" />
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="037ad90d-348e-42c0-a85b-ad0d5383f598" name="Element Occurrence Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Physical elements may be further identified via the <i>Tag</i> attribute. This is a human readable identifier such as an element or item number While there is no restriction on usage of such tags, it is recommended the <i>Tag</i> is unique within it's containing scope. </p>]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Tag">
                  <EntityRules>
                    <EntityRule EntityName="IfcIdentifier" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="1e5da429-cf7c-4f23-8b32-53ad98e238ad" name="Door Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcDoor">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>Doors may be further described by their size and operation type.</p>]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[<TemplateRules operator="and">
  <TemplateRules operator="or">
	<TemplateRule Parameters="OperationType[Value]='SINGLE_SWING_LEFT'"/>
      <TemplateRules operator="and">
       	<TemplateRule Parameters="OperationType[Exits]=FALSE"/>
        	<TemplateRule Parameters="TypeOperationType[Value]='SINGLE_SWING_LEFT' "/>
      </TemplateRules>
  </TemplateRules>
  <TemplateRule Parameters="OverallHeight[Value]=2.20"/>
  <TemplateRule Parameters="OverallWidth[Value]=1.10"/>
</TemplateRules>]]></Body>
                      <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Tag">
                      <EntityRules>
                        <EntityRule EntityName="IfcIdentifier" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="OverallHeight" AttributeName="OverallHeight">
                      <EntityRules>
                        <EntityRule EntityName="IfcPositiveLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="OverallWidth" AttributeName="OverallWidth">
                      <EntityRules>
                        <EntityRule EntityName="IfcPositiveLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="OperationType" AttributeName="OperationType">
                      <EntityRules>
                        <EntityRule EntityName="IfcDoorTypeOperationEnum" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="UserDefinedOperationType">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="IsTypedBy">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelDefinesByType">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingType">
                              <EntityRules>
                                <EntityRule EntityName="IfcDoorType">
                                  <AttributeRules>
                                    <AttributeRule RuleID="TypeOperationType" AttributeName="OperationType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcDoorTypeOperationEnum" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="UserDefinedOperationType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="HasPropertySets">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcDoorLiningProperties">
                                          <AttributeRules>
                                            <AttributeRule AttributeName="LiningDepth" />
                                            <AttributeRule AttributeName="LiningThickness" />
                                            <AttributeRule AttributeName="ThresholdDepth" />
                                            <AttributeRule AttributeName="ThresholdThickness" />
                                            <AttributeRule AttributeName="TransomThickness" />
                                            <AttributeRule AttributeName="TransomOffset" />
                                            <AttributeRule AttributeName="LiningOffset" />
                                            <AttributeRule AttributeName="ThresholdOffset" />
                                            <AttributeRule AttributeName="CasingThickness" />
                                            <AttributeRule AttributeName="CasingDepth" />
                                            <AttributeRule AttributeName="LiningToPanelOffsetX" />
                                            <AttributeRule AttributeName="LiningToPanelOffsetY" />
                                          </AttributeRules>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcDoorPanelProperties">
                                          <AttributeRules>
                                            <AttributeRule AttributeName="PanelDepth">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcPositiveLengthMeasure" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="PanelOperation">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcDoorPanelOperationEnum" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="PanelWidth">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="PanelPosition">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcDoorPanelPositionEnum" />
                                              </EntityRules>
                                            </AttributeRule>
                                          </AttributeRules>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
                <ConceptTemplate uuid="f80dd8bf-fc59-4138-aa05-5ed02c4b6be2" name="Window Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcWindow">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>Windows may be further described by their size and partitioning type.</p>]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[<TemplateRules operator="and">
  <TemplateRules operator="or">
	<TemplateRule Parameters="PartitioningType[Value]='DOUBLE_PANEL_VERTICAL'"/>
      <TemplateRules operator="and">
       	<TemplateRule Parameters="PartitioningType[Exits]=FALSE"/>
        	<TemplateRule Parameters="TypePartitioningType[Value]='DOUBLE_PANEL_VERTICAL'"/>
      </TemplateRules>
  </TemplateRules>
  <TemplateRule Parameters="OverallHeight[Value]=2.50"/>
  <TemplateRule Parameters="OverallWidth[Value]=1.75"/>
</TemplateRules>]]></Body>
                      <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Tag">
                      <EntityRules>
                        <EntityRule EntityName="IfcIdentifier" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="OverallHeight" AttributeName="OverallHeight">
                      <EntityRules>
                        <EntityRule EntityName="IfcPositiveLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="OverallWidth" AttributeName="OverallWidth">
                      <EntityRules>
                        <EntityRule EntityName="IfcPositiveLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule RuleID="PartitioningType" AttributeName="PartitioningType">
                      <EntityRules>
                        <EntityRule EntityName="IfcWindowTypePartitioningEnum" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="UserDefinedPartitioningType">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="IsTypedBy">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelDefinesByType">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingType">
                              <EntityRules>
                                <EntityRule EntityName="IfcWindowType">
                                  <AttributeRules>
                                    <AttributeRule RuleID="TypePartitioningType" AttributeName="PartitioningType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcWindowTypePartitioningEnum" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="UserDefinedPartitioningType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="HasPropertySets">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcWindowLiningProperties">
                                          <AttributeRules>
                                            <AttributeRule AttributeName="LiningDepth" />
                                            <AttributeRule AttributeName="LiningThickness" />
                                            <AttributeRule AttributeName="TransomThickness" />
                                            <AttributeRule AttributeName="MullionThickness" />
                                            <AttributeRule AttributeName="FirstTransomOffset" />
                                            <AttributeRule AttributeName="SecondTransomOffset" />
                                            <AttributeRule AttributeName="FirstMullionOffset" />
                                            <AttributeRule AttributeName="SecondMullionOffset" />
                                            <AttributeRule AttributeName="LiningOffset" />
                                            <AttributeRule AttributeName="LiningToPanelOffsetX" />
                                            <AttributeRule AttributeName="LiningToPanelOffsetY" />
                                          </AttributeRules>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcWindowPanelProperties">
                                          <AttributeRules>
                                            <AttributeRule AttributeName="OperationType">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcWindowPanelOperationEnum" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="PanelPosition">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcWindowPanelPositionEnum" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="FrameDepth" />
                                            <AttributeRule AttributeName="FrameThickness" />
                                          </AttributeRules>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="9c7b470d-978a-40fa-a777-449b40588800" name="Grid Attributes" status="sample" applicableSchema="IFC4" applicableEntity="IfcGrid">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Grids may be used to provide a layout reference for building elements.</p>]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="UAxes[Size]=5"/>
	<TemplateRule Parameters="VAxes[Size]=5"/>
	<TemplateRule Parameters="WAxes[Size]=5"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="PredefinedType">
                  <EntityRules>
                    <EntityRule EntityName="IfcGridTypeEnum" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="UAxes" AttributeName="UAxes">
                  <EntityRules>
                    <EntityRule EntityName="IfcGridAxis">
                      <AttributeRules>
                        <AttributeRule AttributeName="AxisTag">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="AxisCurve">
                          <EntityRules>
                            <EntityRule EntityName="IfcIndexedPolyCurve" />
                            <EntityRule EntityName="IfcCircle" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="SameSense">
                          <EntityRules>
                            <EntityRule EntityName="IfcBoolean" />
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="VAxes" AttributeName="VAxes">
                  <EntityRules>
                    <EntityRule EntityName="IfcGridAxis">
                      <AttributeRules>
                        <AttributeRule AttributeName="AxisTag">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="AxisCurve">
                          <EntityRules>
                            <EntityRule EntityName="IfcIndexedPolyCurve" />
                            <EntityRule EntityName="IfcCircle" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="SameSense">
                          <EntityRules>
                            <EntityRule EntityName="IfcBoolean" />
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="WAxes" AttributeName="WAxes">
                  <EntityRules>
                    <EntityRule EntityName="IfcGridAxis" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="626b49a5-ebd5-4c7f-90e1-c0c09511bc53" name="Object Type Predefined Type" status="sample" applicableSchema="IFC4" applicableEntity="IfcTypeObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>
Many object occurrence and object type entities have an
 attribute named <i>PredefinedType</i> consisting of a specific
 enumeration. Such predefined
 type essentially provides another level of inheritance to
 further differentiate objects without the need for
 additional entities. Predefined types are not
 just informational; various rules apply such as applicable
 property
 sets, part composition, and distribution ports. If the object is typed by an <i>IfcTypeObject</i>, then the <i>PredefinedType</i> at the <i>IfcObject</i> occurrence shall only be used if the <i>PredefinedType</i> at <i>IfcTypeObject</i> is set to <i>NOTDEFINED</i>.]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="PredefinedType" />
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="1a9b609e-a295-4a3f-aed8-588712adce11" name="Spatial Element Type Predefined Type" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpatialElementType">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>If a custom value is needed to describe a spatial element type, the attribute <i>ElementType</i> may be used to define such custom type, where the <i>PredefinedType</i> is set to <i>USERDEFINED</i>.</p>

<p>Specific subtypes introduce additional attributes for <em>User Identity</em>.</p>
<ul>
 <li>Spatial element type sub types may be further identified via the <i>Tag</i> attribute. While there is no restriction on usage of such tags, it is recommended the <i>Tag</i> is unique within it's containing scope.</li>
 <li>Spatial element type sub types may be further attributed via the <i>LongName</i> attribute. While the <i>Name</i> attribute generally provides a coded or abbreviated identifier, the <i>LongName</i> provides a functional name for the location such as "Reception Area". </li>
</ul>

<blockquote class="note">
NOTE&nbsp; Since the corresponding occurrences of <em>IfcSpatialElementType</em> do not have a <em>Tag</em> attribute, it is recommended not to use it here.
</blockquote>]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="PredefinedType" />
                <AttributeRule AttributeName="ElementType">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Tag">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="4b385464-b99a-42bc-a17a-a0a647a1ab5b" name="Association" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
      <Definitions>
        <Definition>
          <Body><![CDATA[]]></Body>
        </Definition>
      </Definitions>
      <SubTemplates>
        <ConceptTemplate uuid="4a224609-6578-4c75-afcf-8affa86e5ef2" name="Classification" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Objects, type objects, properties, and some resource schema entities can be further described by associating references to external sources of information. 
The source of information can be:
</p>
 
<ul>
        
<li>a classification system;</li>
        
<li>a dictionary server;</li>
        
<li>any external catalogue that classifies the object further;</li>
        
<li>a service that combine the above features.</li>
      
</ul>



<p>An individual item within the external source of information can be selected. 
It then applies the inherent meaning of the item to the object or property.</p>]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="Name[Value]='Beam'"/>
                <TemplateRule Parameters="Identification[Value]='QRO 200x16'"/>
                <TemplateRule Parameters="ClassificationName[Value]='EN 10210-2'"/>
</TemplateRules>]]></Body>
              <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssociations">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesClassification">
                  <AttributeRules>
                    <AttributeRule RuleID="Name" AttributeName="Name">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="RelatingClassification">
                      <EntityRules>
                        <EntityRule RuleID="Value" EntityName="IfcClassificationReference">
                          <AttributeRules>
                            <AttributeRule RuleID="Identification" AttributeName="Identification">
                              <EntityRules>
                                <EntityRule RuleID="Value" Description="*" EntityName="IfcIdentifier" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="Name" AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Description">
                              <EntityRules>
                                <EntityRule EntityName="IfcText" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="ReferencedSource">
                              <EntityRules>
                                <EntityRule EntityName="IfcClassification">
                                  <AttributeRules>
                                    <AttributeRule RuleID="ClassificationSource" AttributeName="Source">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="ClassificationName" AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="ClassificationTokens" AttributeName="ReferenceTokens">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Edition">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Location">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcURIReference" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="EditionDate">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcDate" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Sort">
                              <EntityRules>
                                <EntityRule EntityName="IfcIdentifier" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Location">
                              <EntityRules>
                                <EntityRule EntityName="IfcURIReference" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="21359513-b753-4914-bb53-da414118e5ca" name="Classification for Objects" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
              <Rules>
                <AttributeRule AttributeName="HasAssociations">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesClassification">
                      <AttributeRules>
                        <AttributeRule RuleID="Name" AttributeName="Name">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="RelatingClassification">
                          <EntityRules>
                            <EntityRule RuleID="Value" EntityName="IfcClassificationReference">
                              <AttributeRules>
                                <AttributeRule RuleID="Identification" AttributeName="Identification">
                                  <EntityRules>
                                    <EntityRule RuleID="Value" Description="*" EntityName="IfcIdentifier" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Name" AttributeName="Name">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Description">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcText" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="ReferencedSource">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcClassification">
                                      <AttributeRules>
                                        <AttributeRule RuleID="ClassificationSource" AttributeName="Source">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule RuleID="ClassificationName" AttributeName="Name">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule RuleID="ClassificationTokens" AttributeName="ReferenceTokens">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcIdentifier" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Edition">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Description">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcText" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Location">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcURIReference" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="EditionDate">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcDate" />
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Sort">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcIdentifier" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Location">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcURIReference" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="2a56ad37-c686-401e-a4e0-61b428927798" name="Classification for Objects with Override" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="Name[Value]='Beam' AND Identification[Value]='QRO200x16' AND ClassificationName[Value]='EN10210-2'"/>
                <TemplateRules operator="and">
		<TemplateRule Parameters="TypeName[Value]='Beam' AND TypeIdentification[Value]='QRO200x16' AND TypeClassificationName[Value]='EN10210-2'"/>
                                <TemplateRules operator="nor">
			<TemplateRule Parameters="Name[Value]='Beam' AND Identification[Exists]=TRUE AND ClassificationName[Value]='EN10210-2'"/>
                                </TemplateRules>
                </TemplateRules>
</TemplateRules>]]></Body>
                      <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="HasAssociations">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelAssociatesClassification">
                          <AttributeRules>
                            <AttributeRule RuleID="Name" AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="RelatingClassification">
                              <EntityRules>
                                <EntityRule RuleID="Value" EntityName="IfcClassificationReference">
                                  <AttributeRules>
                                    <AttributeRule RuleID="Identification" AttributeName="Identification">
                                      <EntityRules>
                                        <EntityRule RuleID="Value" Description="*" EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Name" AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="ReferencedSource">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcClassification">
                                          <AttributeRules>
                                            <AttributeRule RuleID="ClassificationSource" AttributeName="Source">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule RuleID="ClassificationName" AttributeName="Name">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule RuleID="ClassificationTokens" AttributeName="ReferenceTokens">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcIdentifier" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Edition">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Description">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcText" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Location">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcURIReference" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="EditionDate">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcDate" />
                                              </EntityRules>
                                            </AttributeRule>
                                          </AttributeRules>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Sort">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Location">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcURIReference" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="IsTypedBy">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelDefinesByType">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingType">
                              <EntityRules>
                                <EntityRule EntityName="IfcTypeObject">
                                  <References IdPrefix="Type">
                                    <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
                                  </References>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="ea2a63be-fd0d-426d-863b-52c3970ca585" name="Material Association" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>

Any product or product type can have associated materials indicating the physical composition of an object.

</p>     

<blockquote class="example">EXAMPLE&nbsp; 

An object can be comprised of a single material or a set of materials with a particular layout. Several

 examples include:


<ul>

        
<li class="small">a slab may have an associated layer of concrete;

 </li>

        
<li class="small">a beam may have an associated I-Shape profile of steel;</li>

        
<li class="small">a door may have associated constituents for framing and glazing;</li>
<li class="small">a port may have an associated profile and/or material flowing through it such as hot water.

</li>

      
</ul>



</blockquote>

<p>Materials can have representations for surface styles indicating colors, textures, and light reflectance for 3D

 rendering. Materials can have representations for fill styles indicating colors, tiles, and hatch patterns for

 2D rendering. Materials can have properties such as density, elasticity, thermal resistance, and others as

 defined in this specification. Materials can also be classified according to a referenced industry standard.

</p>

 



<blockquote class="example">EXAMPLE&nbsp; Material information can also be given at object type, defining the common material data for all
 occurrences of the same type. It is then accessible by the inverse 
<em>IsTypedBy</em> relationship pointing
 via <em>HasAssociations</em> and via
 <em>IfcRelAssociatesMaterial.RelatingMaterial</em> to
the material information. If both are 
given, then the material directly assigned to object occurrence 
overrides the material assigned to object type.
</blockquote>]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssociations">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesMaterial">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingMaterial" />
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="5f39a814-44a0-4fb3-8dc6-ddaa0560fc54" name="Material Single" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Materials are directly associated with products and product types to indicate a uniform material for the entire object.
</p>]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="MaterialName[Value]='steel'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="HasAssociations">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesMaterial">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingMaterial">
                          <EntityRules>
                            <EntityRule EntityName="IfcMaterial">
                              <References>
                                <Template ref="5986b61a-b79f-44e0-a93f-9fddf470a4e1" />
                              </References>
                              <AttributeRules>
                                <AttributeRule AttributeName="HasProperties">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialProperties">
                                      <AttributeRules>
                                        <AttributeRule RuleID="MaterialPropertySetName" AttributeName="Name">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcIdentifier" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Description">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcText" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Properties">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcPropertySingleValue">
                                              <References>
                                                <Template ref="6655f6d0-29a8-47b8-8f3d-c9fce9c9a620" />
                                              </References>
                                            </EntityRule>
                                            <EntityRule EntityName="IfcPropertyTableValue">
                                              <References>
                                                <Template ref="35c947b0-6abc-4b13-8ec7-696ef2041721" />
                                              </References>
                                            </EntityRule>
                                            <EntityRule EntityName="IfcComplexProperty" />
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="ce228dc3-1168-4ee5-8cde-ae7874b03000" name="Material Single for Objects with Override" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="MaterialName[Value]='steel'"/>
                <TemplateRules operator="and">
                                <TemplateRule Parameters="TypeMaterialName[Value]='steel'"/>
                                <TemplateRules operator="nor">
                                                <TemplateRule Parameters="MaterialName[Exists]=TRUE"/>
                                </TemplateRules>
                </TemplateRules>
</TemplateRules>]]></Body>
                      <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="HasAssociations">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelAssociatesMaterial">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingMaterial">
                              <EntityRules>
                                <EntityRule EntityName="IfcMaterial">
                                  <References>
                                    <Template ref="5986b61a-b79f-44e0-a93f-9fddf470a4e1" />
                                  </References>
                                  <AttributeRules>
                                    <AttributeRule AttributeName="HasProperties">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcMaterialProperties">
                                          <AttributeRules>
                                            <AttributeRule RuleID="MaterialPropertySetName" AttributeName="Name">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcIdentifier" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Description">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcText" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Properties">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcPropertySingleValue">
                                                  <References>
                                                    <Template ref="6655f6d0-29a8-47b8-8f3d-c9fce9c9a620" />
                                                  </References>
                                                </EntityRule>
                                                <EntityRule EntityName="IfcPropertyTableValue">
                                                  <References>
                                                    <Template ref="35c947b0-6abc-4b13-8ec7-696ef2041721" />
                                                  </References>
                                                </EntityRule>
                                                <EntityRule EntityName="IfcComplexProperty" />
                                              </EntityRules>
                                            </AttributeRule>
                                          </AttributeRules>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="IsTypedBy">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelDefinesByType">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingType">
                              <EntityRules>
                                <EntityRule EntityName="IfcTypeProduct">
                                  <References IdPrefix="Type">
                                    <Template ref="5f39a814-44a0-4fb3-8dc6-ddaa0560fc54" />
                                  </References>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="d96f7f7d-e742-4db8-9b5d-18a36a6df884" name="Material Constituent Set" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Material constituents are associated with products or product types where materials are placed arbitrarily (unlike 1D material profiles or 2D material layers). 
The mapping of materials to geometry may be accomplished using <i>IfcShapeAspect</i>.
</p>]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="MaterialName[Value]='PVC' AND ConstituentName[Value]='Beschichtung'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="HasAssociations">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesMaterial">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingMaterial">
                          <EntityRules>
                            <EntityRule EntityName="IfcMaterialConstituentSet">
                              <AttributeRules>
                                <AttributeRule AttributeName="MaterialConstituents">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialConstituent">
                                      <AttributeRules>
                                        <AttributeRule RuleID="ConstituentName" AttributeName="Name">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Description">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcText" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Material">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcMaterial">
                                              <References>
                                                <Template ref="5986b61a-b79f-44e0-a93f-9fddf470a4e1" />
                                              </References>
                                              <AttributeRules>
                                                <AttributeRule AttributeName="HasProperties">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMaterialProperties">
                                                      <AttributeRules>
                                                        <AttributeRule RuleID="MaterialPropertyName" AttributeName="Name">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcIdentifier" />
                                                          </EntityRules>
                                                        </AttributeRule>
                                                        <AttributeRule AttributeName="Description">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcText" />
                                                          </EntityRules>
                                                        </AttributeRule>
                                                        <AttributeRule AttributeName="Properties">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcProperty" />
                                                          </EntityRules>
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                    </EntityRule>
                                                  </EntityRules>
                                                </AttributeRule>
                                              </AttributeRules>
                                            </EntityRule>
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Category">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Fraction">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Name">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Description">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcText" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="b31e8fb4-e7b9-48da-bbf4-cfd422f5f6cd" name="Material Constituent Set with Override" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Rules>
                    <AttributeRule AttributeName="HasAssociations">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelAssociatesMaterial">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingMaterial">
                              <EntityRules>
                                <EntityRule EntityName="IfcMaterialConstituentSet">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="MaterialConstituents">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcMaterialConstituent">
                                          <AttributeRules>
                                            <AttributeRule RuleID="ConstituentName" AttributeName="Name">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Description">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcText" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Material">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcMaterial">
                                                  <References>
                                                    <Template ref="5986b61a-b79f-44e0-a93f-9fddf470a4e1" />
                                                  </References>
                                                  <AttributeRules>
                                                    <AttributeRule AttributeName="HasProperties">
                                                      <EntityRules>
                                                        <EntityRule EntityName="IfcMaterialProperties">
                                                          <AttributeRules>
                                                            <AttributeRule RuleID="MaterialPropertyName" AttributeName="Name">
                                                              <EntityRules>
                                                                <EntityRule EntityName="IfcIdentifier" />
                                                              </EntityRules>
                                                            </AttributeRule>
                                                            <AttributeRule AttributeName="Description">
                                                              <EntityRules>
                                                                <EntityRule EntityName="IfcText" />
                                                              </EntityRules>
                                                            </AttributeRule>
                                                            <AttributeRule AttributeName="Properties">
                                                              <EntityRules>
                                                                <EntityRule EntityName="IfcProperty" />
                                                              </EntityRules>
                                                            </AttributeRule>
                                                          </AttributeRules>
                                                        </EntityRule>
                                                      </EntityRules>
                                                    </AttributeRule>
                                                  </AttributeRules>
                                                </EntityRule>
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Category">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Fraction">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                              </EntityRules>
                                            </AttributeRule>
                                          </AttributeRules>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="IsTypedBy">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelDefinesByType">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingType">
                              <EntityRules>
                                <EntityRule EntityName="IfcElementType">
                                  <References IdPrefix="Type">
                                    <Template ref="d96f7f7d-e742-4db8-9b5d-18a36a6df884" />
                                  </References>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="5098cd13-bf4b-473a-a846-a60f69e9b738" name="Object Composition" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
      <Definitions>
        <Definition>
          <Body><![CDATA[
<p>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.</p>          
        
      ]]></Body>
        </Definition>
      </Definitions>
      <SubTemplates>
        <ConceptTemplate uuid="02eefcc6-b26c-4f20-9c7c-c30ae74eb9a9" name="Aggregation" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>An aggregation indicates an internal unordered part composition relationship between the whole structure, referred to as the "composite", and the subordinate components, referred to as the "parts". The concept of aggregation is used in various ways. Examples are:</p>



<ul>


<li>Aggregation is used on building elements to indicate parts such as studs within a wall;</li>




<li>Aggregation is used on spatial elements to indicate a spatial structure such as a story within a building;</li>




<li>Aggregation is used on systems to indicate subsystems such as branch circuits.</li>

</ul>


<p>Aggregation is a bi-directional relationship, the relationship from the composite to its parts is called Decomposition, and the relationship from the part to its composite is called Composition.</p>]]></Body>
            </Definition>
          </Definitions>
          <SubTemplates>
            <ConceptTemplate uuid="ca0f65e2-3913-4fdb-8a09-0c5c7a0d5421" name="Element Composition" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Provision of an aggregation structure where the element is part of another element representing the composite. The part then provides, if such concepts are in scope of the Model View Definition, exclusively the following:</p>
<ul>
<li><em>Body Geometry</em> &mdash; The partial body shape representation and its placement;</li>
<li><em>Material</em> &mdash; The material information for the part.</li>
</ul>
<p>The part may also provide, in addition to the aggregate, more specifically the following:</p> 
<ul>
<li><em>Property Sets</em> &mdash; The parts may have individual property sets assigned, solely or in addition to the composite;</li>
<li><em>Quantity Sets</em> &mdash; The parts may have individual quantity sets assigned, solely or in addition to the composite.</li>
</ul>
<p>The part should not be contained in the spatial hierarchy, i.e. the concept <em>Spatial Containment</em> shall not be used at the level of parts. The part is contained in the spatial structure by the spatial containment of its composite.</p>
<blockquote class="example">EXAMPLE&nbsp; An <em>IfcBeam</em> may be aggregated into an element assembly using the objectified relationship <em>IfcRelAggregates</em>, refering to it by its inverse attribute </em>SELF\IfcObjectDefinition.Decomposes</em>. Any subtype of <em>IfcElement</em> can be an element assembly, with <em>IfcElementAssembly</em> as a special focus subtype. In this case it should not be additionally contained in the spatial hierarchy, i.e. <em>SELF\IfcElement.ContainedInStructure</em> should be NIL.</blockquote>

]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="Decomposes[Exists]=TRUE AND RelatingObject[Type]='IfcWallStandardCase' AND ElementName[Value]='Facade'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <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" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Provision of an aggregation structure where the element, representing the composite, is decomposed into parts represented by other elements. </p>
<p>The composite then provides, if such concepts are in scope of the Model View Definition, exclusively the following:</p>
<ul>
<li><em>Product Placement</em> &mdash; the common object coordinate system to which the parts are placed relative</li>
</ul>
<p>By default the following constraints apply to an element being decomposed by <em>Element Decomposition</em>:</p>
<ul>
<li><em>Body Geometry</em> &mdash; composite is constructed from the sum of the <em>Body Geometry</em> of the parts;</li>
<li>the composite shall not have an own <em>Body Geometry</em>, body geometry is provided at the parts;</li>
<li>the composite shall not have an own <em>Material</em> assignment, material is assigned to the parts.</li>
</ul>
<blockquote class="note">NOTE&nbsp; Use the sub template <em>Element Decomposition Required</em> if any instance of the element is required to represent a composite with declared parts.</blockquote>
]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="IsDecomposedBy[Exists]=TRUE AND RelatedObjects[Size]=2"/>
	<TemplateRule Parameters="RelatedObjects[Type]='IfcSlab' OR RelatedObjects[Type]='IfcRailing'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <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" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpatialElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Provision of a spatial structure of the project by aggregating spatial elements. The spatial structure is a hierarchical tree of spatial elements ultimately assigned to the project. Composition refers to the relationship to a higher level element (e.g. this storey is part of a building).</p>

<blockquote class="note">NOTE&nbsp; The link between the highest level spatial element and the project is provided by this concept through <em>IfcRelContainedInSpatialStructure</em> and not through declaration using <em>IfcRelDeclares</em>. This is a known anomaly intruduced to maintain compatibility with earlier versions of this standard.</blockquote>

<p>The order of spatial structure elements being included in the concept for builing projects are from high to low level: <em>IfcProject</em>, <em>IfcSite</em>, <em>IfcBuilding</em>, <em>IfcBuildingStorey</em>, and <em>IfcSpace</em> with <em>IfcSite</em>, <em>IfcBuildingStorey</em> and <em>IfcSpace</em> being optional levels. Therefore an spatial structure element can only be part of an element at the same or higher level.</p>

<p>In addition a more general hierarchical tree of spatial elements can be created by using <em>IfcSpatialZone</em>, from high to low: <em>IfcProject</em>, <em>IfcSite</em>, and <em>IfcSpatialZone</em> with <em>IfcSite</em> being an optional level.</em></p>

<blockquote class="note">NOTE&nbsp; The more general hiearchical tree has been introduced as an intermediate solution and stub for further extensions to support infrastructure works.</blockquote>]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="RelatingObject[Type]='IfcProject' AND ProjectName[Value]='Green Architecture Sydney' "/>
	<!-- <TemplateRule Parameters="RelatingObject[Type]='IfcSite' AND SpatialElementName[Value]='LOT-1002'"/> --> 
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Decomposes">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAggregates">
                      <AttributeRules>
                        <AttributeRule RuleID="RelatingObject" AttributeName="RelatingObject">
                          <EntityRules>
                            <EntityRule EntityName="IfcProject">
                              <AttributeRules>
                                <AttributeRule RuleID="ProjectName" AttributeName="Name" />
                              </AttributeRules>
                            </EntityRule>
                            <EntityRule EntityName="IfcSpatialElement">
                              <AttributeRules>
                                <AttributeRule RuleID="SpatialElementName" AttributeName="Name" />
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="667f8443-ecce-4a8d-a63f-931fab0453e0" name="Spatial Decomposition" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Provision of a spatial structure of the project by aggregating spatial elements. The spatial structure is a hierarchical tree of spatial elements ultimately assigned to the project. Decomposition refers to the relationship to a lower level element (e.g. this storey has spaces).</p>

<blockquote class="note">NOTE&nbsp; The link between the project and the highest level spatial element is provided by this concept through <em>IfcRelContainedInSpatialStructure</em> and not through declaration using <em>IfcRelDeclares</em>. This is a known anomaly intruduced to maintain compatibility with earlier versions of this standard.</blockquote>

<p>The order of spatial structure elements being included in the concept for builing projects are from low to high level: <em>IfcSpace</em>, <em>IfcBuildingStorey</em>, <em>IfcBuilding</em>, <em>IfcSite</em> and <em>IfcProject</em> with <em>IfcSite</em>, <em>IfcBuildingStorey</em> and <em>IfcSpace</em> being optional levels. Therefore an spatial structure element can only be part of an element at the same or higher level.</p>

<p>In addition a more general hierarchical tree of spatial elements can be created by using <em>IfcSpatialZone</em>, from low to high: <em>IfcSpatialZone</em>, <em>IfcSite</em>, and <em>IfcProject</em>, with <em>IfcSite</em> being an optional level.</em></p>

<blockquote class="note">NOTE&nbsp; The more general hiearchical tree has been introduced as an intermediate solution and stub for further extensions to support infrastructure works.</blockquote>]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
	<TemplateRule Parameters="RelatedObjects[Size]=4 AND RelatedObjects[Type]='IfcBuildingStorey'"/>
	<TemplateRule Parameters="SpatialElementName[Value]='UG' OR SpatialElementName[Value]='EG' OR SpatialElementName[Value]='OG1' OR SpatialElementName[Value]='DG'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <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="d1e6b86e-7658-443c-b708-86b7dd8b12f4" name="Nesting" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>A nesting indicates an external ordered part composition relationship between the hosting structure, referred to as the "host", and the attached components, referred to as the "hosted elements". The concept of nesting is used in various ways. Examples are:</p>



<ul>


<li>Nesting is used on product elements to indicate external connectable parts such as faucets mounted on a sink, or switches within a junction box.</li>






<li>Nesting is used on control objects to indicate specification hierarchies.</li>




<li>Nesting is used on process objects to indicate subordinate processes which may occur in parallel or in series.</li>



<li>Nesting is used on resource objects to indicate subordinate resource allocations which may occur in parallel or in series.</li>

</ul>


<p>Nesting is a bi-directional relationship, the relationship from the hosting structure to its attached components is called Nesting, and the relationship from the components to their containing structure is called Hosting.</p>]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="IsNestedBy">
              <EntityRules>
                <EntityRule EntityName="IfcRelNests" />
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" name="Port Nesting" status="sample" applicableSchema="IFC4" applicableEntity="IfcDistributionElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Ports indicate possible connections to other objects according to specified system types, flow direction, and connection properties.  Ports are typically connected between devices via cables, pipes, or ducts.</p>


<p>Ports may have placement defined indicating the position and outward orientation of the port relative to the product or product type. Ports may also have material profile sets defined indicating the flow area and connection enclosure.</p>]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="PortName[Value]='P1'"/>
                <TemplateRule Parameters="Flow[Value]='SINK' OR Flow[Value]='SOURCE'"/>
                <TemplateRule Parameters="SystemType[Value]='ELECTRICAL' OR SystemType[Value]='WATERSUPPLY' OR SystemType[Value]='WASTEWATER'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <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="PredefinedType">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcDistributionPortTypeEnum" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="b9005e79-b5c5-4c0b-9d86-046c21ad420d" name="Element Voiding" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Elements may have voids defined, which may be partial recess or extending full depth. Voids for openings may optionally be filled by another element such as a door or window, or may represent a voiding feature without fillings.</p>

<p>The 'Body' representation of an element does not account for voids, for which CSG operations are required to produce the resulting shape.</p>
<p>The 'Mesh' representation of an element does account for voids, such that no additional operations are required.</p>


]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="HasOpenings[Size]=1 AND HasFillings[Size]=1 AND RelatedFillings[Size]=1 AND ElementName[Type]='IfcDoor'"/>
</TemplateRules>]]></Body>
              <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="HasOpenings" AttributeName="HasOpenings">
              <EntityRules>
                <EntityRule EntityName="IfcRelVoidsElement">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatedOpeningElement">
                      <EntityRules>
                        <EntityRule EntityName="IfcOpeningElement">
                          <AttributeRules>
                            <AttributeRule AttributeName="PredefinedType">
                              <EntityRules>
                                <EntityRule EntityName="IfcOpeningElementTypeEnum" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="HasFillings" AttributeName="HasFillings">
                              <EntityRules>
                                <EntityRule EntityName="IfcRelFillsElement">
                                  <AttributeRules>
                                    <AttributeRule RuleID="RelatedFillings" AttributeName="RelatedBuildingElement">
                                      <EntityRules>
                                        <EntityRule RuleID="ElementName" EntityName="IfcDoor" />
                                        <EntityRule RuleID="ElementName" EntityName="IfcWindow" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="3b8e69d9-2824-4ebb-bb95-e5271c122efc" name="Object Assignment" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p class="std">
Objects may provide services to other objects, where the
 "assigned from" object acts upon or observes requirements
 of the "assigned to" object. There is a general cycle of
 assignments where <a class="int-ref" href=
"../chapter-3.htm#actor">actors</a> (people) issue <a class=
"int-ref" href="../chapter-3.htm#control">controls</a> (such as
 work orders or schedules), which may result in <a class=
"int-ref" href="../chapter-3.htm#group">groups</a> (such as
        building systems) comprised of <a class="int-ref" href=
"../chapter-3.htm#product">products</a> (such as building
 elements) operated upon by <a class="int-ref" href=
"../chapter-3.htm#process">processes</a> (such as construction
 tasks) performed by <a class="int-ref" href=
"../chapter-3.htm#resource">resources</a> (such as labor) which
 may in turn be fulfilled by actors (people). Requirements
 are established at the "to" side and are fulfilled at the
 "from" side, where costs, time, scope, or other metrics may
 be calculated in the "from-to" direction.
</p>

 ]]></Body>
        </Definition>
      </Definitions>
      <SubTemplates>
        <ConceptTemplate uuid="f567967f-5493-44d9-ac51-937c09ac2583" name="Group Assignment" status="sample" applicableSchema="IFC4" applicableEntity="IfcGroup">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p><em>Group Assignment</em> established an arbitrary collection of objects within a group. The grouping relationship does not apply any other meaning then grouping objects under some aspect. It is non-hierarchical, that is objects can be grouped into different logical groups, and it does not interfere with other relationship concepts, such as <em>ObjectAggregation</em>.</p>

<p>The <em>Group Assignment</em> concept establish a given object as being the group collection for other objects. An <em>IfcZone</em> is a specific group object for collecting spaces, <em>IfcDistributionSystem</em> is a specific group object for collecting distribution elements. Usually a grouping relationship is applied to group elements for a particular purpose or function. It usually implies the existence of a grouping relationship and the provision of some identity under which the group is characterized.</p>

<ul>
<li>Group collection is handled by an instance of <em>IfcRelAssignsToGroup</em>, which assigns all group members to the <em>IfcGroup</em> being the collection.</li>
<li>Objects included in group as collected items are linked by <em>IsGroupedBy</em> pointing to <em>IfcRelAssignsToGroup</em></li>
</ul>

<blockquote class="note">NOTE&nbsp; The <em>IfcGroup</em> maybe not yet have a grouping relationship established, it then identifies an empty group.</blockquote>
<blockquote class="example">EXAMPLE&nbsp; An air handler belonging to an air conditioning system is an example of such group assignment.</p>]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="IsGrouped[Size]>1 AND RelatedObjects[Size]>4"/>
</TemplateRules>]]></Body>
              <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="IsGrouped" AttributeName="IsGroupedBy">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToGroup">
                  <AttributeRules>
                    <AttributeRule RuleID="RelatedObjects" AttributeName="RelatedObjects">
                      <EntityRules>
                        <EntityRule EntityName="IfcProduct" />
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
        <ConceptTemplate uuid="de73eaf7-7f2f-4af8-b574-24f353ddab1d" name="Assignment to Group" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>The <em>Assignment to Group</em> established the assignment of an object to a group, being an arbitrary collection of objects. It is the complementary concept template to <em>Group Assignment</em> defining how object are assigned by a group.</p>

<p>The grouping relationship does not apply any other meaning then grouping objects under some aspect. It is non-hierarchical, meaning that objects can be assigned to many groups, and it does not interfere with other relationship concepts, such as <em>Element Decomposition</em>.</p>]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="IsAssigned" AttributeName="HasAssignments">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToGroup">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingGroup" />
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="72c79ed8-61e6-490f-94f6-e74d7bdb33e1" name="Component to Distribution System" status="sample" applicableSchema="IFC4" applicableEntity="IfcDistributionElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>Component to Distribution System</em> assignment]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
    <!-- Check assignement to IfcDistributionSystem -->
    <TemplateRule Parameters="IsAssigned[Size]>0 AND SystemName[Value]='WWS_1'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="IsAssigned" AttributeName="HasAssignments">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssignsToGroup">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingGroup">
                          <EntityRules>
                            <EntityRule EntityName="IfcDistributionSystem">
                              <AttributeRules>
                                <AttributeRule RuleID="SystemName" AttributeName="Name">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="25f605d3-83d4-4c10-a240-cc59abaa8fcc" name="Port to Distribution System" status="sample" applicableSchema="IFC4" applicableEntity="IfcDistributionPort">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>Port to Distribution System</em> assignment]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
    <!-- Check assignement to IfcDistributionSystem -->
    <TemplateRule Parameters="IsAssigned[Size]>0 AND SystemName[Value]='WWS_1'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="IsAssigned" AttributeName="HasAssignments">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssignsToGroup">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingGroup">
                          <EntityRules>
                            <EntityRule EntityName="IfcDistributionSystem">
                              <AttributeRules>
                                <AttributeRule RuleID="SystemName" AttributeName="Name">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="252a5fa6-cc5b-4d30-bd0c-35e22e336499" name="Object Connectivity" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p class="std">
        Objects may participate in various connectivity
        relationships with other objects.
      </p>
]]></Body>
        </Definition>
      </Definitions>
      <SubTemplates>
        <ConceptTemplate uuid="81bc486c-1976-4e11-a469-cff2f70f123e" name="Spatial Structure" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Spatial structures, such as site, building, storey, or spaces, may contain physical elements, including building elements, distribution elements, and furnishing elements. The containment relationship between the physical elements and the spatial structures is hierarchical, i.e. a physical element shall only be contained within a single spatial structure.</p>

<blockquote class="example">EXAMPLE&nbsp; An <em>IfcBeam</em> is placed within the spatial hierarchy using the objectified relationship <em>IfcRelContainedInSpatialStructure</em>, refering to it by its inverse attribute <em>SELF\IfcElement.ContainedInStructure</em>. Subtypes of <em>IfcSpatialStructureElement</em> are valid spatial containers, with <em>IfcBuildingStorey</em> being the default container. </blockquote>

<p>The spatial containment relationship, together with the Spatial decomposition relationship, being hierarchical as well, establishes the hiearchical project tree structure in a building information model.</p> 

<blockquote class="example">EXAMPLE&nbsp; The <em>IfcBuildingStorey</em> that logically contains the <em>IfcBeam</em> decomposes the <em>IfcBuilding</em> using the <em>IfcRelAggregates</em> relationship. Therefore the <em>IfcBeam</em> is also indirectly contained in the building. </blockquote>]]></Body>
            </Definition>
          </Definitions>
          <SubTemplates>
            <ConceptTemplate uuid="61dd08ed-fd01-4955-9337-8afd284a0e6f" name="Spatial Container" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpatialElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>Spatial Container</em> concept defines a spatial element as being the spatial container for physical elements, or other elements being directly related to the spatial container, such as annotations or grids. </p>
<blockquote class="example">EXAMPLE&nbsp; A building story is a logical spatial container of building elements, distribution elements, or furnishing elements.</blockquote>
<p>The <em>Spatial Container</em> concept is realized by using the <em>IfcRelContainedInSpatialStructure</em> objectified relationship between subtypes of <em>IfcSpatialElement</em> and the elements contained. The inverse relationship <em>ContainsElements</em> at the subtypes of <em>IfcSpatialElement</em> refers to the contained physical elements.</p>]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="ContainsElements">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelContainedInSpatialStructure">
                      <AttributeRules>
                        <AttributeRule RuleID="Type" AttributeName="RelatedElements">
                          <EntityRules>
                            <EntityRule EntityName="IfcProduct" />
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="d9a3f822-0014-4bc2-8d94-9d9067759045" name="Spatial Containment" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>Spatial Containment</em> concept defines the relationship of physical elements, such as building elements, distribution elements, or furnishing elements as being contained within a spatial structure element.</em>
<p>
Any subtype of
 <em>IfcElement</em> may participate in two different
 containment relationships. The first (and in most
 implementation scenarios mandatory) relationship is the
 hierachical spatial containment, the second (optional)
 relationship is the aggregation within an element
 assembly.
</p>

<ul>

 <li>The subtypes of <em>IfcElement</em> are placed within the
 project spatial hierarchy using the objectified relationship
 <em>IfcRelContainedInSpatialStructure</em>, refering to it by
 its inverse attribute
 <em>SELF\IfcElement.ContainedInStructure</em>. Subtypes
 of <em>IfcSpatialElement</em> are valid spatial
 containers.</li>
       <li>The subtypes of <em>IfcElement</em> may be aggregated into an
 element assembly using the objectified relationship
 <em>IfcRelAggregates</em>, refering to it by its inverse
 attribute <em>SELF\IfcObjectDefinition.Decomposes</em>. Any
 subtype of <em>IfcElement</em> can be an element assembly, with
 <em>IfcElementAssembly</em> as a special focus subtype. In this
 case it should not be additionally contained in the project
 spatial hierarchy, i.e. <em>SELF\IfcElement.ContainedInStructure</em> 
should be <em>NIL</em>.
</li>

</ul>

]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="RelatingStructure[Type]='IfcBuildingStorey' AND SpatialElementName[Value]='Ground Floor'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="ContainedInStructure">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelContainedInSpatialStructure">
                      <AttributeRules>
                        <AttributeRule RuleID="RelatingStructure" AttributeName="RelatingStructure">
                          <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="17e42301-4a59-4945-b62b-2c64f6ca6c12" name="Element Connectivity" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Elements may be connected to other elements, where the <i>RelatingElement</i> is of equal or higher priority, is generally constructed first, and/or anchors the <i>RelatedElement</i>.</p>]]></Body>
            </Definition>
          </Definitions>
          <SubTemplates>
            <ConceptTemplate uuid="16fe846f-32b1-4595-bbb0-c4ad053dab24" name="Port Connectivity" status="sample" applicableSchema="IFC4" applicableEntity="IfcDistributionPort">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Ports on distribution elements, such as ducts and airoutlets, or pipes and sanitary elements are connected with each other using the <em>Port Connectivity</em>. The port connection determines the direction of flow between the connected ports belonging to the distribution elements. </p>]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="ConnectedToPort[Size]=1 AND ConnectedFromPort[Size]=0"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="ConnectedFromPort" AttributeName="ConnectedFrom">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelConnectsPorts">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingPort">
                          <EntityRules>
                            <EntityRule EntityName="IfcDistributionPort" />
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="ConnectedToPort" AttributeName="ConnectedTo">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelConnectsPorts" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="e3461692-f4c5-4dfa-a8f5-0734a0698f6b" name="Spatial Service Connectivity" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpatialElement">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>A system, such as a distribution system, services a particular spatial structure, either a total building, a building section, or a storey, or any part of these structures.</p>]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="ServicedBySystems" AttributeName="ServicedBySystems">
              <EntityRules>
                <EntityRule EntityName="IfcRelServicesBuildings">
                  <AttributeRules>
                    <AttributeRule RuleID="RelatedSystem" AttributeName="RelatingSystem">
                      <EntityRules>
                        <EntityRule EntityName="IfcSystem">
                          <AttributeRules>
                            <AttributeRule RuleID="SystemName" AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="0e8b1397-1ac6-41e1-a6d0-f2b34688cb61" name="Product Shape" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>A product is an occurence of a physical or virtual object with finite spatial extent that may have a shape representation as one of its characteristics. The concepts within the group of <em>Product Shape</em> define how a shape is created to represent different geometric and topological representations.</p>
            ]]></Body>
        </Definition>
      </Definitions>
      <SubTemplates>
        <ConceptTemplate uuid="ad2770c2-914e-4ab2-9d39-bc0dff3f7b24" name="Product Placement" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>
Product occurrences are placed in a right handed Cartesian coordinate system. The <em>Product Placement</em> is used to establish an object coordinate system that maby be placed relative to a parent object coordinate system, and ultimately to the project coordinate system.</p> ]]></Body>
            </Definition>
          </Definitions>
          <SubTemplates>
            <ConceptTemplate uuid="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" name="Product Local Placement" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>
Product occurrences can be placed in 3D space relative to
 where they are contained. Placement is defined by a
 relative position (X, Y, Z coordinates), a horizontal
 reference direction, and a vertical axis direction. At the
 outermost level, relative directions are defined according
 to representation context; for example, +X may point east,
 +Y may point north, and +Z may point up.</p>


<p>
Placement follows aggregation and containment relationships
 as follows:
</p>


<ul>

 <li>at the outermost level, a site is globally
 positioned according to latitude, longitude, and elevation;</li>


 <li>for spatial structures, positioning is
 relative to aggregation. For example, a site may aggregate
 multiple buildings, each building may aggregate multiple
 building storeys, and each building storey may aggregate
 multiple spaces;</li>


 <li>for building elements, positioning is
 relative to the containing spatial structure. For example,
 a building storey may contain slabs, walls, columns, and
 beams;
</li>

 <li>for aggregated parts, positioning is
 relative to aggregation. For example, a staircase may
 aggregate one or more stair flights;</li>
 <li>for feature elements, positioning is
 relative to the affected building element. For example, an
 opening element is positioned relative to the wall it
 voids, which in turn is positioned relative to a building
 storey;</li>

 <li >for fillings, positioning is relative to
 the filled opening. For example, a door is positioned
 relative to an opening which in turn is positioned relative
 to a wall;
</li>


 <li>for distribution ports, positioning is
 relative to the containing distribution element. For
 example, an air terminal may have a port connection for a
 duct segment or fitting;</li>


 <li>for distribution elements, positioning is
 relative to the containing spatial structure, however may be constrained by port connections. For example, a
 electrical junction box may fill an opening within a wall,
 and the junction box may contain ports for contained
 outlets or switches; the placement of such connected
 elements is contrained relative to connected port of the
  junction box. As another example, an air terminal may fill
 a ceiling covering which is placed relative to a space; the
 placement of a connecting duct fitting may be constrained
 relative to the air terminal.
</li>


</ul>


<p>If a containing spatial structure contains a grid, then
 placement may also be based relative to grid coordinates.
 In certain use cases, an absolute placement may be used by omiting the <em>IfcObjectPlacement</em>. In this case, the shape representation is defined within the world coordinate system.
</p>
]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[<TemplateRules operator="and">
                <TemplateRule Parameters="HasPlacement[Exists]=TRUE AND RelativeToElement[Type]='IfcBuildingStorey' AND SpatialElementName='Ground Floor'"/>
</TemplateRules>]]></Body>
                  <Link lang="tt" category="definition" title="AUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="HasPlacement" AttributeName="ObjectPlacement">
                  <EntityRules>
                    <EntityRule EntityName="IfcLocalPlacement">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelativePlacement">
                          <EntityRules>
                            <EntityRule EntityName="IfcAxis2Placement3D" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="PlacementRelTo">
                          <EntityRules>
                            <EntityRule EntityName="IfcLocalPlacement">
                              <AttributeRules>
                                <AttributeRule RuleID="RelativeToElement" AttributeName="PlacesObject">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcElement">
                                      <AttributeRules>
                                        <AttributeRule RuleID="ElementName" 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>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="13f96914-1ad4-41d4-ba99-411a9ecbf567" name="Product Geometric Representation" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
          <Definitions>
            <Definition>
              <Body><![CDATA[
<p>

The shape of products may be represented in multiple ways
 for different purposes. Each representation has a
 well-known string identifier and a particular
 representation context. There may be multiple
 representation contexts to describe a shape at various levels of detail. Most building elements have a 'Body'
 representation which defines or approximates the physical shape and volume. In addition to physical building elements, non-physical elements may have representations
 such as spaces and openings.

</p>

]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="Representation">
              <EntityRules>
                <EntityRule EntityName="IfcProductDefinitionShape">
                  <AttributeRules>
                    <AttributeRule AttributeName="Name" />
                    <AttributeRule AttributeName="Description" />
                    <AttributeRule AttributeName="Representations">
                      <EntityRules>
                        <EntityRule EntityName="IfcShapeRepresentation">
                          <AttributeRules>
                            <AttributeRule AttributeName="ContextOfItems">
                              <EntityRules>
                                <EntityRule EntityName="IfcGeometricRepresentationContext" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="a13f0eca-6c45-4a95-bfa6-03cc7da6a6cf" name="CoG Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>
Elements may have a 'CoG' representation
 describing the Center of Gravity as a point. Such representation may be used for allowing validation checks to verify, that the CoG after import of the 'Body' shape representation 

matches this explicit value created during export, taking acceptable numeric tolerances into account.</p>


<p>The representation identifier and type and the only allowed single representation item of the 'CoG' representation
 are:</p>

<ul>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'CoG'</li>

 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> : 'BoundingBox'</li>
 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcCartesianPoint</em></li>

</ul>
]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[]]></Body>
                  <Link lang="tt" category="definition" title="SEMIAUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape">
                      <AttributeRules>
                        <AttributeRule AttributeName="Name" />
                        <AttributeRule AttributeName="Description" />
                        <AttributeRule AttributeName="Representations">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Items">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcCartesianPoint" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="b942ceb1-b818-4683-871b-9c979fa34dd5" name="Box Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>
Elements may have a simplified 'Box' representation
 describing the dimensions of the smallest box bounding the
 object. Such representation may be used for more efficient
 spatial indexing or hit-testing.

</p>


<p>The representation identifier and type and the only allowed single representation item of the 'Box' representation
 are:</p>

<ul>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Box'</li>

 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> : 'BoundingBox'</li>
 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcBoundingBox</em></li>

</ul>

<blockquote class="note">NOTE&nbsp; The specification does not determine the method by which the bounding box has to be created. If such a method need to be prescribed the definition has to be established by model view definitions or implementer agreements.</blockquote>]]></Body>
                </Definition>
                <Definition>
                  <Body lang="tt"><![CDATA[]]></Body>
                  <Link lang="tt" category="definition" title="SEMIAUTOMATIC" href="" />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel">
                                      <Constraints>
                                        <Constraint Expression="Identifier[Value] = 'Box'" />
                                      </Constraints>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel">
                                      <Constraints>
                                        <Constraint Expression="Type[Value] = 'BoundingBox'" />
                                      </Constraints>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Items">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcBoundingBox" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Name" />
                        <AttributeRule AttributeName="Description" />
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="4f5777d7-68e9-459c-aa2c-46adf3e88d31" name="FootPrint Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>
Elements filling a boundary provide a 'Footprint'
 representation indicating a rectangle or any arbitrary set
 of outer and inner boundary curves. Examples of such
 elements include slabs and spaces. For elements that have a material layer set association indicating material thicknesses,
 a 'Body' representation may be generated based on the
 footprint and material layers. Fill area styles may
 indicate particular colors, tiles, or hatching for 2D
 rendering.

</p>
<p>The representation identifier of the foot print representation
 is:</p>

<ul>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'FootPrint'</li>


</ul>
]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation">
                              <AttributeRules>
                                <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel">
                                      <Constraints>
                                        <Constraint Expression="Identifier[Value] = 'FootPrint'" />
                                      </Constraints>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="ContextOfItems">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Items" AttributeName="Items" />
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Name" />
                        <AttributeRule AttributeName="Description" />
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="9456d6d6-a62a-48b4-baff-be2e38baac9c" name="FootPrint GeomSet Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The 'FootPrint GeomSet Geometry' is the standard representation for the floor plan projection of the geometric representation of elements, comprising of mainly 2D curves</p>
<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric representation 
are used:</p>
<ul>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> : 'FootPrint'</li>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> : 'GeometricCurveSet'</li>

 <li><em>IfcShapeRepresentation</em><em>.Items</em> : <em>IfcGeometricCurveSet</em></li>
</ul>
]]></Body>
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation">
                                  <AttributeRules>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel">
                                          <Constraints>
                                            <Constraint Expression="Identifier[Value] = 'FootPrint'" />
                                          </Constraints>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="ContextOfItems">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel">
                                          <Constraints>
                                            <Constraint Expression="Type[Value] = 'GeometricCurveSet'" />
                                          </Constraints>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricCurveSet" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Name" />
                            <AttributeRule AttributeName="Description" />
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="d68f9f1b-223a-4a8a-912b-b83f032a74f2" name="Reference Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>A specific form of geometry representation is the 'Reference' geometry. It is used to provide a geometry used for various forms of assessments (like for quantities, etc.) but not for display and also not for implicit Boolean operations in a voiding relationship.

</p>



<blockquote class="example">EXAMPLE&nbsp; An example is the use of 'Reference' representation is for opening elements that shall not be used to create a void using the <em>IfcRelVoidsElement</em> relationship, since the voids are already part of the 'Body' representation of the voided element.

<p>The representation identifier of the representation
 is:</p>


<ul>

 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Reference'</li>



</ul>
]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape">
                      <AttributeRules>
                        <AttributeRule AttributeName="Name" />
                        <AttributeRule AttributeName="Description" />
                        <AttributeRule AttributeName="Representations">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel">
                                      <Constraints>
                                        <Constraint Expression="Identifier[Value] = 'Reference'" />
                                      </Constraints>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="c10a7cd4-27e6-465f-a76e-da460daed660" name="Reference Tessellation Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Reference Tessellation Geometry</em> is the reference representation of the 3D shape of a product by using tessellated models. Being a reference representation it is normally not displayed and it is not used in a voiding relationship.

</p>

<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric
 representation shall be used:</p>

<ul>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Reference'</li>


 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'Tessellation'</li>


 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcTessellatedFaceSet</em></li>

</ul>
]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[]]></Body>
                      <Link lang="tt" category="definition" title="SEMIAUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape">
                          <AttributeRules>
                            <AttributeRule AttributeName="Name" />
                            <AttributeRule AttributeName="Description" />
                            <AttributeRule AttributeName="Representations">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel">
                                          <Constraints>
                                            <Constraint Expression="Type[Value] = 'Tessellation'" />
                                          </Constraints>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Items">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcTriangulatedFaceSet">
                                          <References>
                                            <Template ref="677bd4ce-e38b-4581-b40d-c9eaa2416971" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcPolygonalFaceSet">
                                          <References>
                                            <Template ref="72c0b316-6b48-478d-91fa-6e4b5a781b07" />
                                          </References>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
                <ConceptTemplate uuid="158a3bda-e2da-43c5-97d3-4c12f5e75995" name="Reference SweptSolid Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Reference SweptSolid Geometry</em> is the reference representation of the 3D shape of a product by swept solid models, only allowing for the basic extruded area solids and revolved area solids. Being a reference representation it is normally not displayed and it is not used in a voiding relationship.

</p>


<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric
 representation shall be used:</p>


<ul>

 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Reference'</li>



 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'SweptSolid'</li>



 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcExtrudedAreaSolid</em></li>


</ul>]]></Body>
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape">
                          <AttributeRules>
                            <AttributeRule AttributeName="Name" />
                            <AttributeRule AttributeName="Description" />
                            <AttributeRule AttributeName="Representations">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Items">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcExtrudedAreaSolid" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                  <SubTemplates>
                    <ConceptTemplate uuid="903ec934-3d30-4988-a9ab-21815fc634d7" name="Reference SweptSolid PolyCurve Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
                      <Definitions>
                        <Definition>
                          <Body><![CDATA[<p>The <em>Reference SweptSolid PolyCurve Geometry</em> is the reference representation of the 3D shape of a product by swept solid models, only allowing for the basic extruded area solids and revolved area solids. Being a reference representation it is normally not displayed and it is not used in a voiding relationship.

</p>

<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric
 representation shall be used:</p>


<ul>

 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Reference'</li>



 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'SweptSolid'</li>



 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcExtrudedAreaSolid</em>, <em>IfcRevolvedAreaSolid</em></li>



 
<li><em>IfcShapeRepresentation</em><em>.Items[1..n].SweptArea</em> =
 <em>IfcArbitraryClosedProfileDef</em>, <em>IfcArbitraryProfileDefWithVoids</em></li>


 
<li><em>IfcShapeRepresentation</em><em>.Items[1..n].SweptArea.OuterCurve</em> =
 <em>IfcIndexedPolyCurve</em></li>

 
<li><em>IfcShapeRepresentation</em><em>.Items[1..n].SweptArea.InnerCurves</em> =
 <em>IfcIndexedPolyCurve</em></li>
</ul>
]]></Body>
                        </Definition>
                        <Definition>
                          <Body lang="tt"><![CDATA[]]></Body>
                          <Link lang="tt" category="definition" title="SEMIAUTOMATIC" href="" />
                        </Definition>
                      </Definitions>
                      <Rules>
                        <AttributeRule AttributeName="Representation">
                          <EntityRules>
                            <EntityRule EntityName="IfcProductDefinitionShape">
                              <AttributeRules>
                                <AttributeRule AttributeName="Name" />
                                <AttributeRule AttributeName="Description" />
                                <AttributeRule AttributeName="Representations">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcShapeRepresentation">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="ContextOfItems">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Items">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcExtrudedAreaSolid">
                                              <References>
                                                <Template ref="394297ba-f77f-4107-a9cc-9ecb11744de6" />
                                              </References>
                                            </EntityRule>
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </Rules>
                    </ConceptTemplate>
                  </SubTemplates>
                </ConceptTemplate>
                <ConceptTemplate uuid="2a556af4-4b5b-43f8-833a-8a183800b19a" name="Reference Geometry General" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Reference Geometry General</em> is the reference representation of the 3D shape of a product by using either of the existing concept templates "Reference Tessellation Geometry", "Reference SweptSolid Geometry". It is used if no particular geomertric item is requested, but any valid geometric item can be used to provide the "Reference Geometry". Being a reference representation it is normally not displayed and it is not used in a voiding relationship.

</p>

<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric
 representation shall be used:</p>

<ul>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Reference'</li>


 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'Tessellation', 'SweptSolid'</li>


 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcTessellatedFaceSet</em>, <em>IfcExtrudedAreaSolid</em></li>

</ul>
]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[]]></Body>
                      <Link lang="tt" category="definition" title="SEMIAUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape">
                          <AttributeRules>
                            <AttributeRule AttributeName="Name" />
                            <AttributeRule AttributeName="Description" />
                            <AttributeRule AttributeName="Representations">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Items">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcExtrudedAreaSolid">
                                          <References>
                                            <Template ref="394297ba-f77f-4107-a9cc-9ecb11744de6" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcPolygonalFaceSet">
                                          <References>
                                            <Template ref="72c0b316-6b48-478d-91fa-6e4b5a781b07" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcTriangulatedFaceSet">
                                          <References>
                                            <Template ref="677bd4ce-e38b-4581-b40d-c9eaa2416971" />
                                          </References>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="c446bd16-2de3-4b97-b34f-4446ac0badc2" name="Body Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Elements may have a 'Body' representation describing the volumetric shape of the object. Such representation may be used for 3D coordination, rendering or quantity take-off. Geometry may be based on boundary representations describing outer faces, primitives such as spheres or cones, swept solids such as profile extrusions or revolutions, Constructive Solid Geometry (CSG) such as clippings or subtractions of other shapes, or Non-Uniform Rational B-Spline (NURBS) geometry. Surface styles may indicate particular colors, textures, and reflectance for 3D rendering.

</p>


<p>The representation identifier of the body representation
 is:</p>


<ul>

 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Body'</li>



</ul>
]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel">
                                      <Constraints>
                                        <Constraint Expression="Identifier[Value] = 'Body'" />
                                      </Constraints>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Name" />
                        <AttributeRule AttributeName="Description" />
                        <AttributeRule AttributeName="HasShapeAspects">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeAspect">
                              <AttributeRules>
                                <AttributeRule RuleID="ShapeName" AttributeName="Name">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="ShapeRepresentations">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcShapeRepresentation" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Description">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcText" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="5cfd4403-6545-4c6d-bc27-0a95a3d09950" name="Body Tessellation Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Body Tessellation Geometry</em> is the representation of the 3D shape of a product by tessellated surface models.

</p>

<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric
 representation shall be used:</p>

<ul>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Body'</li>


 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'Tessellation'</li>


 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcTessellatedFaceSet</em></li>

</ul>
]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[]]></Body>
                      <Link lang="tt" category="definition" title="SEMIAUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel">
                                          <Constraints>
                                            <Constraint Expression="Type[Value] = 'Tessellation'" />
                                          </Constraints>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcTriangulatedFaceSet">
                                          <References>
                                            <Template ref="677bd4ce-e38b-4581-b40d-c9eaa2416971" />
                                          </References>
                                        </EntityRule>
                                        <EntityRule EntityName="IfcPolygonalFaceSet">
                                          <References>
                                            <Template ref="72c0b316-6b48-478d-91fa-6e4b5a781b07" />
                                          </References>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Name" />
                            <AttributeRule AttributeName="Description" />
                            <AttributeRule AttributeName="HasShapeAspects">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeAspect">
                                  <AttributeRules>
                                    <AttributeRule RuleID="ShapeName" AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="ShapeRepresentations">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcShapeRepresentation" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
                <ConceptTemplate uuid="cb7c18fa-cf83-4db1-be1b-c013ba4ed672" name="Body SweptSolid Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Body SweptSolid Geometry</em> is the representation of the 3D shape of a product by swept solid models, only allowing for the basic extruded area solids and revolved area solids.

</p>

<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric
 representation shall be used:</p>


<ul>

 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Body'</li>



 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'SweptSolid'</li>



 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcExtrudedAreaSolid</em>, <em>IfcRevolvedAreaSolid</em></li>


</ul>
]]></Body>
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Geometry" AttributeName="Items">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcSweptAreaSolid" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Name" />
                            <AttributeRule AttributeName="Description" />
                            <AttributeRule AttributeName="HasShapeAspects">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeAspect">
                                  <AttributeRules>
                                    <AttributeRule RuleID="ShapeName" AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="ShapeRepresentations">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcShapeRepresentation" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                  <SubTemplates>
                    <ConceptTemplate uuid="38710ccd-8ff5-41ba-8fda-08300907a02e" name="Body SweptSolid PolyCurve Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
                      <Definitions>
                        <Definition>
                          <Body><![CDATA[<p>The <em>Body SweptSolid PolyCurve Geometry</em> is the representation of the 3D shape of a product by swept solid models, only allowing for the basic extruded area solids and revolved area solids.

</p>

<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric
 representation shall be used:</p>


<ul>

 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Body'</li>



 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'SweptSolid'</li>



 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcExtrudedAreaSolid</em>, <em>IfcRevolvedAreaSolid</em></li>



 
<li><em>IfcShapeRepresentation</em><em>.Items[1..n].SweptArea</em> =
 <em>IfcArbitraryClosedProfileDef</em>, <em>IfcArbitraryProfileDefWithVoids</em></li>


 
<li><em>IfcShapeRepresentation</em><em>.Items[1..n].SweptArea.OuterCurve</em> =
 <em>IfcIndexedPolyCurve</em></li>

 
<li><em>IfcShapeRepresentation</em><em>.Items[1..n].SweptArea.InnerCurves</em> =
 <em>IfcIndexedPolyCurve</em></li>
</ul>
]]></Body>
                        </Definition>
                        <Definition>
                          <Body lang="tt"><![CDATA[]]></Body>
                          <Link lang="tt" category="definition" title="SEMIAUTOMATIC" href="" />
                        </Definition>
                      </Definitions>
                      <Rules>
                        <AttributeRule AttributeName="Representation">
                          <EntityRules>
                            <EntityRule EntityName="IfcProductDefinitionShape">
                              <AttributeRules>
                                <AttributeRule AttributeName="Representations">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcShapeRepresentation">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="ContextOfItems">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule RuleID="Geometry" AttributeName="Items">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcSweptAreaSolid">
                                              <References>
                                                <Template ref="394297ba-f77f-4107-a9cc-9ecb11744de6" />
                                              </References>
                                            </EntityRule>
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Name" />
                                <AttributeRule AttributeName="Description" />
                                <AttributeRule AttributeName="HasShapeAspects">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcShapeAspect">
                                      <AttributeRules>
                                        <AttributeRule RuleID="ShapeName" AttributeName="Name">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="ShapeRepresentations">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcShapeRepresentation" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Description">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcText" />
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </Rules>
                    </ConceptTemplate>
                  </SubTemplates>
                </ConceptTemplate>
                <ConceptTemplate uuid="5464785d-e5d1-4f75-9ecc-6cb39214705e" name="Body AdvancedSweptSolid Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Body AdvancedSweptSolid Geometry</em> is the representation of the 3D shape of a product by swept solid models, including advanced sweeping operations, such as sweeping along any directrix and tapering.

</p>

<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric
 representation shall be used:</p>

<ul>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Body'</li>


 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'AdvancedSweptSolid'</li>


 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcSweptAreaSolid</em>, <em>IfcSweptDiskSolid</em></li>

</ul>
]]></Body>
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel">
                                          <Constraints>
                                            <Constraint Expression="Type[Value] = 'AdvancedSweptSolid'" />
                                          </Constraints>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" />
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Name" />
                            <AttributeRule AttributeName="Description" />
                            <AttributeRule AttributeName="HasShapeAspects">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeAspect">
                                  <AttributeRules>
                                    <AttributeRule RuleID="ShapeName" AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="ShapeRepresentations">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcShapeRepresentation" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                  <SubTemplates>
                    <ConceptTemplate uuid="1c224429-1512-4000-bfff-19fd3129f1ab" name="Body Advanced Swept Disk PolyCurve Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
                      <Definitions>
                        <Definition>
                          <Body><![CDATA[<p>The <em>Body AdvancedSwept Disk Solid PolyCurve Geometry</em> is the representation of the 3D shape of a product by swept disk solid models, where the directrix is created by an indexed poly curve.

</p>

<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric
 representation shall be used:</p>


<ul>

 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Body'</li>



 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'AdvancedSweptSolid'</li>



 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcSweptDiskSolid</em>, <em>IfcSweptDiskSolidPolygonal</em></li>



 
<li><em>IfcShapeRepresentation</em><em>.Items[1..n].Directrix</em> =
 <em>IfcIndexedPolyCurve</em>
</ul>
]]></Body>
                        </Definition>
                        <Definition>
                          <Body lang="tt"><![CDATA[]]></Body>
                          <Link lang="tt" category="definition" title="SEMIAUTOMATIC" href="" />
                        </Definition>
                      </Definitions>
                      <Rules>
                        <AttributeRule AttributeName="Representation">
                          <EntityRules>
                            <EntityRule EntityName="IfcProductDefinitionShape">
                              <AttributeRules>
                                <AttributeRule AttributeName="Representations">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcShapeRepresentation">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="ContextOfItems">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel">
                                              <Constraints>
                                                <Constraint Expression="Type[Value] = 'AdvancedSweptSolid'" />
                                              </Constraints>
                                            </EntityRule>
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule RuleID="Items" AttributeName="Items">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcSweptDiskSolid">
                                              <References>
                                                <Template ref="62457eb3-66ff-4bbd-b503-794688544cba" />
                                              </References>
                                            </EntityRule>
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Name" />
                                <AttributeRule AttributeName="Description" />
                                <AttributeRule AttributeName="HasShapeAspects">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcShapeAspect">
                                      <AttributeRules>
                                        <AttributeRule RuleID="ShapeName" AttributeName="Name">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="ShapeRepresentations">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcShapeRepresentation" />
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Description">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcText" />
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </Rules>
                    </ConceptTemplate>
                  </SubTemplates>
                </ConceptTemplate>
                <ConceptTemplate uuid="6656c33f-2ce2-43de-89d6-a7ee1262b1a0" name="Body Geometry General" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Body SurfaceModel Geometry</em> is the representation of the 3D shape of a product by geometric items representing a solid.

 It comprises the existing concept templates "Body Tessellation Geometry", "Body SweptSolid Geometry", and "Mapped Solid Geometry". It is used if no particular geomertric item is requested, but any valid geometric item can be used to provide the "Body Geometry".</p>


<p>The following attribute values for the
 <em>IfcShapeRepresentation</em> holding this geometric
 representation shall be used:</p>

<ul>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Body'</li>


 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'Tessellation', 'SweptSolid', 'MappedRepresentation'</li>


 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcTessellateditem</em>, <em>IfcExtrudedAreaSolid</em>, <em>IfcRevolvedAreaSolid</em>, <em>
'IfcMappedItem'</em></li>

</ul>
]]></Body>
                    </Definition>
                    <Definition>
                      <Body lang="tt"><![CDATA[]]></Body>
                      <Link lang="tt" category="definition" title="SEMIAUTOMATIC" href="" />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Items">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcPolygonalFaceSet" />
                                        <EntityRule EntityName="IfcTriangulatedFaceSet" />
                                        <EntityRule EntityName="IfcExtrudedAreaSolid" />
                                        <EntityRule EntityName="IfcRevolvedAreaSolid" />
                                        <EntityRule EntityName="IfcMappedItem" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Name" />
                            <AttributeRule AttributeName="Description" />
                            <AttributeRule AttributeName="HasShapeAspects">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeAspect">
                                  <AttributeRules>
                                    <AttributeRule RuleID="ShapeName" AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="ShapeRepresentations">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcShapeRepresentation" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Description">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcText" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="0fdc2380-9ef0-41e9-b0dc-f01fd2f77e6c" name="Clearance Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Elements requiring surrounding space for clearance provide a 'Clearance' representation. The reason for clearance space may be due to ventilation, maintenance, or other purpose.  Examples of such elements include boilers and chillers.  Such representation may be used for interference checks, where the 'Clearance' representation must not intersect with the 'Body' representation of other objects, though may intersect with the 'Clearance' representation of other objects.
</p>
<p>The representation identifier of the clearance representation
 is:</p>

<ul>
 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
'Clearance'</li>


</ul>
]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Clearance" AttributeName="Value=Clearance" />
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Items" AttributeName="Items" />
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Name" />
                        <AttributeRule AttributeName="Description" />
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="ecfdd7c8-71d5-449f-bf20-e63a25dcb9ba" name="Mapped Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>
Elements may have a 'Mapped Geometry' representation
 that reuses the concept <em>Product Type Shape</em> at the corresponding product type, as defined by the concept <em>Object Typing</em>.</p> 

<p>The representation identifier of the mapped geometry representation
 is any of the other valid geometric representation identifiers, such as 'Body', 'FootPrint', or 'Axis'.</p>

<ul>

 
<li><em>IfcShapeRepresentation</em><em>.RepresentationIdentifier</em> =
 (any, see above)</li>



 
<li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> =
'MappedRepresentation'</li>



</ul>
]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Items">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMappedItem">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="MappingSource">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcRepresentationMap">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="MappingOrigin">
                                                  <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>
                                                <AttributeRule AttributeName="MappedRepresentation">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcShapeRepresentation" />
                                                  </EntityRules>
                                                </AttributeRule>
                                              </AttributeRules>
                                            </EntityRule>
                                          </EntityRules>
                                        </AttributeRule>
                                        <AttributeRule AttributeName="MappingTarget">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcCartesianTransformationOperator3D">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Axis1">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcDirection" />
                                                  </EntityRules>
                                                </AttributeRule>
                                                <AttributeRule AttributeName="Axis2">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcDirection" />
                                                  </EntityRules>
                                                </AttributeRule>
                                                <AttributeRule AttributeName="LocalOrigin">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcCartesianPoint" />
                                                  </EntityRules>
                                                </AttributeRule>
                                                <AttributeRule AttributeName="Axis3">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcDirection" />
                                                  </EntityRules>
                                                </AttributeRule>
                                                <AttributeRule AttributeName="Scale" />
                                              </AttributeRules>
                                            </EntityRule>
                                            <EntityRule EntityName="IfcCartesianTransformationOperator3DnonUniform">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Scale2" />
                                                <AttributeRule AttributeName="Scale3" />
                                              </AttributeRules>
                                            </EntityRule>
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Name" />
                        <AttributeRule AttributeName="Description" />
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="IsTypedBy">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelDefinesByType">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingType">
                          <EntityRules>
                            <EntityRule EntityName="IfcTypeProduct">
                              <AttributeRules>
                                <AttributeRule AttributeName="RepresentationMaps">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcRepresentationMap" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="79a0d5e1-02ae-41d1-a51d-49a22c5b0a14" name="Product Geometry Layer" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
          <Rules>
            <AttributeRule AttributeName="Representation">
              <EntityRules>
                <EntityRule EntityName="IfcProductDefinitionShape">
                  <AttributeRules>
                    <AttributeRule AttributeName="Representations">
                      <EntityRules>
                        <EntityRule EntityName="IfcShapeRepresentation">
                          <AttributeRules>
                            <AttributeRule AttributeName="LayerAssignments">
                              <EntityRules>
                                <EntityRule EntityName="IfcPresentationLayerAssignment">
                                  <References>
                                    <Template ref="99ffb0d4-ada2-4b79-aa01-943fa3d834f1" />
                                  </References>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
        <ConceptTemplate uuid="bb040be6-824a-4e78-9814-1177b257fdc9" name="Product Geometry Colour" status="sample" applicableSchema="IFC4" applicableEntity="IfcProduct">
          <Definitions>
            <Definition>
              <Body><![CDATA[The surface colour of the geometry.]]></Body>
            </Definition>
            <Definition>
              <Body lang="tt"><![CDATA[]]></Body>
              <Link lang="tt" category="definition" title="MANUAL" href="" />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="Representation">
              <EntityRules>
                <EntityRule EntityName="IfcProductDefinitionShape">
                  <AttributeRules>
                    <AttributeRule AttributeName="Representations">
                      <EntityRules>
                        <EntityRule EntityName="IfcShapeRepresentation">
                          <AttributeRules>
                            <AttributeRule AttributeName="Items">
                              <EntityRules>
                                <EntityRule EntityName="IfcSolidModel">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="StyledByItem">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcStyledItem">
                                          <AttributeRules>
                                            <AttributeRule AttributeName="Styles">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcSurfaceStyle">
                                                  <References>
                                                    <Template ref="ea473562-c1e5-4dc7-ad75-ff3492576e36" />
                                                  </References>
                                                </EntityRule>
                                              </EntityRules>
                                            </AttributeRule>
                                          </AttributeRules>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                                <EntityRule EntityName="IfcTessellatedFaceSet">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="HasColours">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIndexedColourMap">
                                          <AttributeRules>
                                            <AttributeRule AttributeName="Opacity">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Colours">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcColourRgbList" />
                                              </EntityRules>
                                            </AttributeRule>
                                            <AttributeRule AttributeName="ColourIndex">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcPositiveInteger" />
                                              </EntityRules>
                                            </AttributeRule>
                                          </AttributeRules>
                                        </EntityRule>
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="a322fdd7-cd28-4ea7-8797-f6cf124ab3d6" name="Partial Templates" status="sample" applicableSchema="IFC4">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>Partial concept templates are described herein to indicate usage of common data types, which are then incorporated into other templates.</p>]]></Body>
        </Definition>
      </Definitions>
      <SubTemplates>
        <ConceptTemplate uuid="99ffb0d4-ada2-4b79-aa01-943fa3d834f1" name="Layer" status="sample" applicableSchema="IFC4" applicableEntity="IfcPresentationLayerAssignment">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Presentation layers may be used to organize geometry into groups that may be shown or hidden. Such designation is only for viewing and editing purposes and does not imply any semantic meaning.</p>]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="LayerName" AttributeName="Name">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="Description">
              <EntityRules>
                <EntityRule EntityName="IfcText" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="AssignedItems">
              <EntityRules>
                <EntityRule EntityName="IfcLayeredItem" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule RuleID="LayerIdentifier" AttributeName="Identifier">
              <EntityRules>
                <EntityRule EntityName="IfcIdentifier" />
              </EntityRules>
            </AttributeRule>
          </Rules>
        </ConceptTemplate>
        <ConceptTemplate uuid="88b4aaa9-0925-447c-b009-fe357b7c754e" name="Values" status="sample" applicableSchema="IFC4" applicableEntity="IfcSimpleProperty">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Properties may contain user-defined data, where data types are open-ended.</p>]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="PropertyName" AttributeName="Name">
              <EntityRules>
                <EntityRule EntityName="IfcIdentifier" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="Description">
              <EntityRules>
                <EntityRule EntityName="IfcText" />
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="6655f6d0-29a8-47b8-8f3d-c9fce9c9a620" name="Single Value" status="sample" owner="System" applicableSchema="IFC4" applicableEntity="IfcPropertySingleValue">
              <Rules>
                <AttributeRule RuleID="PropertyName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcIdentifier" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="Value" AttributeName="NominalValue">
                  <EntityRules>
                    <EntityRule EntityName="IfcValue" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="3d67a2d2-761d-44d9-a09e-b7fbb1fa5632" name="Bounded Value" status="sample" owner="System" applicableSchema="IFC4" applicableEntity="IfcPropertyBoundedValue">
              <Rules>
                <AttributeRule RuleID="PropertyName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcIdentifier" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="UpperValue" AttributeName="UpperBoundValue">
                  <EntityRules>
                    <EntityRule EntityName="IfcValue" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="LowerValue" AttributeName="LowerBoundValue">
                  <EntityRules>
                    <EntityRule EntityName="IfcValue" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="SetValue" AttributeName="SetPointValue">
                  <EntityRules>
                    <EntityRule EntityName="IfcValue" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="c148a099-c351-43a8-9266-5f3de0b45a95" name="Enumerated Value" status="sample" owner="System" applicableSchema="IFC4" applicableEntity="IfcPropertyEnumeratedValue">
              <Rules>
                <AttributeRule RuleID="PropertyName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcIdentifier" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="Value" AttributeName="EnumerationValues">
                  <EntityRules>
                    <EntityRule EntityName="IfcValue" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="EnumerationReference">
                  <EntityRules>
                    <EntityRule EntityName="IfcPropertyEnumeration">
                      <AttributeRules>
                        <AttributeRule RuleID="Reference" AttributeName="Name">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" />
                          </EntityRules>
                        </AttributeRule>
                      </AttributeRules>
                    </EntityRule>
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="8e10b688-9179-4e3a-8db2-6abcaafe952d" name="List Value" status="sample" applicableSchema="IFC4" applicableEntity="IfcPropertyListValue">
              <Rules>
                <AttributeRule RuleID="PropertyName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcIdentifier" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="Value" AttributeName="ListValues">
                  <EntityRules>
                    <EntityRule EntityName="IfcValue" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="35c947b0-6abc-4b13-8ec7-696ef2041721" name="Table Value" status="sample" applicableSchema="IFC4" applicableEntity="IfcPropertyTableValue">
              <Rules>
                <AttributeRule RuleID="PropertyName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcIdentifier" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="Value" AttributeName="DefiningValues">
                  <EntityRules>
                    <EntityRule EntityName="IfcValue" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="Reference" AttributeName="DefinedValues">
                  <EntityRules>
                    <EntityRule EntityName="IfcValue" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Expression">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="CurveInterpolation">
                  <EntityRules>
                    <EntityRule EntityName="IfcCurveInterpolationEnum" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="6c03e465-c5dd-42ce-9412-bebacabd2f3b" name="Quantities" status="sample" applicableSchema="IFC4" applicableEntity="IfcPhysicalSimpleQuantity">
          <Rules>
            <AttributeRule RuleID="QuantityName" AttributeName="Name">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="dd8678e1-e300-4f70-9d63-e539db4bd11c" name="Length Quantity" status="sample" applicableSchema="IFC4" applicableEntity="IfcQuantityLength">
              <Rules>
                <AttributeRule RuleID="QuantityName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="LengthValue" AttributeName="LengthValue">
                  <EntityRules>
                    <EntityRule EntityName="IfcLengthMeasure" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Formula">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="65ac4747-6eff-437e-94e2-643fd4e3bf86" name="Area Quantity" status="sample" applicableSchema="IFC4" applicableEntity="IfcQuantityArea">
              <Rules>
                <AttributeRule RuleID="QuantityName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="AreaValue" AttributeName="AreaValue">
                  <EntityRules>
                    <EntityRule EntityName="IfcAreaMeasure" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Formula">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="6491a3b0-b7e9-412a-8226-bcd91c2b0b0e" name="Volume Quantity" status="sample" applicableSchema="IFC4" applicableEntity="IfcQuantityVolume">
              <Rules>
                <AttributeRule RuleID="QuantityName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="VolumeValue" AttributeName="VolumeValue">
                  <EntityRules>
                    <EntityRule EntityName="IfcVolumeMeasure" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Formula">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="e1016e56-3c89-4f42-9679-07e1db3c0afb" name="Weight Quantity" status="sample" applicableSchema="IFC4" applicableEntity="IfcQuantityWeight">
              <Rules>
                <AttributeRule RuleID="QuantityName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="WeightValue" AttributeName="WeightValue">
                  <EntityRules>
                    <EntityRule EntityName="IfcMassMeasure" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Formula">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="8aaeff32-572c-4f6a-ac64-e2151663cbf1" name="Count Quantity" status="sample" applicableSchema="IFC4" applicableEntity="IfcQuantityCount">
              <Rules>
                <AttributeRule RuleID="QuantityName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="CountValue" AttributeName="CountValue">
                  <EntityRules>
                    <EntityRule EntityName="IfcCountMeasure" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Formula">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
            <ConceptTemplate uuid="43c4c050-04de-4b0f-9e43-708bd98201a8" name="Time Quantity" status="sample" applicableSchema="IFC4" applicableEntity="IfcQuantityTime">
              <Rules>
                <AttributeRule RuleID="QuantityName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule RuleID="TimeValue" AttributeName="TimeValue">
                  <EntityRules>
                    <EntityRule EntityName="IfcTimeMeasure" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Formula">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="eb31a93d-2f08-495f-ac72-6f7d6023a9db" name="Profile Definition" status="sample" applicableSchema="IFC4" applicableEntity="IfcProfileDef">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Profiles are used to describe cross-sections of swept solid geometry.</p>]]></Body>
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="ProfileType">
              <EntityRules>
                <EntityRule EntityName="IfcProfileTypeEnum" />
              </EntityRules>
            </AttributeRule>
            <AttributeRule AttributeName="ProfileName">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="c375c12b-7e67-435f-8b70-b581db356991" name="Arbitrary Profile Definition" status="sample" applicableSchema="IFC4" applicableEntity="IfcProfileDef">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Arbitrary profile defintions are used to describe cross-sections of swept solid geometry using curve segments defined by closed two-dimensional curves.</p>]]></Body>
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="ProfileType">
                  <EntityRules>
                    <EntityRule EntityName="IfcProfileTypeEnum" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="ProfileName">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="0373a86a-1387-45bd-bf09-bb3cc39092d9" name="PolyCurve Profile Definition" status="sample" applicableSchema="IFC4" applicableEntity="IfcArbitraryClosedProfileDef">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>Poly curve profile definitons define the closed two-dimensional curve used for the cross-section by a indexed poly curve having straight and circular arc segments.</p>

<blockquote class="note">NOTE&nbsp; The indexed poly curve has been introduced to provide a less complex and less data set size consuming definition compared to the composite curve.</blockquote>]]></Body>
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="ProfileType">
                      <EntityRules>
                        <EntityRule EntityName="IfcProfileTypeEnum" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="ProfileName">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="OuterCurve">
                      <EntityRules>
                        <EntityRule EntityName="IfcIndexedPolyCurve">
                          <AttributeRules>
                            <AttributeRule AttributeName="Points">
                              <EntityRules>
                                <EntityRule EntityName="IfcCartesianPointList2D" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Segments">
                              <EntityRules>
                                <EntityRule EntityName="IfcLineIndex" />
                                <EntityRule EntityName="IfcArcIndex" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="SelfIntersect">
                              <EntityRules>
                                <EntityRule EntityName="IfcBoolean" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
                <ConceptTemplate uuid="d3b8661b-e65b-4077-adc7-c6742d219691" name="PolyCurve with Voids Profile Definition" status="sample" applicableSchema="IFC4" applicableEntity="IfcArbitraryProfileDefWithVoids">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>Poly curve profile definitons define the closed two-dimensional curve used for the cross-section by a indexed poly curve having straight and circular arc segments.</p>

<blockquote class="note">NOTE&nbsp; The indexed poly curve has been introduced to provide a less complex and less data set size consuming definition compared to the composite curve.</blockquote>]]></Body>
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="ProfileType">
                      <EntityRules>
                        <EntityRule EntityName="IfcProfileTypeEnum" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="ProfileName">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="OuterCurve">
                      <EntityRules>
                        <EntityRule EntityName="IfcIndexedPolyCurve">
                          <AttributeRules>
                            <AttributeRule AttributeName="Points">
                              <EntityRules>
                                <EntityRule EntityName="IfcCartesianPointList2D" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Segments">
                              <EntityRules>
                                <EntityRule EntityName="IfcArcIndex" />
                                <EntityRule EntityName="IfcLineIndex" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="SelfIntersect">
                              <EntityRules>
                                <EntityRule EntityName="IfcBoolean" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="InnerCurves">
                      <EntityRules>
                        <EntityRule EntityName="IfcIndexedPolyCurve" />
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="f77f739d-c1f1-4bc5-95c3-b7585e0a9f54" name="Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcGeometricRepresentationItem">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Geometric items are used to describe shape representations of products.</p>]]></Body>
            </Definition>
          </Definitions>
          <SubTemplates>
            <ConceptTemplate uuid="93164c8d-4929-4c01-b9b3-f2ec2fdb6da3" name="Solid Model Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcSolidModel">
              <SubTemplates>
                <ConceptTemplate uuid="e3b43dbe-c09f-485e-aceb-f330311d35ce" name="Swept Solid Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcSweptAreaSolid">
                  <Rules>
                    <AttributeRule RuleID="Profile" AttributeName="SweptArea">
                      <EntityRules>
                        <EntityRule EntityName="IfcProfileDef" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="StyledByItem">
                      <EntityRules>
                        <EntityRule EntityName="IfcStyledItem">
                          <AttributeRules>
                            <AttributeRule AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Styles">
                              <EntityRules>
                                <EntityRule EntityName="IfcSurfaceStyle">
                                  <References>
                                    <Template ref="ea473562-c1e5-4dc7-ad75-ff3492576e36" />
                                  </References>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                  <SubTemplates>
                    <ConceptTemplate uuid="a780bd37-4a7a-4cce-b947-4a6678487bda" name="Extruded Area Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcExtrudedAreaSolid">
                      <Rules>
                        <AttributeRule AttributeName="Position">
                          <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>
                        <AttributeRule AttributeName="ExtrudedDirection">
                          <EntityRules>
                            <EntityRule EntityName="IfcDirection" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Depth">
                          <EntityRules>
                            <EntityRule EntityName="IfcPositiveLengthMeasure" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule RuleID="Profile" AttributeName="SweptArea">
                          <EntityRules>
                            <EntityRule EntityName="IfcProfileDef" />
                            <EntityRule EntityName="IfcProfileDef" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="StyledByItem">
                          <EntityRules>
                            <EntityRule EntityName="IfcStyledItem">
                              <AttributeRules>
                                <AttributeRule AttributeName="Styles">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcSurfaceStyle" />
                                    <EntityRule EntityName="IfcSurfaceStyle" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Name">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                            <EntityRule EntityName="IfcStyledItem" />
                          </EntityRules>
                        </AttributeRule>
                      </Rules>
                      <SubTemplates>
                        <ConceptTemplate uuid="394297ba-f77f-4107-a9cc-9ecb11744de6" name="Extruded Area PolyCurve Profile" status="sample" applicableSchema="IFC4" applicableEntity="IfcExtrudedAreaSolid">
                          <Rules>
                            <AttributeRule AttributeName="Position">
                              <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>
                            <AttributeRule AttributeName="ExtrudedDirection">
                              <EntityRules>
                                <EntityRule EntityName="IfcDirection" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Depth">
                              <EntityRules>
                                <EntityRule EntityName="IfcPositiveLengthMeasure" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="Profile" AttributeName="SweptArea">
                              <EntityRules>
                                <EntityRule EntityName="IfcArbitraryClosedProfileDef">
                                  <References>
                                    <Template ref="0373a86a-1387-45bd-bf09-bb3cc39092d9" />
                                  </References>
                                </EntityRule>
                                <EntityRule EntityName="IfcArbitraryProfileDefWithVoids">
                                  <References>
                                    <Template ref="d3b8661b-e65b-4077-adc7-c6742d219691" />
                                  </References>
                                </EntityRule>
                                <EntityRule EntityName="IfcProfileDef" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="StyledByItem">
                              <EntityRules>
                                <EntityRule EntityName="IfcStyledItem">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Styles">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcSurfaceStyle" />
                                        <EntityRule EntityName="IfcSurfaceStyle" />
                                        <EntityRule EntityName="IfcSurfaceStyle" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                        <EntityRule EntityName="IfcLabel" />
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                                <EntityRule EntityName="IfcStyledItem" />
                                <EntityRule EntityName="IfcStyledItem" />
                              </EntityRules>
                            </AttributeRule>
                          </Rules>
                        </ConceptTemplate>
                      </SubTemplates>
                    </ConceptTemplate>
                    <ConceptTemplate uuid="c1529bd2-e85a-4748-bc9f-98ba0a730c35" name="Revolved Area Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcRevolvedAreaSolid">
                      <Rules>
                        <AttributeRule AttributeName="Position">
                          <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>
                        <AttributeRule AttributeName="Axis">
                          <EntityRules>
                            <EntityRule EntityName="IfcAxis1Placement" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Angle">
                          <EntityRules>
                            <EntityRule EntityName="IfcPlaneAngleMeasure" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule RuleID="Profile" AttributeName="SweptArea">
                          <EntityRules>
                            <EntityRule EntityName="IfcProfileDef" />
                            <EntityRule EntityName="IfcProfileDef" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="StyledByItem">
                          <EntityRules>
                            <EntityRule EntityName="IfcStyledItem">
                              <AttributeRules>
                                <AttributeRule AttributeName="Styles">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcSurfaceStyle" />
                                    <EntityRule EntityName="IfcSurfaceStyle" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Name">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                            <EntityRule EntityName="IfcStyledItem" />
                          </EntityRules>
                        </AttributeRule>
                      </Rules>
                      <SubTemplates>
                        <ConceptTemplate uuid="38ca694b-42e0-47ed-b529-e5184a65c04c" name="Revolved Area PolyCurve Profile" status="sample" applicableSchema="IFC4" applicableEntity="IfcRevolvedAreaSolid">
                          <Rules>
                            <AttributeRule AttributeName="Position">
                              <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>
                            <AttributeRule AttributeName="Axis">
                              <EntityRules>
                                <EntityRule EntityName="IfcAxis1Placement">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Location">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcCartesianPoint" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Axis">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcDirection" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Angle">
                              <EntityRules>
                                <EntityRule EntityName="IfcPlaneAngleMeasure" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule RuleID="Profile" AttributeName="SweptArea">
                              <EntityRules>
                                <EntityRule EntityName="IfcArbitraryProfileDefWithVoids">
                                  <References>
                                    <Template ref="d3b8661b-e65b-4077-adc7-c6742d219691" />
                                  </References>
                                </EntityRule>
                                <EntityRule EntityName="IfcProfileDef" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="StyledByItem">
                              <EntityRules>
                                <EntityRule EntityName="IfcStyledItem">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Styles">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcSurfaceStyle" />
                                        <EntityRule EntityName="IfcSurfaceStyle" />
                                        <EntityRule EntityName="IfcSurfaceStyle" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                        <EntityRule EntityName="IfcLabel" />
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                                <EntityRule EntityName="IfcStyledItem" />
                                <EntityRule EntityName="IfcStyledItem" />
                              </EntityRules>
                            </AttributeRule>
                          </Rules>
                        </ConceptTemplate>
                      </SubTemplates>
                    </ConceptTemplate>
                  </SubTemplates>
                </ConceptTemplate>
                <ConceptTemplate uuid="8024f320-16dc-4c01-83d5-f211088951ed" name="Swept Disk Solid Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcSweptDiskSolid">
                  <Rules>
                    <AttributeRule AttributeName="Directrix" />
                    <AttributeRule AttributeName="Radius">
                      <EntityRules>
                        <EntityRule EntityName="IfcPositiveLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="InnerRadius">
                      <EntityRules>
                        <EntityRule EntityName="IfcPositiveLengthMeasure" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="StartParam">
                      <EntityRules>
                        <EntityRule EntityName="IfcParameterValue" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="EndParam">
                      <EntityRules>
                        <EntityRule EntityName="IfcParameterValue" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="StyledByItem">
                      <EntityRules>
                        <EntityRule EntityName="IfcStyledItem">
                          <AttributeRules>
                            <AttributeRule AttributeName="Name">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Styles">
                              <EntityRules>
                                <EntityRule EntityName="IfcSurfaceStyle">
                                  <References>
                                    <Template ref="ea473562-c1e5-4dc7-ad75-ff3492576e36" />
                                  </References>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                  <SubTemplates>
                    <ConceptTemplate uuid="62457eb3-66ff-4bbd-b503-794688544cba" name="Swept Disk Solid PolyCurve Directrix" status="sample" applicableSchema="IFC4" applicableEntity="IfcSweptDiskSolid">
                      <Rules>
                        <AttributeRule AttributeName="Directrix">
                          <EntityRules>
                            <EntityRule EntityName="IfcIndexedPolyCurve">
                              <AttributeRules>
                                <AttributeRule AttributeName="Points">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcCartesianPointList3D" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Segments">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcArcIndex" />
                                    <EntityRule EntityName="IfcLineIndex" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Radius">
                          <EntityRules>
                            <EntityRule EntityName="IfcPositiveLengthMeasure" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="InnerRadius">
                          <EntityRules>
                            <EntityRule EntityName="IfcPositiveLengthMeasure" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="StartParam">
                          <EntityRules>
                            <EntityRule EntityName="IfcParameterValue" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="EndParam">
                          <EntityRules>
                            <EntityRule EntityName="IfcParameterValue" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="StyledByItem">
                          <EntityRules>
                            <EntityRule EntityName="IfcStyledItem">
                              <AttributeRules>
                                <AttributeRule AttributeName="Styles">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcSurfaceStyle" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Name">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" />
                                    <EntityRule EntityName="IfcLabel" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </Rules>
                    </ConceptTemplate>
                  </SubTemplates>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="66059531-56c6-4010-9065-c8cbd379767b" name="Surface Model Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcGeometricRepresentationItem">
              <SubTemplates>
                <ConceptTemplate uuid="a46de0c5-20f2-4f88-b037-5fb255182827" name="Tessellated Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcTessellatedFaceSet">
                  <SubTemplates>
                    <ConceptTemplate uuid="677bd4ce-e38b-4581-b40d-c9eaa2416971" name="Triangulated Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcTriangulatedFaceSet">
                      <Rules>
                        <AttributeRule AttributeName="Coordinates">
                          <EntityRules>
                            <EntityRule EntityName="IfcCartesianPointList3D">
                              <AttributeRules>
                                <AttributeRule AttributeName="CoordList">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLengthMeasure" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Normals">
                          <EntityRules>
                            <EntityRule EntityName="IfcParameterValue" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule RuleID="Closed" AttributeName="Closed">
                          <EntityRules>
                            <EntityRule EntityName="IfcBoolean" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="CoordIndex">
                          <EntityRules>
                            <EntityRule EntityName="IfcPositiveInteger" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="PnIndex">
                          <EntityRules>
                            <EntityRule EntityName="IfcPositiveInteger" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="HasColours">
                          <EntityRules>
                            <EntityRule EntityName="IfcIndexedColourMap">
                              <AttributeRules>
                                <AttributeRule AttributeName="Colours">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcColourRgbList">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="ColourList">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="ColourIndex">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPositiveInteger" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Opacity">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </Rules>
                    </ConceptTemplate>
                    <ConceptTemplate uuid="72c0b316-6b48-478d-91fa-6e4b5a781b07" name="Polygonal Geometry" status="sample" applicableSchema="IFC4" applicableEntity="IfcPolygonalFaceSet">
                      <Rules>
                        <AttributeRule AttributeName="Coordinates">
                          <EntityRules>
                            <EntityRule EntityName="IfcCartesianPointList3D">
                              <AttributeRules>
                                <AttributeRule AttributeName="CoordList">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLengthMeasure" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule RuleID="Closed" AttributeName="Closed">
                          <EntityRules>
                            <EntityRule EntityName="IfcBoolean" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="Faces">
                          <EntityRules>
                            <EntityRule EntityName="IfcIndexedPolygonalFace">
                              <AttributeRules>
                                <AttributeRule AttributeName="CoordIndex">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPositiveInteger" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                            <EntityRule EntityName="IfcIndexedPolygonalFaceWithVoids">
                              <AttributeRules>
                                <AttributeRule AttributeName="CoordIndex">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPositiveInteger" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="InnerCoordIndices">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPositiveInteger" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="PnIndex">
                          <EntityRules>
                            <EntityRule EntityName="IfcPositiveInteger" />
                          </EntityRules>
                        </AttributeRule>
                        <AttributeRule AttributeName="HasColours">
                          <EntityRules>
                            <EntityRule EntityName="IfcIndexedColourMap">
                              <AttributeRules>
                                <AttributeRule AttributeName="Opacity">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="Colours">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcColourRgbList">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="ColourList">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                          </EntityRules>
                                        </AttributeRule>
                                      </AttributeRules>
                                    </EntityRule>
                                  </EntityRules>
                                </AttributeRule>
                                <AttributeRule AttributeName="ColourIndex">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPositiveInteger" />
                                  </EntityRules>
                                </AttributeRule>
                              </AttributeRules>
                            </EntityRule>
                          </EntityRules>
                        </AttributeRule>
                      </Rules>
                    </ConceptTemplate>
                  </SubTemplates>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="d795e480-777d-4e81-9482-08066f67d23e" name="Geometry Styles" status="sample" applicableSchema="IFC4" applicableEntity="IfcPresentationStyle">
          <Rules>
            <AttributeRule AttributeName="Name">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" />
              </EntityRules>
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="c3a806fc-db56-41dd-9b33-2e85c08692b2" name="Geometry Surface Style" status="sample" applicableSchema="IFC4" applicableEntity="IfcPresentationStyle">
              <SubTemplates>
                <ConceptTemplate uuid="ea473562-c1e5-4dc7-ad75-ff3492576e36" name="Surface Color Style" status="sample" applicableSchema="IFC4" applicableEntity="IfcSurfaceStyle">
                  <Rules>
                    <AttributeRule AttributeName="Styles">
                      <EntityRules>
                        <EntityRule EntityName="IfcSurfaceStyleShading">
                          <AttributeRules>
                            <AttributeRule AttributeName="SurfaceColour">
                              <EntityRules>
                                <EntityRule EntityName="IfcColourRgb" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                        <EntityRule EntityName="IfcSurfaceStyleRendering">
                          <AttributeRules>
                            <AttributeRule AttributeName="SurfaceColour">
                              <EntityRules>
                                <EntityRule EntityName="IfcColourRgb">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Name">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Red">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Green">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                      </EntityRules>
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Blue">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="Transparency">
                              <EntityRules>
                                <EntityRule EntityName="IfcNormalisedRatioMeasure" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="DiffuseColour">
                              <EntityRules>
                                <EntityRule EntityName="IfcColourOrFactor" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="TransmissionColour">
                              <EntityRules>
                                <EntityRule EntityName="IfcColourOrFactor" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="DiffuseTransmissionColour">
                              <EntityRules>
                                <EntityRule EntityName="IfcColourOrFactor" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="ReflectionColour">
                              <EntityRules>
                                <EntityRule EntityName="IfcColourOrFactor" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="SpecularColour">
                              <EntityRules>
                                <EntityRule EntityName="IfcColourOrFactor" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="SpecularHighlight">
                              <EntityRules>
                                <EntityRule EntityName="IfcSpecularExponent" />
                              </EntityRules>
                            </AttributeRule>
                            <AttributeRule AttributeName="ReflectanceMethod">
                              <EntityRules>
                                <EntityRule EntityName="IfcReflectanceMethodEnum" />
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="Name">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="Side">
                      <EntityRules>
                        <EntityRule EntityName="IfcSurfaceSide" />
                      </EntityRules>
                    </AttributeRule>
                  </Rules>
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="d9ea8f0e-f629-46b2-adf5-941da7bcc8bc" name="Material Definition" status="sample" applicableSchema="IFC4" applicableEntity="IfcMaterialDefinition">
          <SubTemplates>
            <ConceptTemplate uuid="5986b61a-b79f-44e0-a93f-9fddf470a4e1" name="Material" status="sample" applicableSchema="IFC4" applicableEntity="IfcMaterial">
              <Rules>
                <AttributeRule RuleID="MaterialName" AttributeName="Name">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Description">
                  <EntityRules>
                    <EntityRule EntityName="IfcText" />
                  </EntityRules>
                </AttributeRule>
                <AttributeRule AttributeName="Category">
                  <EntityRules>
                    <EntityRule EntityName="IfcLabel" />
                  </EntityRules>
                </AttributeRule>
              </Rules>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="00000000-0000-0000-0000-000000000000" name="_Reference View" code="86aa67de-829b-467b-9cd8-dd364beabe79" status="sample" applicableSchema="IFC4">
      <SubTemplates>
        <ConceptTemplate uuid="efca410b-49d4-4e76-a6c9-18f258465d5c" status="sample" applicableSchema="IFC4" applicableEntity="IfcActuator" />
        <ConceptTemplate uuid="13c1f742-eb08-4a19-ab9f-b359f97c7d58" status="sample" applicableSchema="IFC4" applicableEntity="IfcAirTerminalBox" />
        <ConceptTemplate uuid="e9f4c678-69f3-4ff9-ac64-0a52cc964bbc" status="sample" applicableSchema="IFC4" applicableEntity="IfcAirTerminal" />
        <ConceptTemplate uuid="6dd5e667-f86f-4e0a-8fa4-806e58785fc7" status="sample" applicableSchema="IFC4" applicableEntity="IfcAirToAirHeatRecovery" />
        <ConceptTemplate uuid="d4fba30d-3f7c-40c2-ab05-e6c72a28d416" status="sample" applicableSchema="IFC4" applicableEntity="IfcAlarm" />
        <ConceptTemplate uuid="d6b08536-3375-4685-9461-965343ec5bf2" status="sample" applicableSchema="IFC4" applicableEntity="IfcAudioVisualAppliance" />
        <ConceptTemplate uuid="334f37c1-745e-47cb-ad30-80e3bfc4a0d6" status="sample" applicableSchema="IFC4" applicableEntity="IfcBeam" />
        <ConceptTemplate uuid="ba0e9fbf-5561-4d32-aac0-fa54140d19c3" status="sample" applicableSchema="IFC4" applicableEntity="IfcBoiler" />
        <ConceptTemplate uuid="b3eb98ea-871c-4be5-8280-224af86f9db7" status="sample" applicableSchema="IFC4" applicableEntity="IfcBuilding" />
        <ConceptTemplate uuid="f4abfc50-074e-46a9-be2d-9df0242e9d0a" status="sample" applicableSchema="IFC4" applicableEntity="IfcBuildingElementPart" />
        <ConceptTemplate uuid="08d91e70-6882-460d-a52c-b7b7cfb79799" status="sample" applicableSchema="IFC4" applicableEntity="IfcBuildingElementProxy" />
        <ConceptTemplate uuid="4266f86b-6221-4cfe-8ed0-8845bb43999a" status="sample" applicableSchema="IFC4" applicableEntity="IfcBuildingStorey" />
        <ConceptTemplate uuid="8793733c-50b5-4da8-ba67-2d1562749e20" status="sample" applicableSchema="IFC4" applicableEntity="IfcBuildingSystem" />
        <ConceptTemplate uuid="3c505b88-ecd1-400a-9f61-626c99ae1785" status="sample" applicableSchema="IFC4" applicableEntity="IfcBurner" />
        <ConceptTemplate uuid="75462ff8-b282-417d-ae30-99b7d1678b26" status="sample" applicableSchema="IFC4" applicableEntity="IfcCableCarrierFitting" />
        <ConceptTemplate uuid="a87e72c1-27b0-44f9-8373-8a891924edd7" status="sample" applicableSchema="IFC4" applicableEntity="IfcCableCarrierSegment" />
        <ConceptTemplate uuid="02eb0f30-e598-4414-8a00-0bffba1825de" status="sample" applicableSchema="IFC4" applicableEntity="IfcCableFitting" />
        <ConceptTemplate uuid="8fb6b55a-d1ad-4d1c-a867-15d5221d5021" status="sample" applicableSchema="IFC4" applicableEntity="IfcCableSegment" />
        <ConceptTemplate uuid="caff51a1-80fc-47dd-b1d4-dfa9c5d4a32a" status="sample" applicableSchema="IFC4" applicableEntity="IfcChiller" />
        <ConceptTemplate uuid="4fea6d16-a4ac-47c6-aa7f-fe81d4f183b9" status="sample" applicableSchema="IFC4" applicableEntity="IfcChimney" />
        <ConceptTemplate uuid="684ef372-07b4-4a31-a8f5-fca6af424a15" status="sample" applicableSchema="IFC4" applicableEntity="IfcCivilElement" />
        <ConceptTemplate uuid="802edf2b-c9c4-4702-ad82-90bda151b100" status="sample" applicableSchema="IFC4" applicableEntity="IfcCoil" />
        <ConceptTemplate uuid="2074c5a0-9087-4bae-b833-cd21bd887fc4" status="sample" applicableSchema="IFC4" applicableEntity="IfcColumn" />
        <ConceptTemplate uuid="4f946e93-3ea8-42a2-99fb-f7abc41e96e8" status="sample" applicableSchema="IFC4" applicableEntity="IfcCommunicationsAppliance" />
        <ConceptTemplate uuid="72cc570b-b75b-4d1f-8a15-e5042a999d6e" status="sample" applicableSchema="IFC4" applicableEntity="IfcCompressor" />
        <ConceptTemplate uuid="84e096d6-523e-4a76-810e-12ab821b5781" status="sample" applicableSchema="IFC4" applicableEntity="IfcCondenser" />
        <ConceptTemplate uuid="6336fce1-c7cc-4708-9f8c-89527cd3ac6a" status="sample" applicableSchema="IFC4" applicableEntity="IfcController" />
        <ConceptTemplate uuid="e9e1bb73-a062-4440-8b0e-a4a42ab1f478" status="sample" applicableSchema="IFC4" applicableEntity="IfcCooledBeam" />
        <ConceptTemplate uuid="56f59d04-728a-4e82-a269-e4723b765abf" status="sample" applicableSchema="IFC4" applicableEntity="IfcCoolingTower" />
        <ConceptTemplate uuid="fe55dbe3-f43a-420e-88f4-8745e7f90723" status="sample" applicableSchema="IFC4" applicableEntity="IfcCovering" />
        <ConceptTemplate uuid="664e7d3e-0cdc-42bb-ab1c-4b8640df00b4" status="sample" applicableSchema="IFC4" applicableEntity="IfcCurtainWall" />
        <ConceptTemplate uuid="4e0e04b9-6514-4492-8ea0-718d7f34b1ce" status="sample" applicableSchema="IFC4" applicableEntity="IfcDamper" />
        <ConceptTemplate uuid="e7416193-8457-4952-9e44-1f063e97bb7f" status="sample" applicableSchema="IFC4" applicableEntity="IfcDiscreteAccessory" />
        <ConceptTemplate uuid="6fe1fe5d-af0d-4721-ac18-8a0ff8887716" status="sample" applicableSchema="IFC4" applicableEntity="IfcDistributionChamberElement" />
        <ConceptTemplate uuid="3ab5860e-61a9-45ae-a337-a16a2f4a2ea1" status="sample" applicableSchema="IFC4" applicableEntity="IfcDistributionCircuit" />
        <ConceptTemplate uuid="9b1d4d5a-3928-4884-b2ec-e8cfef552412" status="sample" applicableSchema="IFC4" applicableEntity="IfcDistributionElement" />
        <ConceptTemplate uuid="f0ffa459-a01b-453e-b032-2b44614c195e" status="sample" applicableSchema="IFC4" applicableEntity="IfcDistributionElementType" />
        <ConceptTemplate uuid="79363b36-b235-4f43-b77a-777e450d7f90" status="sample" applicableSchema="IFC4" applicableEntity="IfcDistributionPort" />
        <ConceptTemplate uuid="fa82666b-ba2b-4752-a7e5-e1b2c57d7ec9" status="sample" applicableSchema="IFC4" applicableEntity="IfcDistributionSystem" />
        <ConceptTemplate uuid="1e7fffe8-ce5f-473d-a2d3-f0883d9c51de" status="sample" applicableSchema="IFC4" applicableEntity="IfcDoor" />
        <ConceptTemplate uuid="ce781432-21c5-4f17-bdf6-74b1bf2260e3" status="sample" applicableSchema="IFC4" applicableEntity="IfcDuctFitting" />
        <ConceptTemplate uuid="5827e2a8-d81b-49de-a827-4862a94200c5" status="sample" applicableSchema="IFC4" applicableEntity="IfcDuctSegment" />
        <ConceptTemplate uuid="54b253ef-7c7d-42da-9489-1a76bb01e987" status="sample" applicableSchema="IFC4" applicableEntity="IfcDuctSilencer" />
        <ConceptTemplate uuid="670adfae-61d9-4e83-98a9-d449366ccc92" status="sample" applicableSchema="IFC4" applicableEntity="IfcElectricAppliance" />
        <ConceptTemplate uuid="6a4f7bc3-b70a-47e5-8e05-76e68a64f874" status="sample" applicableSchema="IFC4" applicableEntity="IfcElectricDistributionBoard" />
        <ConceptTemplate uuid="feda32ff-8d6d-4897-8e44-32285e79384e" status="sample" applicableSchema="IFC4" applicableEntity="IfcElectricFlowStorageDevice" />
        <ConceptTemplate uuid="c44e3a71-fc5a-46ac-af43-088069a55858" status="sample" applicableSchema="IFC4" applicableEntity="IfcElectricGenerator" />
        <ConceptTemplate uuid="0efafafb-be2a-4cb7-ad52-c96bbaaa2426" status="sample" applicableSchema="IFC4" applicableEntity="IfcElectricMotor" />
        <ConceptTemplate uuid="99714653-abb7-401a-a0c1-c2c5f0f92a65" status="sample" applicableSchema="IFC4" applicableEntity="IfcElectricTimeControl" />
        <ConceptTemplate uuid="1cc5d759-a002-4eb2-ad6d-eed8c557182c" status="sample" applicableSchema="IFC4" applicableEntity="IfcElementAssembly" />
        <ConceptTemplate uuid="826680f1-b756-4cdf-b424-20b60228e143" status="sample" applicableSchema="IFC4" applicableEntity="IfcElement" />
        <ConceptTemplate uuid="abfd6268-bb3c-4ebc-832e-71adb604b3b3" status="sample" applicableSchema="IFC4" applicableEntity="IfcEngine" />
        <ConceptTemplate uuid="85e4a8e7-01d6-45bd-9341-7b19abf393ce" status="sample" applicableSchema="IFC4" applicableEntity="IfcEvaporativeCooler" />
        <ConceptTemplate uuid="a29cbf89-f952-4e16-a1ff-9beccd281863" status="sample" applicableSchema="IFC4" applicableEntity="IfcEvaporator" />
        <ConceptTemplate uuid="2bb64f0f-57d3-4b19-809d-251b875bdf30" status="sample" applicableSchema="IFC4" applicableEntity="IfcFan" />
        <ConceptTemplate uuid="c46179f8-c578-4389-993f-a9c454de13c3" status="sample" applicableSchema="IFC4" applicableEntity="IfcFastener" />
        <ConceptTemplate uuid="42ba747a-9825-41b1-a3cd-cafe7b8a55a5" status="sample" applicableSchema="IFC4" applicableEntity="IfcFilter" />
        <ConceptTemplate uuid="885685b9-80b1-4101-900e-29c674ee5b4d" status="sample" applicableSchema="IFC4" applicableEntity="IfcFireSuppressionTerminal" />
        <ConceptTemplate uuid="a77d2e8f-c115-4cb9-9492-f3911767c25b" status="sample" applicableSchema="IFC4" applicableEntity="IfcFlowInstrument" />
        <ConceptTemplate uuid="5d5e89dc-6e35-4fa4-968f-e1467c8d2317" status="sample" applicableSchema="IFC4" applicableEntity="IfcFlowMeter" />
        <ConceptTemplate uuid="ccad0ed8-1351-4d71-aaf8-67d7407cd0b5" status="sample" applicableSchema="IFC4" applicableEntity="IfcFooting" />
        <ConceptTemplate uuid="6a426777-d2c7-45c1-b4dc-54cc1f7e1247" status="sample" applicableSchema="IFC4" applicableEntity="IfcFurniture" />
        <ConceptTemplate uuid="b038d9a2-c42a-4757-8a1e-36998dc644bd" status="sample" applicableSchema="IFC4" applicableEntity="IfcGeographicElement" />
        <ConceptTemplate uuid="42a17faa-bd1e-4445-970a-a7743b3a1fbf" status="sample" applicableSchema="IFC4" applicableEntity="IfcGrid" />
        <ConceptTemplate uuid="18502c34-555c-47c2-bb11-ae8b6037e3e7" status="sample" applicableSchema="IFC4" applicableEntity="IfcGroup" />
        <ConceptTemplate uuid="ad0ba243-1b02-431c-8252-579157016c3a" status="sample" applicableSchema="IFC4" applicableEntity="IfcHeatExchanger" />
        <ConceptTemplate uuid="39585b14-be76-4be7-88fd-ba7b1c2d8afc" status="sample" applicableSchema="IFC4" applicableEntity="IfcHumidifier" />
        <ConceptTemplate uuid="5eddbeee-b21a-43d2-ad10-7c403ef9cf5e" status="sample" applicableSchema="IFC4" applicableEntity="IfcInterceptor" />
        <ConceptTemplate uuid="60537b10-e174-44b8-87d2-0d5997e30442" status="sample" applicableSchema="IFC4" applicableEntity="IfcJunctionBox" />
        <ConceptTemplate uuid="008fb3b4-1ff0-45bd-ab8d-85a62060e400" status="sample" applicableSchema="IFC4" applicableEntity="IfcLamp" />
        <ConceptTemplate uuid="2fa87599-481f-4469-81dd-94dca6ad5287" status="sample" applicableSchema="IFC4" applicableEntity="IfcLightFixture" />
        <ConceptTemplate uuid="33de3f42-6ec6-4a38-82fb-7c7e48d8d4df" status="sample" applicableSchema="IFC4" applicableEntity="IfcMechanicalFastener" />
        <ConceptTemplate uuid="1fc4fe52-aab0-41da-8e1f-2123cb4f8bfb" status="sample" applicableSchema="IFC4" applicableEntity="IfcMedicalDevice" />
        <ConceptTemplate uuid="d5386343-7ce4-4ee3-9055-fd8efef269b8" status="sample" applicableSchema="IFC4" applicableEntity="IfcMember" />
        <ConceptTemplate uuid="73de9dd3-d86d-42a7-890b-f9bc0f887f87" status="sample" applicableSchema="IFC4" applicableEntity="IfcMotorConnection" />
        <ConceptTemplate uuid="295c8d9d-9720-4a78-a620-c0502c0169c5" status="sample" applicableSchema="IFC4" applicableEntity="IfcObject" />
        <ConceptTemplate uuid="2f5ac9dc-eeb4-46f8-bfe5-25a335e5f7ad" status="sample" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition" />
        <ConceptTemplate uuid="11fdcc4d-0d82-47ef-b03e-c4f5026d12f2" status="sample" applicableSchema="IFC4" applicableEntity="IfcOpeningElement" />
        <ConceptTemplate uuid="4d840f2f-f88e-47a7-b94f-bf5cafd35ebf" status="sample" applicableSchema="IFC4" applicableEntity="IfcOutlet" />
        <ConceptTemplate uuid="921f3305-6b91-4aeb-a7c3-0760247b8b27" status="sample" applicableSchema="IFC4" applicableEntity="IfcPile" />
        <ConceptTemplate uuid="8205100d-6e48-4989-9de5-533867c1197a" status="sample" applicableSchema="IFC4" applicableEntity="IfcPipeFitting" />
        <ConceptTemplate uuid="5592e3b4-a1e1-4b62-830c-62e01d9025fa" status="sample" applicableSchema="IFC4" applicableEntity="IfcPipeSegment" />
        <ConceptTemplate uuid="b6acc169-57a6-4a05-80b6-daf7cd84cea6" status="sample" applicableSchema="IFC4" applicableEntity="IfcPlate" />
        <ConceptTemplate uuid="5917f9b6-2950-4772-9243-28d187e2355e" status="sample" applicableSchema="IFC4" applicableEntity="IfcProject" />
        <ConceptTemplate uuid="009e96b2-8aff-4d74-949b-69e2d77a61e0" status="sample" applicableSchema="IFC4" applicableEntity="IfcProtectiveDevice" />
        <ConceptTemplate uuid="34d3522c-c195-4d6e-b5fa-629c1648d665" status="sample" applicableSchema="IFC4" applicableEntity="IfcProtectiveDeviceTrippingUnit" />
        <ConceptTemplate uuid="fa09ac2e-2811-491e-9ea4-136f548dc51d" status="sample" applicableSchema="IFC4" applicableEntity="IfcPump" />
        <ConceptTemplate uuid="43376e6d-3f4c-4f32-8ed2-57b051e488dd" status="sample" applicableSchema="IFC4" applicableEntity="IfcRailing" />
        <ConceptTemplate uuid="d4db6d26-8543-4f16-be7a-2039a45002e2" status="sample" applicableSchema="IFC4" applicableEntity="IfcRamp" />
        <ConceptTemplate uuid="bacf8a9b-dd1c-4055-8a29-4985cd0fb8c3" status="sample" applicableSchema="IFC4" applicableEntity="IfcRampFlight" />
        <ConceptTemplate uuid="b9a92efc-9344-4e36-a28b-cd210614d4dd" status="sample" applicableSchema="IFC4" applicableEntity="IfcReinforcingBar" />
        <ConceptTemplate uuid="b68fdc17-1d4a-4a04-bf53-8eb17ec88169" status="sample" applicableSchema="IFC4" applicableEntity="IfcReinforcingElement" />
        <ConceptTemplate uuid="70925a50-30f3-4113-b6fd-95b22b5b8588" status="sample" applicableSchema="IFC4" applicableEntity="IfcReinforcingMesh" />
        <ConceptTemplate uuid="ab903982-2926-427b-b581-0eab51030088" status="sample" applicableSchema="IFC4" applicableEntity="IfcRoof" />
        <ConceptTemplate uuid="4581d8c9-3493-4714-b8be-5a01d4b3514a" status="sample" applicableSchema="IFC4" applicableEntity="IfcRoot" />
        <ConceptTemplate uuid="2114ea75-800f-4dee-9a67-00a96e014c65" status="sample" applicableSchema="IFC4" applicableEntity="IfcSanitaryTerminal" />
        <ConceptTemplate uuid="c674efb0-8aca-433b-b1bb-44407b626e95" status="sample" applicableSchema="IFC4" applicableEntity="IfcSensor" />
        <ConceptTemplate uuid="6d177be2-ed15-4c54-a374-41302a244516" status="sample" applicableSchema="IFC4" applicableEntity="IfcShadingDevice" />
        <ConceptTemplate uuid="da862ca3-4d34-4f77-b54c-afab9153edf3" status="sample" applicableSchema="IFC4" applicableEntity="IfcSite" />
        <ConceptTemplate uuid="02c2ca6a-059f-46a0-8981-f1d4fb242bed" status="sample" applicableSchema="IFC4" applicableEntity="IfcSlab" />
        <ConceptTemplate uuid="4da4ae25-e05f-44a6-9139-2b5074722a6e" status="sample" applicableSchema="IFC4" applicableEntity="IfcSolarDevice" />
        <ConceptTemplate uuid="c5a21892-3064-4870-ae43-6496eda10540" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpace" />
        <ConceptTemplate uuid="14deaed4-6c5f-4221-9211-0518667cdff4" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpaceHeater" />
        <ConceptTemplate uuid="673b0d93-bcf9-46ba-b51b-b0e86732d563" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpatialElement" />
        <ConceptTemplate uuid="0d1d4c23-7c95-4d63-8d7a-36408cb3cfea" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpatialStructureElement" />
        <ConceptTemplate uuid="442262e3-0e0f-476d-bd10-31f6be168f5b" status="sample" applicableSchema="IFC4" applicableEntity="IfcSpatialZone" />
        <ConceptTemplate uuid="a4243a1f-cfe8-4ad5-a056-09687ee2a036" status="sample" applicableSchema="IFC4" applicableEntity="IfcStackTerminal" />
        <ConceptTemplate uuid="307e8cd1-7996-4003-8f1b-398b1b94c40d" status="sample" applicableSchema="IFC4" applicableEntity="IfcStair" />
        <ConceptTemplate uuid="9721cc74-54da-4fbb-aaa4-5e3fc5158245" status="sample" applicableSchema="IFC4" applicableEntity="IfcStairFlight" />
        <ConceptTemplate uuid="227f551e-d2cd-4b34-9db7-b7812d75fcfd" status="sample" applicableSchema="IFC4" applicableEntity="IfcSwitchingDevice" />
        <ConceptTemplate uuid="75992271-0dbe-47b3-af13-a8641668dc3b" status="sample" applicableSchema="IFC4" applicableEntity="IfcSystem" />
        <ConceptTemplate uuid="5ae4615f-6461-4392-b1c7-f03338e4c46d" status="sample" applicableSchema="IFC4" applicableEntity="IfcSystemFurnitureElement" />
        <ConceptTemplate uuid="68b0314d-22b3-4649-9a67-a21eddb194a4" status="sample" applicableSchema="IFC4" applicableEntity="IfcTank" />
        <ConceptTemplate uuid="5ca88b05-66cc-4dbb-aab1-ed7f574d7b3c" status="sample" applicableSchema="IFC4" applicableEntity="IfcTendon" />
        <ConceptTemplate uuid="0611f507-b5d4-46f9-9fc1-dd4a2fd46001" status="sample" applicableSchema="IFC4" applicableEntity="IfcTendonAnchor" />
        <ConceptTemplate uuid="1439f3e4-dd18-4b7e-b7fb-d2084c63e1a3" status="sample" applicableSchema="IFC4" applicableEntity="IfcTransformer" />
        <ConceptTemplate uuid="514f4b5d-753b-4e21-bd47-27a342ca3854" status="sample" applicableSchema="IFC4" applicableEntity="IfcTransportElement" />
        <ConceptTemplate uuid="1a7e3db6-4cb7-431c-92bc-79342580ac3d" status="sample" applicableSchema="IFC4" applicableEntity="IfcTubeBundle" />
        <ConceptTemplate uuid="1be0dffc-0252-4c69-922d-6b199046c104" status="sample" applicableSchema="IFC4" applicableEntity="IfcTypeProduct" />
        <ConceptTemplate uuid="1c96c0c6-30d7-48b0-be63-f8458385f3d8" status="sample" applicableSchema="IFC4" applicableEntity="IfcUnitaryControlElement" />
        <ConceptTemplate uuid="757258f1-2f7a-415c-8c9e-bd4927756d3d" status="sample" applicableSchema="IFC4" applicableEntity="IfcUnitaryEquipment" />
        <ConceptTemplate uuid="6dca833e-41be-4ad3-afff-d77ea6e29d63" status="sample" applicableSchema="IFC4" applicableEntity="IfcValve" />
        <ConceptTemplate uuid="00b27193-72a5-4a05-bc88-c780dfc919b0" status="sample" applicableSchema="IFC4" applicableEntity="IfcVibrationIsolator" />
        <ConceptTemplate uuid="771f7610-94b6-4054-8846-282157632b88" status="sample" applicableSchema="IFC4" applicableEntity="IfcVoidingFeature" />
        <ConceptTemplate uuid="0dd1fc9a-27be-4fa6-956d-bcd5a261ef90" status="sample" applicableSchema="IFC4" applicableEntity="IfcWall" />
        <ConceptTemplate uuid="86486a30-e36d-4aa7-8b6f-a835b3148f3a" status="sample" applicableSchema="IFC4" applicableEntity="IfcWasteTerminal" />
        <ConceptTemplate uuid="383f3cd3-41d0-4eb3-aa5e-f7cf5331b551" status="sample" applicableSchema="IFC4" applicableEntity="IfcWindow" />
        <ConceptTemplate uuid="7a6693ca-8eba-4fb6-8299-3a3b105caa5e" status="sample" applicableSchema="IFC4" applicableEntity="IfcZone" />
      </SubTemplates>
    </ConceptTemplate>
  </Templates>
  <Views>
    <ModelView uuid="86aa67de-829b-467b-9cd8-dd364beabe79" name="Reference View" code="ReferenceView_V1-2" version="1.2" status="sample" owner="bSI" copyright="&amp;copy; 1996-2018 buildingSMART International Ltd." applicableSchema="IFC4">
      <Definitions>
        <Definition>
          <Body><![CDATA[  <h3 class="num" id="purpose">Purpose of the Reference View</h3>
  <p>With the publication of the IFC4 release, that has been accepted as ISO 16739 by the International Standardization Organization, several enhancements and
   improvements over the previous IFC releases are now available for improved open BIM interoperability using the IFC protocol.</p>
  <p>The main purpose of this document is to define a standardized subset of the IFC4 schema, a Model View Definition MVD, that is particularly suitable for all BIM
   workflows that are based on reference models, where the exchange is mainly one-directional. Here requested modifications of the BIM data, mainly of the shape representation,
   are handled by a change request to the original author, and changes are not executed upon the imported IFC data with the intent to be sent back to the original source.</p>
  <p>Examples of this reference workflow are:</p>
  <ul>
   <li>Coordination planning (combining different discipline specific IFC models for visual checking)</li>
   <li>Clash detection (finding clashes between different discipline specific IFC models)</li>
   <li>Background reference (loading an IFC model, usually from a different discipline) as a linked model</li>
   <li>Quantity take-off (determine the quantities of the various model elements with the IFC model)</li>
   <li>Construction sequencing (taking the IFC model and associating it to a construction schedule)</li>
   <li>Visual presentation (for presenting the IFC model to a broad audience)</li>
  </ul>
  <p>Common characteristics of the workflow using reference models are:</p>
  <ul>
   <li>The source of the BIM information remains with the originator</li>
   <li>The full parametric behaviour, and thereby the intellectual engineering property, remains with the originator</li>
   <li>The ownership of the model, and responsibility for its correctness, remains with the originator</li>
   <li>The original model is published as IFC4 Reference View model reflecting the as-is status</li>
   <li>The receiver of the IFC4 Reference View model has access to the full model content</li>
   <li>The receiver of the IFC4 Reference View is not supposed to modify the model</li>
   <li>The receiver of the IFC4 Reference View can analyse and extract the information of the model</li>
   <li>If the receiver suggests or demands a change, it has to be communicated as a change request to the originator</li>
   <li>The buildingSMART standard BCF (BIM Collaboration Format) is developed to efficiently support these change requests.</li>
  </ul>
  <p>The Level of Detail of the shape representation and the Level of Information for the property content of the actual reference models depends on the source
   model. The buildingSMART standard IDM (Information Delivery Manual) can be used to determine the minimum content for a particular workflow support. The IFC4
   Reference View allows rich content to be published.</p>

  <h3 class="num" id="objective">Objective</h3>
  <p>The main objective of the IFC Reference View is the widest possible proliferation of IFC BIM data across a big range of software application types supporting
   different communication and collaboration workflows.</p>
  <p>The IFC Reference View is characterized by the ability to publish BIM data following that subset of IFC definitions that enables semantically rish content of building
   data, and to some degree also other built environment data, to be exchanges with a streamlined geometric representation that is optimized for analysis and
   display, but excludes dimension-driven geometric parameters. The geometric representation is therefore suitable for all workflow scenarios, where the imported IFC model
   is displayed, analysed, compared, clashed, but not parametricly modified for futher work processes.</p>
  <p>Semantic building data models being exchanged using the IFC4 Reference View would typically include:</p>
  <ul>
   <li>physical elements with explicit geometry, properties, quantities, material, and classification</li>
   <li>types of elements with associated physical elements to group common definitions (geometry, properties, material, and classification)</li>
   <li>spatial elements (spaces, zones) with explicit geometry, properties, quantities, and classification</li>
   <li>spatial structure elements (site, building, story), but also spatial zones for non-vertical construction</li>
   <li>element breakdown structure between physical elements (assemblies, sub-assemblies, parts)</li>
   <li>spatial breakdown structure between spatial elements (spatial decomposition of building, story or zones)</li>
   <li>spatial containment structure between spatial elements and physical elements (elements in spatial zone)</li>
   <li>logical system structure and assignment (physical elements assigned to systems and sub systems)</li>
   <li>topological structure of system networks (element to port, and port to port, relationship)</li>
   <li>common context of the building model, providing units, coordinate system and GIS positions</li>
   <li>general object identification using globally unique identifier</li>
  </ul>
  <p>Additional capabilities for enriching the semantic information exposed by the IFC4 Reference View can be defined as an Add-on Model View Definition. Forseeable
   examples are capturing 4D models with the addition of the work schedule related entities, or 5D models with the addition of construction resource related entities.</p>

  <h3 class="num" id="workflow-support">Workflow support</h3>
  <p>The overall goal of the IFC Reference View is to provide workflows where building information models are to be consumed by the widest array of software applications
   that do not require modifying geometry. Such applications enable viewing, estimating, building, operating, and other downstream analysis.</p>
  <blockquote class="example">
   EXAMPLE One target scenario is an architect providing building design information to a contractor or facility manager. It is expected that the resulting geometry
   would reflect sufficient realism for viewing in software (dimensions, normals, colors, textures), but not of rendering quality for artistic presentations (lighting,
   shader effects, curve interpolation, rasterizing).
  </blockquote>
  <p>To support the widest array of consuming applications, the resulting schema should be as limited as possible for representing geometry in the interest of minimizing
   resources required of application developers. Such schema should also be as compact as possible to enable downstream use on mobile devices with limited
   network bandwidth. It is proposed that the resulting geometry is limited to triangles with normal vectors, colour and texture coordinates and simple sweeped
   solids with applied colour and texture.</p>

  <h3 class="num" id="compatibility-concerns">Compatibility concerns</h3>
  <p>As the IFC4 Reference View is new (there is no corresponding concept in the IFC2x3 Coordination View), there is no constraint for compatibility, and the resulting
   schema will leverage new triangulation definitions in IFC4 to support more efficient data transfer.</p>
  <p>The second Model View Definition that is proposed in parallel to the IFC4 Reference View, the IFC4 Design Transfer View, is an extension of this model view. In
   other words, the IFC4 Reference View is a true subset of the IFC4 Design Transfer View.
  </p>
  <p>Complying software interfaces, that implements import of the IFC4 Design Transfer View, shall also be able to correctly import IFC4 Reference View data sets.
   But not vice versa, a complying software interface, that implements import of the IFC4 Reference View will not be capable to import IFC4 Design Transfer View
   data sets. It is however required that a compliant software interface for importing IFC4 Reference View displays an agreed error messange showing the IFC version,
   and the IFC Model View Definition of the imported IFC file, that does not match &quot;IFC4 Reference View&quot; with an explanation, that a non-compatible IFC
   file has been received.</p>
  <blockquote class="note">
   NOTE The correct error message and the link to further information on the buildingSMART website explaining the purpose of the different IFC Model View Deinitions need
   to be agreed upon.
  </blockquote>

  <h3 class="num" id="general-scope-definition">
   General scope definition
  </h3>
  <p>
   The general scope defines the main functionalities of the IFC4 Reference View as
   an overview. It includes a complete listing of the model elements and model
   element types that are included in the IFC4 Reference View Model View Definition.
  </p>
  <blockquote class="note">
   NOTE&nbsp; The Model elements are refered to as "Root Concepts" within the Model
   View Definition specification, being the indiviudual root elements, that contain
   the attributes, geometric shapes, dynamic property sets and other semantic information
   that are combined and expressed as "Concepts". The common definition of a "Concept",
   that is applicable to many "Root Concepts" is called a "Concept Template".
  </blockquote>
  <p>
   The detailed scope of the IFC4 Reference View is determined by the concept templates
   that are included. A detailed description of each concept template is provided
   by Chapter 4 &quot;Fundamental concepts and assumptions&quot;.
  </p>
  <h3 class="num" id="model-elements">
   Model elements
  </h3>
  <p>
   The main components of the IFC4 Reference View are the semantic model elements
   that carry a predefined meaning. The complete breakdown of all model elements
   declared in IFC4 are also known as the IFC4 built-in classification following
   an element by function classification.
  </p>
  <p>
   In addition to each of the model elements shown here in the subsequent tables,
   each Model element maybe further specialized by its &quot;<em>PredefinedType</em>&quot;, or even a user defined type.
  </p>
  <blockquote class="example">
   EXAMPLE An
   <em>IfcFireSuppressionTerminal</em> is a specific model element, that may be further
   specialized using its <em>PredefinedType</em> enumeration being: a sprinkler, a hose reel, a fire hydrant,
   or a breeching inlet. If a proper predefined type is not yet included in the specification, a user
   defined type can be assigned as well.
  </blockquote>
  <p>
   <strong>Architectural model elements</strong>
  </p>
  <table class="gridtable even">
   <thead>
    <tr>
     <th>
      shell and core
     </th>
     <th>
      finishing
     </th>
     <th>
      furnishing
     </th>
    </tr>
   </thead>
   <tbody>
    <tr>
     <td>
      <em>IfcBeam</em>
     </td>
     <td>
      <em>IfcCovering</em>
     </td>
     <td>
      <em>IfcFurniture</em>
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcColumn</em>
     </td>
     <td>
      <em>IfcRailing</em>
     </td>
     <td>
      <em>IfcSystemFurnitureElement</em>
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcChimney</em>*
     </td>
     <td>
      <em>IfcShadingDevice</em>
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcRamp</em>+
     </td>
     <td>
      <em>IfcCurtainWall</em>
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcStair</em>++
     </td>
     <td>
      <em>IfcDoor</em>
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcRoof</em>
     </td>
     <td>
      <em>IfcWindow</em>
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcSlab</em>
     </td>
     <td>
      -
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcWall</em>
     </td>
     <td>
      -
     </td>
     <td>
      -
     </td>
    </tr>
   </tbody>
  </table>
  <blockquote class="note">
   LEGEND&nbsp; * new in IFC4, + includes
   <em>IfcRampFlight</em>, ++ includes
   <em>IfcStairFlight</em>
  </blockquote>
  <p>
   <strong>Structural model elements</strong>
  </p>
  <table class="gridtable even">
   <thead>
    <tr>
     <th>
      Foundation &amp; Frame
     </th>
     <th>
      Reinforcement
     </th>
     <th>
      Fastener, etc.
     </th>
    </tr>
   </thead>
   <tbody>
    <tr>
     <td>
      <em>IfcFooting</em>
     </td>
     <td>
      <em>IfcReinforcingBar</em>
     </td>
     <td>
      <em>IfcFastener</em>
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcPile</em>
     </td>
     <td>
      <em>IfcReinforcingMesh</em>
     </td>
     <td>
      <em>IfcMechanicalFastener</em>
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcMember</em>
     </td>
     <td>
      <em>IfcTendonAnchor</em>
     </td>
     <td>
      <em>IfcBuildingElementPart</em>
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcPlate</em>
     </td>
     <td>
      <em>IfcTendon</em>
     </td>
     <td>
      <em>IfcDiscreteAccessory</em>
     </td>
    </tr>
   </tbody>
  </table>
  <blockquote class="note">
   NOTE Architectural elements, like
   <em>IfcWall</em>,
   <em>IfcSlab</em>,
   <em>IfcBeam</em>, etc, are also used in structural models, and vice versa
  </blockquote>
  <p>
   <strong>Building service model elements</strong>
  </p>
  <p>
   The model element specialization structure within the building service domain within
   the IFC standard is organized accoring to its function within a distribution
   system, and not primarily according to the main building service discipline,
   within it is mainly used.
  </p>
  <p>
   The internal specialization structure for building service elements at its highest
   level is also independed of the fluid used within the distribution system:
  </p>
  <ul>
   <li>flow segments
   </li>
   <li>flow fittings
   </li>
   <li>flow terminals
   </li>
   <li>flow moving devices
   </li>
   <li>flow storage devices
   </li>
   <li>flow controller
   </li>
   <li>energy conversion device
   </li>
   <li>distribution control elements
   </li>
  </ul>
  <p>
   The following tables intents to assign the model elements to the various disciplines
   within the building service system domain.
  </p>
  <table class="gridtable even">
   <thead>
    <tr>
     <th>
      general MEP elements
     </th>
     <th>
      used for gases and fluids
     </th>
     <th>
      ports for connectivity
     </th>
    </tr>
   </thead>
   <tbody>
    <tr>
     <td>
      <em>IfcEngine</em>*
     </td>
     <td>
      <em>IfcFlowMeter</em>*
     </td>
     <td>
      <em>IfcDistributionPort</em>
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcMedicalDevice</em>*
     </td>
     <td>
      <em>IfcFilter</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcUnitaryEquipment</em>*
     </td>
     <td>
      -
     </td>
     <td>
      -
     </td>
    </tr>
   </tbody>
  </table>
  <table class="gridtable even">
   <thead>
    <tr>
     <th>
      Heating, Cooling
     </th>
     <th>
      Plumbing
     </th>
     <th>
      Common
     </th>
    </tr>
   </thead>
   <tbody>
    <tr>
     <td>
      <em>IfcBoiler</em>*
     </td>
     <td>
      <em>IfcFireSuppressionTerminal</em>*
     </td>
     <td>
      <em>IfcPipeSegment</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcBurner</em>*
     </td>
     <td>
      <em>IfcInterceptor</em>*
     </td>
     <td>
      <em>IfcPipeFitting</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcCoil</em>*
     </td>
     <td>
      <em>IfcSanitaryTerminal</em>*
     </td>
     <td>
      <em>IfcPump</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcSpaceHeater</em>*
     </td>
     <td>
      <em>IfcStackTerminal</em>*
     </td>
     <td>
      <em>IfcValve</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcTubeBundle</em>*
     </td>
     <td>
      <em>IfcTank</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      -
     </td>
     <td>
      <em>IfcWasteTerminal</em>*
     </td>
     <td>
      -
     </td>
    </tr>
   </tbody>
  </table>
  <table class="gridtable even">
   <thead>
    <tr>
     <th>
      Ventilation
     </th>
     <th>
      Air conditioning
     </th>
     <th>
      Common
     </th>
    </tr>
   </thead>
   <tbody>
    <tr>
     <td>
      <em>IfcAirTerminalBox</em>*
     </td>
     <td>
      <em>IfcAirToAirHeatRecovery</em>*
     </td>
     <td>
      <em>IfcDuctSegment</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcDamper</em>*
     </td>
     <td>
      <em>IfcChiller</em>*
     </td>
     <td>
      <em>IfcDuctFitting</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcDuctSilencer</em>*
     </td>
     <td>
      <em>IfcCondenser</em>*
     </td>
     <td>
      <em>IfcAirTerminal</em>*
     </td>
    </tr>
    <tr>
     <td>
      -
     </td>
     <td>
      <em>IfcCooledBeam</em>*
     </td>
     <td>
      <em>IfcFan</em>*
     </td>
    </tr>
    <tr>
     <td>
      -
     </td>
     <td>
      <em>IfcCoolingTower</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      -
     </td>
     <td>
      <em>IfcEvaporativeCooler</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      -
     </td>
     <td>
      <em>IfcEvaporator</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      -
     </td>
     <td>
      <em>IfcHeatExchanger</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      -
     </td>
     <td>
      <em>IfcHumidifier</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      -
     </td>
     <td>
      <em>IfcCompressor</em>*
     </td>
     <td>
      -
     </td>
    </tr>
   </tbody>
  </table>
  <table class="gridtable even">
   <thead>
    <tr>
     <th>
      Electrical
     </th>
     <th>
      cont.
     </th>
     <th>
      Common
     </th>
    </tr>
   </thead>
   <tbody>
    <tr>
     <td>
      <em>IfcElectricAppliance</em>*
     </td>
     <td>
      <em>IfcAudioVisualAppliance</em>*
     </td>
     <td>
      <em>IfcCableSegment</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcElectricDistributionBoard</em>*
     </td>
     <td>
      <em>IfcCommunicationsAppliance</em>*
     </td>
     <td>
      <em>IfcCableFitting</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcElectricGenerator</em>*
     </td>
     <td>
      <em>IfcJunctionBox</em>*
     </td>
     <td>
      <em>IfcCableCarrierSegment</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcElectricMotor</em>*
     </td>
     <td>
      <em>IfcLamp</em>*
     </td>
     <td>
      <em>IfcCableCarrierFitting</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcElectricFlowStorageDevice</em>*
     </td>
     <td>
      <em>IfcLightFixture</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcElectricTimeControl</em>*
     </td>
     <td>
      <em>IfcSolarDevice</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcMotorConnection</em>*
     </td>
     <td>
      <em>IfcSwitchingDevice</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcProtectiveDevice</em>*
     </td>
     <td>
      <em>IfcTransformer</em>*
     </td>
     <td>
      -
     </td>
    </tr>
   </tbody>
  </table>
  <table class="gridtable even">
   <thead>
    <tr>
     <th>
      Building automation
     </th>
     <th>
      cont.
     </th>
     <th>
      cont.
     </th>
    </tr>
   </thead>
   <tbody>
    <tr>
     <td>
      <em>IfcActuator</em>*
     </td>
     <td>
      <em>IfcFlowInstrument</em>*
     </td>
     <td>
      <em>IfcSensor</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcAlarm</em>*
     </td>
     <td>
      <em>IfcProtectiveDeviceTrippingUnit</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcController</em>*
     </td>
     <td>
      <em>IfcUnitaryControlElement</em>*
     </td>
     <td>
      -
     </td>
    </tr>
   </tbody>
  </table>
  <blockquote class="note">
   LEGEND&nbsp; * new in IFC4, note all building service occurrence elements are new,
   the previous IFC2x3 release only included the generic occurrence elements:
   <em>IfcFlowSegment</em>,
   <em>IfcFlowFitting</em>,
   <em>IfcFlowTerminal</em>,
   <em>IfcFlowMovingDevice</em>,
   <em>IfcFlowStorageDevice</em>,
   <em>IfcFlowController</em>,
   <em>IfcEnergyConversionDevice</em>, and
   <em>IfcDistributionControlElement</em>. Those are still available as general purpose
   MEP Model elements, but its use is discouraged.
  </blockquote>
  <p>
   <strong>Other model elements</strong>
  </p>
  <table class="gridtable even">
   <thead>
    <tr>
     <th>
      Other elements
     </th>
    </tr>
   </thead>
   <tbody>
    <tr>
     <td>
      <em>IfcBuildingElementProxy</em>+
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcCivilElement</em>*++
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcGeographicElement</em>*
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcDistributionChamberElement</em>
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcElementAssembly</em>
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcTransportElement</em>
     </td>
    </tr>
   </tbody>
  </table>
  <blockquote class="note">
   LEGEND&nbsp; * new in IFC4, + also used as general element proxy ++ provided as
   stub for future infrastructure extensions
  </blockquote>
  <p>
   <strong>Spatial elements, spatial structure and grouping elements
   </strong>
  </p>
  <table class="gridtable even">
   <thead>
    <tr>
     <th>
      Spatial structure
     </th>
     <th>
      other grouping structure
     </th>
     <th>
      others
     </th>
    </tr>
   </thead>
   <tbody>
    <tr>
     <td>
      <em>IfcSpace</em>
     </td>
     <td>
      <em>IfcZone</em>
     </td>
     <td>
      <em>IfcGrid</em>
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcBuildingStorey</em>
     </td>
     <td>
      <em>IfcSystem</em>
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcBuilding</em>
     </td>
     <td>
      <em>IfcBuildingSystem</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcSite</em>
     </td>
     <td>
      <em>IfcDistributionSystem</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      <em>IfcSpatialZone</em>*+
     </td>
     <td>
      <em>IfcDistributionCircuit</em>*
     </td>
     <td>
      -
     </td>
    </tr>
    <tr>
     <td>
      -
     </td>
     <td>
      <em>IfcGroup</em>
     </td>
     <td>
      -
     </td>
    </tr>
   </tbody>
  </table>
  <blockquote class="note">
   LEGEND&nbsp; * new in IFC4, + provided as a stub for non vertical constructions
  </blockquote>
  <h3 class="num" id="odel-element-types">
   Model element types
  </h3>
  <p>
   Model element types are part of the IFC4 Reference View. They enable to describe
   and share common model element information that are shared by multiple occurrences
   of the same type. Sharable type information includes:
  </p>
  <ul>
   <li>Geometric shape representation;
   </li>
   <li>Property information;
   </li>
   <li>Material information.
   </li>
  </ul>
  <blockquote class="example">
   EXAMPLE A particular air outlet as an article, with its shape, its material and
   its manufacturer information being described once as a type and then having
   several occurrences, each placed within the building, referencing the same type
   and hence its shape, material and properties.
  </blockquote>
   <p>
   Most of the Model elements introduced in the previous session have a corresponding
   Model element type, such as:
	 </p>
	 <ul>
	  <li><em>IfcWall</em>&nbsp;&mdash;&nbsp;<em>IfcWallType</em>;</li>
	  <li><em>IfcFastener</em>&nbsp;&mdash;&nbsp;<em>IfcFastenerType</em>;</li>
	  <li><em>IfcFan</em>&nbsp;&mdash;&nbsp;<em>IfcFanType</em>.</li>
	 </ul>
   <p>
   Only the following spatial structure elements
   <em>IfcSite</em>, <em>IfcBuilding</em>, <em>IfcBuildingStorey</em>, the grouping elements
   <em>IfcGroup</em>, <em>IfcZone</em>, <em>IfcSystem</em> (and subtypes), and the
   <em>IfcDistributionPort</em> and <em>IfcGrid</em> do not have matching element types.
   </p>
  <h3 class="num" id="overview-on-major-concepts-used">
   Overview on major concepts used
  </h3>
  <h4 class="num" id="object-attribute">
   Object attribute
  </h4>
  <p>
   All model elements, listed in the previous section, are defined by several generic
   and direct object attributes, some specific model elements do carry additional
   direct attributes. The usage of the direct generic attributes is defined within
   the following concept templates (see also Chapter 4 &quot;fundamental concepts
   and assumptions&quot;):
  </p>
  <ul>
   <li>&quot;<em>Software Identity</em>&quot;, it defines how to apply the Globally Unique Id
    and how to compress it during exchange;
   </li>
   <li>&quot;
    <em>User Identity</em>&quot;, it defins the meaning of
    <em>Name</em>,
    <em>Description</em>,
    <em>LongName</em>and
    <em>Tag</em>attributes;
   </li>
   <li>&quot;
    <em>Object Occurrence Predefined Type</em>&quot;, it defines how to use the
    <em>PredefinedType</em>and in case of user defined types, how to assign the user
    defined type information within the
    <em>ObjectType</em>attribute for occurrences of model elements;
   </li>
   <li>&quot;
    <em>Element Type Predefined Type</em>&quot; it defines how to use the
    <em>PredefinedType</em>and in case of user defined types, how to assign the user
    defined type information within the
    <em>ElementType</em>attribute for types of model elements.
   </li>
  </ul>
  <h4 class="num" id="project-context">
   Project context
  </h4>
  <p>
   There is a single instance of
   <em>IfcProject</em>within each IFC data set. It sets the context for the exchange,
   including units, geometric context, global positioning and classification systems
   used within the data set. The usage of the project context is defined within
   the following concept templates (see also Chapter 4 &quot;fundamental concepts
   and assumptions&quot;):
  </p>
  <ul>
   <li>&quot;<em>Project Units</em>&quot;, declaration of the units used within this data set,
    all geometric representations are forced to use the global units (e.g. for
    length measure and plane angle measure), property values may override global
    unit declarations;
   </li>
   <li>&quot;<em>Project Representation Context</em>&quot;, declaration of the 3D and 2D representation
    contexts, including precision factors;
   </li>
   <li>&quot;<em>Project Global Positioning</em>&quot; (new in IFC4), positioning the project
    engineering coordinate system (right handed Cartesian coordinate system) within
    a global coordinate reference system;
   </li>
   <li>&quot;<em>Project Classification Information</em>&quot;, providing the name and version information about the classification
    systems used within the data set.
   </li>
  </ul>
  <h4 class="num" id="object-definition">
   Object definition
  </h4>
  <p>
   A main objective of the IFC4 Reference View is to enable rich information content
   for each model element. Model element occurrences can refer to their model element
   types for sharing common information. General properties are attached to model
   elements as property sets, either directly to the model element occurrence,
   or to its type. Individual model element occurrences can hold their quantities,
   if those are pre-calculated by the sender of the IFC data set. The usage of
   the object definition is defined within the following concept templates (see
   also Chapter 4 &quot;fundamental concepts and assumptions&quot;):
  </p>
  <ul>
   <li>&quot;<em>Object Typing</em>&quot;, associates the Model element occurrences with the
    corresponding element type;
   </li>
   <li>&quot;<em>Property Sets</em>&quot;, assigns dynamically defined property sets, holding
    set of individual properties, to the model element occurrences of element type;
   </li>
   <li>&quot;<em>Quantity Sets</em>&quot;, assigns dynamically defined quantity sets, holding
    set of individual quantities, to the model element occurrences.
   </li>
  </ul>
  <h5 class="num" id="object-typing">
   Object typing
  </h5>
  <p>
   The contept template describes the mechnism of associating model element occurrences
   to the corresponding type and the way and restrictions of overriding type based
   properties by properties directly assigned to the model element occurrences.
  </p>
  <h5 class="num" id="property-sets">
   Property sets
  </h5>
  <p>
   Property sets hold, as the name suggests, a set of properties grouped by a common
   theme. Each individual property has:
  </p>
  <ul>
   <li>a name
   </li>
   <li>an optional description
   </li>
   <li>a value, or number of values, of a given datatype
   </li>
   <li>a unit or the information of being unitless
   </li>
  </ul>
  <p>
   The semantic meaning of each property is provided by its name. Properties, that
   are semantically declared within the scope of the IFC4 Reference View, are based
   on a property definition template that is published as an instrict part of the
   Model View Definition. Extensions to the property definitions can also be defined
   outside the property definition scope of the IFC4 Reference View, however the
   name prefix for property sets &quot;Pset_&quot; is restricted to properties
   defined within the original scope of IFC.
  </p>
  <p>
   There are two ways to declare property templates:
  </p>
  <ul>
   <li>using the Property Set Definition PSD schema, an XML schema developed independent
    of the IFC specification,
   </li>
   <li>using the newly introduced IFC4 property set template and property template
   </li>
  </ul>
  <blockquote class="note">
   NOTE The PSD Schema has been used since many earlier versions of the IFC standard
   and has a broad legancy. The newer property set template definitions are now
   part of the IFC schema and can therefore be embedded within an IFC data set
   directly. Both schemas can be mapped without information loss.
  </blockquote>
  <h5 class="num" id="quantity-sets">
   Quantity sets
  </h5>
  <p>
   Quantity sets hold, as the name suggests, a set of quantities pre calculated for
   the model element occurrence. Each individual quantity has:
  </p>
  <ul>
   <li>a name
   </li>
   <li>an optional description
   </li>
   <li>a value of a given datatype corresponding to the quantity measure (length, area,
    volume, weight, time
   </li>
   <li>a unit
   </li>
   <li>a quantity formula, describing how the quantity value was calculated
   </li>
  </ul>
  <p>
   The semantic meaning of each qualtity is provided by its name. Quantities, that
   are semantically declared within the scope of the IFC4 Reference View, are based
   on a quantity definition template that is published as an instrict part of the
   Model View Definition. Extensions to the quantity definitions can also be defined
   outside the quantity definition scope of the IFC4 Reference View, however the
   name prefix for quantity sets &quot;Qto_&quot; is restricted to quantities defined
   within the original scope of IFC.
  </p>
  <h4 class="num" id="object-association">
   Object association
  </h4>
  <p>
   In addition to the Property sets and the Quantity sets, also a classification reference
   to an external classification system can be assigned, and material as either
   single material, a material constituent sets or an material layer sets aor material
   profile sets combining material information with dimensions can be associated
   to one or many model elements.
  </p>
  <blockquote class="note">
   NOTE Material dimensions are layer thicknesses, or profile geometries for e.g.
   a column with an embedded steel profile and a concrete protection. Within the
   IFC4 Reference View, such material dimensions are used exclusively as alphanumeric
   information, and not as part of a dimension driven parametric shape representation.
  </blockquote>
  <p>
   The usage of the object association is defined within the following concept templates
   (see also Chapter 4 &quot;fundamental concepts and assumptions&quot;):
  </p>
  <ul>
   <li>&quot;<em>Material Association</em>&quot;; assigns a material (or material set - constituent,
    layer, profile) to one or several model elements (either to element occurrences,
    or as shared material information to element types).
   </li>
   <li>&quot;<em>Classification Association</em>&quot;; assignes a classification reference
    to one or several model elements.
   </li>
  </ul>
  <h4 class="num" id="product-shape">
   Product shape
  </h4>
  <p>
   The first main objective of the IFC4 Reference View is to enable the exchange of
   highly accurate, not non-parametric, geometric representations of the model
   elements. Each model element is placed directly or indirectly within the project
   coordinate system, defining its own object coordinate system. The geometric
   representation items describing its shape are positioned within this object
   coordinate system.
  </p>
  <p>
   In order to minimize the effort for receiving and interpreting the geometic representations
   by the receiving software systems, in terms of development effort, processing
   power and loading times, the complexity and variety of geometric models has
   been minimized for the IFC4 Reference View.
  </p>
  <h5 class="num" id="product-placement">
   Product placement
  </h5>
  <p>
   Each model element defines its own object coordinate system. The placement is defined
   by the following concept template:
  </p>
  <ul>
   <li>&quot;<em>Product Local Placement</em>&quot;, creating an object coordinate system for the shape
    representation of the model element, either absolutely to the project engineering
    coordinate system, or relatively to another object coordination system.
   </li>
  </ul>
  <h5 class="num" id="product-geometric-representation">
   Product geometric representation
  </h5>
  <p>
   In scope of geometric shape representations of the 3D body geometry of physical
   and spatial elements are the following concept templates:
  </p>
  <ul>
   <li>&quot;<em>Body Tessellation Geometry</em>&quot;, using tessellated geometry in form of
    triangulated tessellations for describing the body shape of the model element;
   </li>
   <li>&quot;<em>Body SweptSolid Geometry</em>&quot;; using extruded solid geometry or revolved
    solid geometry for describing the body shape of the model element;
   </li>
   <li>&quot;<em>Body AdvancedSweptSolid Geometry</em>&quot;; using advanced swept solid geometry
    of circular cross sections for describing the body shape of the model element,
    only the swept disk solid is in scope;
   </li>
  </ul>
  <p>
   It is the default geometric representation of all model elements, allowing for
   a surface model representation with an indicator for closed shells (and therefore
   true volumes). The tessellated representation offers a very efficient way of
   exchanging 3D shape date, both for data set sizes and for processing time. Optionally
   the face normals can be exchanged as well.
  </p>
  <p>
   Since curved shapes would lead to very densely triangulated areas, the following
   swept solid based representations are also in scope of the IFC4 Reference View,
   balancing simplicity and compactness of representation:
  </p>
  <p>
   All other geometric models are out of scope of the IFC4 Reference View, in particular
   Boolean operations required for Constructive Solid Geometry CSG.
  </p>
  <blockquote class="note">
   NOTE The IFC2x3 Coordination View included CSG capabilities, the IFC4 Reference
   View therefore imposes a more restricted geometric representation of model elements.
   The IFC4 Design Transfer View should be used, if more complex geometric representations
   are required by the workflow. In particular, if a dimension-driven parametric
   representation, used by the IFC4 standard case elements, is needed.
  </blockquote>
  <p>
   The geometric shape representation can either be directly assigned to a model element,
   or to its type. In case of type-based geometry, a the following representation
   type is used at the model element using the following concept template:
  </p>
  <ul>
   <li>&quot;
    <em>Mapped Geometry</em>&quot;, mapped representation defined at the corresponding
    element type. A mapped representation uses Cartesian transformation operations
    to place the type-based geometry within its object coordinate system.
   </li>
  </ul>
  <p>
   As an exception, the following elements,
   <em>IfcGrid</em>, <em>IfcSpace</em>, and <em>IfcSpatialZone</em> may have an additional foot print 2D geometry (in case of <em>IfcGrid</em>this is the only geometric representation. It is described in the following concept template:
  </p>
  <ul>
   <li>&quot;
    <em>FootPrint Geometry</em>&quot;, defining a 2D shape representation within the
    XY plane of the object coordinate system.
   </li>
  </ul>
  <h5 class="num" id="geometric-presentation">
   Geometric presentation
  </h5>
  <p>
   Visual appearance is an important factor for the communication process using BIM
   data. The objective is not to support photo-realistic rendering of reference
   models, but to use color, basic rendering, and texture information to add visually
   accessible meaning to the model elements.
  </p>
  <p>
   In scope of presentation capabilities for the appearance of model element shapes
   are the following partial concept templates:
  </p>
  <ul>
   <li>&quot;
    <em>Surface Style Shading</em>&quot;, applying a single coloring for each solid;
   </li>
   <li>&quot;
    <em>Surface Style Rendering</em>&quot;, applying a single rendering (color, transparency,
    reflection, etc.) for each solid;
   </li>
   <li>&quot;
    <em>Surface </em>&quot;, applying a single texture for each solid
    according to a texture mapping based on the solid type;
   </li>
   <li>&quot;
    <em>Suface Style Tessellation</em>&quot;, applying a color and/or texture for each
    face of a tessellated solid.
   </li>
  </ul>
  <p>
   The visually adaquate presentation of model elements is constraint by the shape
   representation
  </p>
  <ul>
   <li>for tessellated geometry: color per face, texture per face
   </li>
   <li>for swept solid geometry: color and rendering information per solid, texture
    applied to solid using standard mapping
   </li>
  </ul>
  <h4 class="num" id="object-composition">
   Object Composition
  </h4>
  <p>
   The object composition functionality describes the product breakdown structure
   of model elements within an IFC data set, with separate breakdown structures
   for physical elements and spatial elements. Physical element structures describe
   parts and assemblies, spatial element structures describe vertical structures
   (for buildings) and horizontal structures (for other assets - as a stub in this
   release). A specific type of decomposition is the voiding - a subtraction of
   a void from a physical element. Another specific type is the nesting of ports
   within a distribution elements.
  </p>
  <p>
   The usage of the object association is defined within the following concept templates
   (see also Chapter 4 &quot;fundamental concepts and assumptions&quot;):
  </p>
  <ul>
   <li>&quot;<em>Element Decomposition</em>&quot;, creating a hierarchical product breakdown structure
    relationship between assemblies and parts;
   </li>
   <li>&quot;
    <em>Spatial Decomposition</em>&quot;, creating a hierarchical spatial decomposition
    relationship between spatial structure elements;
   </li>
   <li>&quot;
    <em>Element Voiding</em>&quot;, creating a voiding relationship between a physical
    element and penetrating voids - within the scope of the IFC4 Reference View
    this relationship is a logical relationship, the void is already part of the
    geometry of the physical element,
   </li>
   <li>&quot;
    <em>Port Nesting</em>&quot;, creating an 1:N relationship between the physical
    element and one or many ports defining inlets or outlets - used for distribution
    elements.
   </li>
  </ul>
  <h4 class="num" id="object-assignment">
   Object Assignment
  </h4>
  <p>
   The object assignment defines the assignment of objects, such as a link between
   model elements to groups, tasks or resources. Only the grouping assignment is
   in scope of the IFC4 Reference View and defined within the following concept
   template:
  </p>
  <ul>
   <li>&quot;
    <em>Group Assignment</em>&quot;, Assignment of one or several model elements to
    a group. It includes the more specific assignments of
    <em>Grouping General</em>,
    <em>Grouping to System</em>, and
    <em>Grouping to Zones</em>.
   </li>
  </ul>
  <h4 class="num" id="object-connectivity">
   Object Connectivity
  </h4>
  <p>
   The object connectivity defines the interlinkage between model elements. Examples
   are the link between physical elements and the spatial structure, where they
   are located, of the connection betwee the two ports of two consecutive distribution
   elements.
  </p>
  <p>
   The usage of the object association is defined within the following concept templates
   (see also Chapter 4 &quot;fundamental concepts and assumptions&quot;):
  </p>
  <ul>
   <li>&quot;
    <em>Spatial Structure</em>&quot;, defines the containment of a physical element
    within a spatial container;
   </li>
   <li>&quot;
    <em>Port Connectivity</em>&quot;, defines the connection and the direction of flow
    between two ports of consecutive distribution elements;
   </li>
   <li>&quot;
    <em>Building Service Connectivity</em>&quot;, links a spatial or distribution system
    to a spatial structure (such as a building section);
   </li>
   <li>&quot;
    <em>Element Filling</em>&quot;, links a filling (usually a door or window) to an
    opening (usually in a wall or slab).
   </li>
  </ul>]]></Body>
        </Definition>
      </Definitions>
      <ExchangeRequirements>
        <ExchangeRequirement uuid="dcd96125-898e-4ff0-b294-eb02afe953aa" name="MEP Reference Exchange" status="sample" applicability="both">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Data exchange requirements indicate required and optional values that may be set on object attributes, organized into concepts. </p>

<p>The table that follows lists each entity, concepts applicable to each entity (and any subtypes within scope), and requirements of the concept for import (I) or export (E).
Requirements for import and export are indicated using one of the following flags:
</p>

<table class="gridtable">
<tr><th>Flag</th><th>Name</th><th>Description</th></tr>
<tr><td>R</td><td>Required</td><td>The attributes must be set as indicated.</td></tr>
<tr><td>O</td><td>Optional</td><td>The attributes may be set as indicated or may be omitted.</td></tr>
<tr><td>X</td><td>Excluded</td><td>The attributes must be omitted.</td></tr>
</table>

<p>Export requirements may be tested against IFC files generated from applications. 
The <i>IfcDoc</i> tool available at <a href="http://www.buildingsmart-tech.org">www.buildingsmart-tech.org</a> may be used to validate such files and report any errors.
Import requirements can only be tested manually by using target software applications. A mandatory import requirement means that the content retrieved from an IFC file must be present in the resulting user interface of the application.
</p>

<p>The listing of an entity below does not mean that instances of such entity must necessarily exist within a file, only that if any instances do exist, then they must conform to the indicated requirements. The only mandatory object instances are the single <i>IfcProject</i> which must exist in any IFC file, and a single <i>IfcSite</i>, which is enforced by the "spatial decomposition" concept at <i>IfcProject</i> within this model view. All other objects are then referenced directly or indirectly from these instances. The listing of an entity and its attributes does mean that any importing software must be able to read such file without error, but not necessarily retain the information unless specifically indicated.</p>


<blockquote class="note">NOTE&nbsp; Finalizing exchange requirements is an iterative process that involves balancing the goal of increased scope with the limits of what can be reasonably achieved by leading vendors. Implementers are encouraged to review each row and state whether they intend for software to support each row or not. For concepts marked mandatory that cannot be easily supported, it is requested that implementers provide commentary on why something cannot be supported. Based on such feedback, the standards committee may then vote on such requirements to be in or out of scope.</blockquote>


<p>General requirements of software implementing the Reference Exchange:</p>
<ul>
<li>For import, the schema identifier and model view identifier must be read from the file, and if such identifiers are different than that in this specification (and are otherwise not recognized), then the following message must be displayed to the user (localized accordingly): "The selected file contains functionality that is not supported by this application version. A list of applications supporting the functionality within this file may be found at http://www.buildingsmart-tech.org/apps/[SCHEMA_IDENTIFIER]/[MODELVIEW_IDENTIFIER]". Note that it is also possible for applications to dynamically discover model views by constructing the URL http://www.buildingsmart-tech.org/mvdxml/[SCHEMA_IDENTIFIER]/[MODELVIEW_IDENTIFIER], where such MVDXML file may be used to configure importing or exporting -- if such application understands the full IFC schema and mvdXML, then it would be possible for the application to support any model view arbitrarily.</li>
<li>For export, the schema identifier and model view identifier must be written to the file.</li>
<li>If an application supports both Reference View and Design Transfer View, then it must provide the user an option to choose which to export and display the following text to the user (localized accordingly): "Reference View contains simplified geometry designed for viewing within the widest range of applications. Design Transfer View contains higher-level geometry designed for editing within design applications.". There is no requirement where such choice may be made; i.e. such option could be available every time the user exports a file, or such option could be a general application setting.</li>

</ul>]]></Body>
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="d1f16904-6f98-48f0-8884-726d4a568d46" name="Structural Reference Exchange" status="sample" applicability="both" />
        <ExchangeRequirement uuid="2eeb0e87-f405-4c0b-a8a7-f192efec441d" name="Architectural Reference Exchange" status="sample" applicability="both" />
      </ExchangeRequirements>
      <Roots>
        <ConceptRoot uuid="0f7850bc-7483-462f-8f1d-bf947d755a77" name="IfcActuator" status="sample" applicableRootEntity="IfcActuator">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="efca410b-49d4-4e76-a6c9-18f258465d5c" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="fdbe69a5-15f5-4a6e-ad07-369995048504" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcActuatorType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e01b4831-7232-4bf0-b0a8-f783ef964568" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ActuatorTypeCommon;" />
                <TemplateRule Parameters="PsetName=Pset_ActuatorTypeLinearActuation;" />
                <TemplateRule Parameters="PsetName=Pset_ActuatorTypeRotationalActuation;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="2563bb17-97e7-4e1d-b05b-85eeda9a6be3" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ActuatorBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="12da41ef-a89e-4add-86fa-dd8eb54d4b60" name="IfcAirTerminalBox" status="sample" applicableRootEntity="IfcAirTerminalBox">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="13c1f742-eb08-4a19-ab9f-b359f97c7d58" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="8c53939a-dbfc-4d83-b778-50c7d1fbbe38" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcAirTerminalBoxType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="1f705ab7-d118-4f38-aecb-1f0516b3b96e" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_AirTerminalBoxTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="0cb0fe5d-c028-4a22-869e-e2333b310b13" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_AirTerminalBoxTypeBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="d014ba7c-7a9a-4e83-8812-47064941c764" name="IfcAirTerminal" status="sample" applicableRootEntity="IfcAirTerminal">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="e9f4c678-69f3-4ff9-ac64-0a52cc964bbc" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="33ad8684-7ad4-437d-8612-ef20efc585a5" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcAirTerminalType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="eeac1ff2-8ae6-4dd1-996b-9b9f7ce8fa31" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_AirTerminalOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_AirTerminalTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b44583d9-4f44-4c8c-aafc-7a3bb2d96a92" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_AirTerminalBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="42e7de5a-78ed-4634-a404-4daa4d61ba19" name="IfcAirToAirHeatRecovery" status="sample" applicableRootEntity="IfcAirToAirHeatRecovery">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="6dd5e667-f86f-4e0a-8fa4-806e58785fc7" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="579125ff-e2b9-4fa0-b2d8-5ebcbeb7cebb" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcAirToAirHeatRecoveryType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="60b26ba0-cc69-4a7a-a9dc-885620c526ff" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_AirToAirHeatRecoveryTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="6586f1fc-9d5e-4e3e-8cad-0be73dc05b3b" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_AirToAirHeatRecoveryBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="8b03b524-0513-4bb4-9be8-7d408bda4036" name="IfcAlarm" status="sample" applicableRootEntity="IfcAlarm">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="d4fba30d-3f7c-40c2-ab05-e6c72a28d416" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="30b34000-e25a-4b62-b3f8-1e0d9312cb73" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcAlarmType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="925434d3-d613-4f35-ac39-bf07a2dfc5f6" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_AlarmTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="c3c01864-39f4-4f75-860b-20f68801522f" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_AlarmBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="2cc05646-c49c-4a30-9998-247384c6018c" name="IfcAudioVisualAppliance" status="sample" applicableRootEntity="IfcAudioVisualAppliance">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="d6b08536-3375-4685-9461-965343ec5bf2" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="5eb49df9-914c-4df5-9e66-8d9d70175565" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcAudioVisualApplianceType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="f8334a54-8300-4919-b37e-e0c290f1a617" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_AudioVisualApplianceTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d78286c8-67cb-4404-8d95-19a422015d4e" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_AudioVisualApplianceBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="6f4ad5eb-0bfa-4cf7-ad68-4a5816459169" name="IfcBeam" status="sample" applicableRootEntity="IfcBeam">
          <Definitions>
            <Definition>
              <Body><![CDATA[]]></Body>
            </Definition>
          </Definitions>
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="334f37c1-745e-47cb-ad30-80e3bfc4a0d6" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="c5447799-6c7f-4c19-bdfa-8b2a2d34b309" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_BeamCommon;" />
                <TemplateRule Parameters="PsetName=Pset_ReinforcementBarPitchOfBeam;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="347db09a-8007-4ae2-a05d-75bf5c9e6c61" name="Quantity Sets" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_BeamBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="dd062731-acda-4d46-a9f8-a4935b6b5bf6" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcBeamType;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="a4b5db29-b55a-4df4-afa0-d57b37756932" name="IfcBoiler" status="sample" applicableRootEntity="IfcBoiler">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="ba0e9fbf-5561-4d32-aac0-fa54140d19c3" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="df665887-a67e-4fe8-b4c6-e57813e30bad" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcBoilerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="cda2c316-e9ed-46c8-8bda-eb37bf2d6f39" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_BoilerTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="2d0bdb6e-6133-4800-8a08-3a18a3f13989" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_BoilerBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="107a1911-8387-4ae1-9d4b-2d8030e6b85d" name="IfcBuilding" status="sample" applicableRootEntity="IfcBuilding">
          <Definitions>
            <Definition>
              <Body><![CDATA[]]></Body>
            </Definition>
          </Definitions>
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="b3eb98ea-871c-4be5-8280-224af86f9db7" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="463257ee-325e-4306-9791-b883b0b8ec4d" name="Building Identity" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The usage of building address, elevation measures and composition type is governed by this concept.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="40100f0d-dd58-47f3-899a-b6a5a6b4f572" />
              <Requirements>
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="3dc5b493-557d-482d-8191-406e5e9cf962" name="Spatial Composition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<blockquote class="note">NOTE&nbsp; By using the inverse relationship <em>IfcBuilding.Decomposes</em> it references <em>IfcProject</em> || <em>IfcSite</em> || <em>IfcBuilding</em> through <em>IfcRelAggregates.RelatingObject</em>. If it refers to another instance of <em>IfcBuilding</em>, the referenced <em>IfcBuilding</em> needs to have a different and higher <em>CompositionType</em>, i.e. COMPLEX (if the other <em>IfcBuilding</em> has ELEMENT), or 
ELEMENT (if the other <em>IfcBuilding</em> has PARTIAL).</blockquote>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="8c0fd2f7-71bb-4e6e-8fdb-0c02b352f14a" />
              <TemplateRules operator="and">
                <TemplateRule Description="Direct assignment to project, if the building is the outermost spatial container, and no site information is provided for building projects" Parameters="Spatial Composite=IfcProject;" />
                <TemplateRule Description="Assignment to site, if the building is the spatial container for the building project with site information " Parameters="Spatial Composite=IfcSite;" />
                <TemplateRule Description="Assignment to another building as spatial container, e.g. if this building represents a building section." Parameters="Spatial Composite=IfcBuilding;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b286cb21-4118-4a4f-895b-cb6456ed623c" name="Spatial Decomposition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<blockquote class="note">NOTE&nbsp; By using the inverse relationship <em>IfcBuilding.IsDecomposedBy</em> it references
<em>IfcBuilding</em> || <em>IfcBuildingStorey</em> through <em>IfcRelAggregates.RelatedObjects</em>. 
If it refers to another instance of&nbsp;<em>IfcBuilding</em>, the referenced <em>IfcBuilding</em> needs 
to have a different and lower <em>CompositionType</em>, i.e. ELEMENT (if the other <em>IfcBuilding</em> 
has COMPLEX), or PARTIAL (if the other <em>IfcBuilding</em> has ELEMENT).</blockquote>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="667f8443-ecce-4a8d-a63f-931fab0453e0" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description="Spatial decomposition into building stories." Parameters="Spatial Parts=IfcBuildingStorey;" />
                <TemplateRule Description="Spatial decomposition into other buildings, e.g. if this building represents a complex building that is subdivided into building sections. " Parameters="Spatial Parts=IfcBuilding;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d3d451c3-e8ee-42de-91c3-2a3ceb789d24" name="Spatial Container" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<blockquote class="note">NOTE&nbsp; If there are building elements and/or other elements directly related to the <em>IfcBuilding</em> (like a curtain wall spanning several stories), they are associated with the <em>IfcBuilding</em> by using the objectified relationship <em>IfcRelContainedInSpatialStructure</em>. The <em>IfcBuilding</em> references them by its inverse relationship <em>IfcBuilding.ContainsElements</em>, referencing any subtype of <em>IfcProduct</em> (with the  exception of other spatial structure element) by <em>IfcRelContainedInSpatialStructure.RelatedElements</em>.</blockquote>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="61dd08ed-fd01-4955-9337-8afd284a0e6f" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description="The building may contain elements directly (if those are not assigned to the individual building stories or spaces." Parameters="Type=IfcElement;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a8d8b5f8-9088-4534-8a5a-179242f7706b" name="Property Sets for Objects" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The following standard property sets are defined for <em>IfcBuilding</em>.]]></Body>
                </Definition>
              </Definitions>
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_BuildingCommon;" />
                <TemplateRule Parameters="PsetName=Pset_BuildingUse;" />
                <TemplateRule Parameters="PsetName=Pset_BuildingUseAdjacent;" />
                <TemplateRule Parameters="PsetName=Pset_OutsideDesignCriteria;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="c1de5d9d-cc2c-44ec-a390-402581e3b7b2" name="Quantity Sets" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The following base quantities are defined for <em>IfcBuilding</em>.]]></Body>
                </Definition>
              </Definitions>
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_BuildingBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="958a6c8c-c17a-4c9a-9035-f6a9d1e4e7ab" name="Product Local Placement" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>
The local placement for <em>IfcBuilding</em> is defined by its
 supertype <em>IfcProduct</em>. It is defined by the
 <em>IfcLocalPlacement</em>, which establishes the local coordinate
 system that is referenced by all geometric representations.
</p>

<ul>

 <li>The <em>PlacementRelTo</em> relationship of
 <em>IfcLocalPlacement</em> shall point to the subtype of <em>IfcSpatialStructureElement</em> that is referenced by the <em>Spatial Decomposition</em> concept (usually of type <em>IfcSite</em>).</li>
 <li>If the <em>IfcBuilding</em> is the uppermost spatial structure element, the <em>PlacementRelTo</em> shall not be set.</li>
</ul>

]]></Body>
                </Definition>
              </Definitions>
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <TemplateRules operator="and">
                <TemplateRule Description="The &lt;em&gt;IfcBuilding&lt;/em&gt; shall be placed relative to another &lt;em&gt;IfcBuilding&lt;/em&gt; or an &lt;em&gt;IfcSite&lt;/em&gt;." Parameters="HasPlacement=IfcLocalPlacement;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="0f6cd84b-a507-4ff4-b4f3-4d1bd1c19b0d" name="FootPrint GeomSet Geometry" status="sample" override="false">
              <Template ref="9456d6d6-a62a-48b4-baff-be2e38baac9c" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="d08fc317-691e-4ca0-9af9-501223fa0123" name="Structure Service Connectivity" status="sample" override="false">
              <Template ref="e3461692-f4c5-4dfa-a8f5-0734a0698f6b" />
            </Concept>
            <Concept uuid="d7ab2ac7-add2-4bbd-85a1-917df69b13d7" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
            </Concept>
            <Concept uuid="ac74e260-02f0-4ab2-b914-b10c1e40d2a0" name="Object Predefined Type" status="sample" override="false">
              <Template ref="25248261-98df-4d0a-9364-5653575ca421" />
            </Concept>
            <Concept uuid="440a3888-d68d-43de-baee-5209bca0149c" name="Object User Identity" status="sample" override="false">
              <Template ref="c19ec186-9cfd-47fc-a4d4-9fb35008d04a" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="bc070568-cf1e-4a28-a801-73fcbcf848f7" name="IfcBuildingElementPart" status="sample" applicableRootEntity="IfcBuildingElementPart">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="f4abfc50-074e-46a9-be2d-9df0242e9d0a" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="88fde536-7e86-4473-899c-1213ba333dd4" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcBuildingElementPartType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="01f1cc19-2d02-416a-9bb0-f7a6d9fb8e67" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="ca83b63f-0707-41f4-a425-c027de8c8a67" name="IfcBuildingElementProxy" status="sample" applicableRootEntity="IfcBuildingElementProxy">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="08d91e70-6882-460d-a52c-b7b7cfb79799" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="cdec2639-055d-4e2d-92fe-6d260b966662" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_BuildingElementProxyCommon;" />
                <TemplateRule Parameters="PsetName=Pset_BuildingElementProxyProvisionForVoid;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="366639ca-18bf-4b2a-9a17-bc56a990ace1" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_BuildingElementProxyQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="414833db-d3c6-4777-af45-27227cf14cf2" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<blockquote class="note">
NOTE&nbsp; The <em>IfcBuildingElementProxyType</em> can be used to share common information among many occurrences of the same proxy without establishing a particular semantic meaning of the type.
</blockquote>


<p>If no <em>IfcBuildingElementProxyType</em> is attached (i.e. if 
only occurrence information is available) the <em>PredefinedType</em>
should be provided. If set to .USERDEFINED. a user defined value has to be provided by the <em>ObjectType</em> attribute.</p>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcBuildingElementProxyType;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="e8614be2-30d0-4816-8ecd-d8a5ac9787b9" name="IfcBuildingStorey" status="sample" applicableRootEntity="IfcBuildingStorey">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="4266f86b-6221-4cfe-8ed0-8845bb43999a" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="3662100e-85bd-49f7-a022-ccd975b62bf7" name="Storey Identity" status="sample" override="false">
              <Template ref="488c9bb2-3102-4b89-bd20-42aa7060ae08" />
            </Concept>
            <Concept uuid="43daeb65-eca0-4317-8243-fa4b700afd1a" name="Spatial Composition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<blockquote class="note">NOTE&nbsp; By using the inverse relationship <em>IfcBuildingStorey.Decomposes</em> it references
(<em>IfcBuilding</em> || <em>IfcBuildingStorey</em>) through 
<em>IfcRelAggregates.RelatingObject</em. If it refers to another 
instance of <em>IfcBuildingStorey</em>, the referenced 
<em>IfcBuildingStorey</em> needs to have a different and higher
 <em>CompositionType</em>, i.e. COMPLEX (if the other <em>IfcBuildingStorey</em> has ELEMENT), or ELEMENT (if the other
 <em>IfcBuildingStorey</em> has PARTIAL).</blockquote>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="8c0fd2f7-71bb-4e6e-8fdb-0c02b352f14a" />
              <TemplateRules operator="and">
                <TemplateRule Description="Assignment to the building, where the building storey is a part of." Parameters="Spatial Composite=IfcBuilding;" />
                <TemplateRule Description="Assignment to another building storey, e.g. if this building storey is a partial storey that refer to another storey." Parameters="Spatial Composite=IfcBuildingStorey;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="2962f3a2-bdae-46c0-8bcb-f903007f63fe" name="Spatial Decomposition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<blockquote class="note">NOTE&nbsp; By using the inverse relationship <em>IfcBuildingStorey.IsDecomposedBy</em> it references
<em>IfcBuildingStorey</em> || <em>IfcSpace</em> through 
<em>IfcRelAggregates.RelatedObjects</em>. If it refers to another 
instance of <em>IfcBuildingStorey</em>, the referenced 
<em>IfcBuildingStorey</em> needs to have a different and lower 
<em>CompositionType</em>, i.e. ELEMENT (if the other 
<em>IfcBuildingStorey</em> has COMPLEX), or PARTIAL (if the other 
<em>IfcBuildingStorey</em> has ELEMENT).</blockquote>
<blockquote class="note">NOTE&nbsp; Multi storey spaces shall be spatially contained by only a single building storey, usually it is the building storey where the base of the space lies.</blockquote>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="667f8443-ecce-4a8d-a63f-931fab0453e0" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description="Reference to the spaces that are assigned to this storey. " Parameters="Spatial Parts=IfcSpace;" />
                <TemplateRule Description="Spatial decomposition into partial stories, if this storey is a main storey having subdivisions." Parameters="Spatial Parts=IfcBuildingStorey;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d9fd3eb0-cd94-45ac-aa37-0f630734f9c6" name="Spatial Container" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>If there are building elements and/or other elements directly
related to the <em>IfcBuildingStorey</em> (like most building
elements, such as walls, columns, etc.), they are associated with
the <em>IfcBuildingStorey</em> by using the objectified
relationship <em>IfcRelContainedInSpatialStructure</em>. The
<em>IfcBuildingStorey</em> references them by its inverse
relationship:</p>
<ul>
<li><em>IfcBuildingStorey.ContainsElements</em> -- referencing any
subtype of <em>IfcProduct</em> (with the exception of other spatial
structure element) by
<em>IfcRelContainedInSpatialStructure.RelatedElements</em>.</li>
</ul>

<p>Elements can also be referenced in an
<em>IfcBuildingStorey</em>, for example, if they span through several
storeys. This is expressed by using the objectified relationship
<em>IfcRelReferencedInSpatialStructure</em>. Systems, such as
building service or electrical distribution systems, zonal
systems, or structural analysis systems, relate to
<em>IfcBuildingStorey</em> by using the objectified relationship
<em>IfcRelServicesBuildings</em>.</p>

]]></Body>
                </Definition>
              </Definitions>
              <Template ref="61dd08ed-fd01-4955-9337-8afd284a0e6f" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="Type=IfcElement;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="358f8fe7-82f9-4ae6-80bc-dc8119e3bd24" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_BuildingStoreyCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="24284107-8e36-4af1-93b9-18479a09ab55" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_BuildingStoreyBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="72b5d7d2-ee16-4f50-884f-0229970679ac" name="Placement" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The local placement for <em>IfcBuildingStorey</em> is defined in
its supertype <em>IfcProduct</em>. It is defined by the
<em>IfcLocalPlacement</em>, which defines the local coordinate
system that is referenced by all geometric representations.</p>

<ul>
 
<li>The <em>PlacementRelTo</em> relationship of
<em>IfcLocalPlacement</em> shall point (if relative placement is
used) to the <em>IfcSpatialStructureElement</em> of type
<em>IfcBuilding</em>, or of type <em>IfcBuildingStorey</em> (e.g. to
position a building storey relative to a building storey complex,
or a partial building storey to a building storey).</li>
 
<li>If the relative placement is not used, the absolute placement
is defined within the world coordinate system.</li>

</ul>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
            </Concept>
            <Concept uuid="c38a5dc9-19d5-4292-8344-7491dfa17db0" name="FootPrint GeomSet Geometry" status="sample" override="false">
              <Template ref="9456d6d6-a62a-48b4-baff-be2e38baac9c" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="c4477c56-5b8f-4064-abde-041994b4a3ca" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
            </Concept>
            <Concept uuid="4ced4638-8e6a-41b9-9736-0624a0c20b72" name="Object Predefined Type" status="sample" override="false">
              <Template ref="25248261-98df-4d0a-9364-5653575ca421" />
            </Concept>
            <Concept uuid="5f6fb7ae-4fcd-45ff-8e56-d87504fef240" name="Object User Identity" status="sample" override="false">
              <Template ref="c19ec186-9cfd-47fc-a4d4-9fb35008d04a" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="5575a353-5244-4bd2-b506-4184e7cf1620" name="IfcBuildingSystem" status="sample" applicableRootEntity="IfcBuildingSystem">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="8793733c-50b5-4da8-ba67-2d1562749e20" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="9e3aa42e-fa15-45b0-8083-394951d3e5f4" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_BuildingSystemCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="4bd87d5b-1725-4a39-85ec-e9477ae94a1b" name="Group Assignment" status="sample" override="false">
              <Template ref="f567967f-5493-44d9-ac51-937c09ac2583" />
            </Concept>
            <Concept uuid="60f03dab-0943-4456-9459-7c2f2731a729" name="System Element Attributes" status="sample" override="false">
              <Template ref="8042f661-d4d7-4e93-a506-6d04a405d05a" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="0a72d003-d489-4f54-a70c-55803146e42a" name="IfcBurner" status="sample" applicableRootEntity="IfcBurner">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="3c505b88-ecd1-400a-9f61-626c99ae1785" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="1d58dc59-3427-469c-8e4c-71d3aa5aa04e" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcBurnerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="ee0dd992-366b-4b94-8591-c7caa833d272" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_BurnerTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="9aefe83c-b3de-45fd-9a6a-fd06bbbc6eb4" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_BurnerBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="ffa9f485-4b9d-4cdc-a9ba-bffda207d01d" name="IfcCableCarrierFitting" status="sample" applicableRootEntity="IfcCableCarrierFitting">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="75462ff8-b282-417d-ae30-99b7d1678b26" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="db0436b0-c237-4e47-9e7b-f771d872e2cd" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description=" " Parameters="RelatingType=IfcCableCarrierFittingType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="6ed391ed-fb08-4345-8cf5-e5c16ea9fb3c" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CableCarrierFittingTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7b18cb66-88db-4813-b255-46bd4ddaa8cf" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CableCarrierFittingBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="64af82fd-fb21-490c-8a19-6799f6e425f5" name="IfcCableCarrierSegment" status="sample" applicableRootEntity="IfcCableCarrierSegment">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="a87e72c1-27b0-44f9-8373-8a891924edd7" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="110a3d0d-bda5-48fa-afe4-185c1af78946" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCableCarrierSegmentType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="63cf3d26-25ed-4f8c-84aa-b4983c591b06" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CableCarrierSegmentTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="3a35315c-e8a3-4c15-95c1-e85d05d7f695" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CableCarrierSegmentBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="9b3f098f-c68d-49cd-a0b8-6ea433458c81" name="IfcCableFitting" status="sample" applicableRootEntity="IfcCableFitting">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="02eb0f30-e598-4414-8a00-0bffba1825de" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="ea239ede-e560-48c3-b36b-b99d1beb527e" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCableFittingType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="c3c8b5d6-ef1e-465d-aba9-394fa282a84a" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CableFittingTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="147f7938-e589-4259-9cde-1e187c2ecbe2" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CableFittingBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="87a9b7ec-453d-45d5-828c-16b2d2d3ad74" name="IfcCableSegment" status="sample" applicableRootEntity="IfcCableSegment">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="8fb6b55a-d1ad-4d1c-a867-15d5221d5021" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="7f3491b7-a364-4c65-be7d-f27db19d02d8" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCableSegmentType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b9e846d5-1245-470e-9cdd-49055407c5b8" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CableSegmentOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_CableSegmentTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e982c4db-3b41-43e5-aac8-fc661a65419b" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CableSegmentBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="81421c21-77e4-4f76-976e-d9c2cef22a02" name="IfcChiller" status="sample" applicableRootEntity="IfcChiller">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="caff51a1-80fc-47dd-b1d4-dfa9c5d4a32a" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="0486d4a2-aef6-4a4d-8e14-3c687f2d8519" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcChillerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="857945bd-7601-40d3-83d4-3ee5af3a30dc" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ChillerTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="f1ad084b-a550-4ae3-aa3d-852a37ec0260" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ChillerBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="2d98f05b-d47c-4bb4-8b6a-696af182258c" name="IfcChimney" status="sample" applicableRootEntity="IfcChimney">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="4fea6d16-a4ac-47c6-aa7f-fe81d4f183b9" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="2c467d4b-b607-49af-ab16-11c4fa8b9500" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcChimneyType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="177abdeb-5c25-4456-b3ce-1849624b3383" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ChimneyCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="94d78284-68ff-4e20-a2ec-4eff6c389e0b" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ChimneyBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="3a7d7377-4126-40e4-be40-c21738f87632" name="IfcCivilElement" status="sample" applicableRootEntity="IfcCivilElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="684ef372-07b4-4a31-a8f5-fca6af424a15" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="647f008d-9004-4557-89e3-964f217eaaf3" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCivilElementType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="aedbb7b9-74e1-4690-a263-d6ca54711f12" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CivilElementCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="24729fdd-ca13-4bea-b828-ca10bd79cc37" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="c60ffd74-7d33-4add-94b9-921118292f49" name="IfcCoil" status="sample" applicableRootEntity="IfcCoil">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="802edf2b-c9c4-4702-ad82-90bda151b100" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="55262fe8-cb29-47a0-b0d6-63d880648c63" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCoilType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="ccac117a-fb72-4428-8bd2-dc6965debd70" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CoilOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_CoilTypeCommon;" />
                <TemplateRule Parameters="PsetName=Pset_CoilTypeHydronic;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7b094d29-baa5-4387-9e2f-6b8cb6db34b7" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CoilBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="1f25eaa5-d321-46b0-b812-2f153b573cee" name="IfcColumn" status="sample" applicableRootEntity="IfcColumn">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="2074c5a0-9087-4bae-b833-cd21bd887fc4" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="0a04dd9e-7cee-4f2b-b179-2bf56616c973" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ColumnCommon;" />
                <TemplateRule Parameters="PsetName=Pset_ReinforcementBarPitchOfColumn;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="f0e63139-f0cc-419f-b72a-6cd1b45a382e" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ColumnBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="623c6641-0264-4af4-8f7d-5a940a55d237" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcColumnType;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="1f9628f0-8733-4707-aa14-9994a2c64426" name="IfcCommunicationsAppliance" status="sample" applicableRootEntity="IfcCommunicationsAppliance">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="4f946e93-3ea8-42a2-99fb-f7abc41e96e8" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="3f8a8e4f-b75b-404d-9269-09b8459a3c4b" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCommunicationsApplianceType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="551ea15e-e003-486b-a041-539098e52506" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CommunicationsApplianceTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="08cf197f-c34d-456e-85fc-189df3c55af3" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CommunicationsApplianceBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="6f5e81e5-13c4-4afc-8fa6-d5641f1e0259" name="IfcCompressor" status="sample" applicableRootEntity="IfcCompressor">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="72cc570b-b75b-4d1f-8a15-e5042a999d6e" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="f11f6186-30f2-4f27-ab7a-c5b7e5780dc9" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCompressorType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="9e13ac0c-6379-470a-8223-e01872a6d28b" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CompressorTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="6ace7c4f-7584-4e05-abdd-6636c7eaf0f2" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CompressorBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="12414243-5e08-4cfe-a94e-291080a53323" name="IfcCondenser" status="sample" applicableRootEntity="IfcCondenser">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="84e096d6-523e-4a76-810e-12ab821b5781" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="f1064f14-a260-4ab4-bb3d-4248505159bd" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCondenserType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="5aef311e-b997-47ab-aefe-6dfffa3632d3" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CondenserTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="da2934ff-3fce-433a-9a0f-4f5931a45571" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CondenserBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="cd655fbd-1693-4540-88a7-9fd3baaa0256" name="IfcController" status="sample" applicableRootEntity="IfcController">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="6336fce1-c7cc-4708-9f8c-89527cd3ac6a" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="15b657ba-691d-464f-852a-aba773d2f7c1" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcControllerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="bf373a87-fb6f-4cd9-9eb1-35bc3a72e2e3" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ControllerTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="3777f863-990f-4118-af6d-477ebf82387c" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ControllerBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="b96c670a-f5db-4c09-a58d-937e30607435" name="IfcCooledBeam" status="sample" applicableRootEntity="IfcCooledBeam">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="e9e1bb73-a062-4440-8b0e-a4a42ab1f478" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="efd7307b-6a92-4e24-a85f-4b86317d3ca6" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCooledBeamType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="0dafd71b-2cdd-466d-a264-9f64131fe8ae" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CooledBeamTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7c314271-95ae-41c9-aa8f-c9081284ba1d" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CooledBeamBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="55e9a398-312c-4ae2-8749-ef21b0b8673a" name="IfcCoolingTower" status="sample" applicableRootEntity="IfcCoolingTower">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="56f59d04-728a-4e82-a269-e4723b765abf" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="60c58820-df43-451a-99fb-2ab2c5feecc5" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCoolingTowerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="4345893a-d351-49e6-8ac4-74f52b86f193" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CoolingTowerTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e9d17b2b-5a2b-41d6-a600-ae89451440c7" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CoolingTowerBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="7625c1aa-cbc1-4884-8297-c77384d93601" name="IfcCovering" status="sample" applicableRootEntity="IfcCovering">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="fe55dbe3-f43a-420e-88f4-8745e7f90723" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="212450b7-1a86-446c-b26b-6d000bd93c1c" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CoveringCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e2f24089-af26-4ced-8a8e-fbde117df17c" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CoveringBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a59ab5e8-e1a9-40e6-b87e-b086ada8df2f" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCoveringType;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="00256003-509d-4fa0-8324-72ecc92e24a2" name="IfcCurtainWall" status="sample" applicableRootEntity="IfcCurtainWall">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="664e7d3e-0cdc-42bb-ab1c-4b8640df00b4" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="a43aee29-33e8-4a8a-a344-282d698333f2" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_CurtainWallCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="436fc847-8291-4140-9a5a-3c5efd07575b" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_CurtainWallQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7d654b33-a761-4261-9502-b7bdd639c19b" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcCurtainWallType;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="f10a1eab-6730-4d1c-83d9-2f60a0fc333f" name="IfcDamper" status="sample" applicableRootEntity="IfcDamper">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="4e0e04b9-6514-4492-8ea0-718d7f34b1ce" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="3d6dc38d-13ac-47cb-8ba0-a1b1cfd08e48" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcDamperType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d99058df-e3a8-4763-91b6-af12e9e7c73b" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_DamperOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_DamperTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="50f6ed02-4643-464c-919c-e55e7270a65c" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_DamperBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="65110b83-88aa-4144-91c4-509032ba04cf" name="IfcDiscreteAccessory" status="sample" applicableRootEntity="IfcDiscreteAccessory">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="e7416193-8457-4952-9e44-1f063e97bb7f" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="0ad7644d-51c4-4ab3-9d3c-b0c82fd90bf9" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcDiscreteAccessoryType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e89fa90c-d16a-4cf8-a5b3-567c42039a7c" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
            </Concept>
            <Concept uuid="2cbfd842-a0c3-4099-a9d6-62a6ba9de9ca" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="380cd69c-2729-49b5-9545-e03fd49b2efb" name="IfcDistributionChamberElement" status="sample" applicableRootEntity="IfcDistributionChamberElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="6fe1fe5d-af0d-4721-ac18-8a0ff8887716" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="5debaba9-7781-4b9d-bb18-bf3f26cec808" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcDistributionChamberElementType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="516a21f8-0ff5-4d86-9072-b83570d5db98" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_DistributionChamberElementCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="c4eeda48-d010-44d2-95d8-d6fbfc23ac1f" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_DistributionChamberElementBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="9fea84bd-c23b-40cb-acef-d04645b8fd46" name="IfcDistributionCircuit" status="sample" applicableRootEntity="IfcDistributionCircuit">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="3ab5860e-61a9-45ae-a337-a16a2f4a2ea1" />
            <TemplateRules operator="and" />
          </Applicability>
        </ConceptRoot>
        <ConceptRoot uuid="1551a8f7-845e-4882-b40b-b27abfa0b2d3" name="IfcDistributionElement" status="sample" applicableRootEntity="IfcDistributionElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="9b1d4d5a-3928-4884-b2ec-e8cfef552412" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="2fce810b-783f-42da-afbb-a923178a5c47" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ElectricalDeviceCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7b0ce5cd-17f4-4271-b51c-8d3fbf9e8092" name="Component to Distribution System" status="sample" override="false">
              <Template ref="72c79ed8-61e6-490f-94f6-e74d7bdb33e1" />
            </Concept>
            <Concept uuid="f5b30c18-c864-4431-ac95-515ed3404820" name="Port Nesting" status="sample" override="false">
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="fc6a831d-921a-4fcd-873c-663584154cc5" name="Clearance Geometry" status="sample" override="false">
              <Template ref="0fdc2380-9ef0-41e9-b0dc-f01fd2f77e6c" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="111864ed-db74-4482-8340-c776fcca2758" name="IfcDistributionElementType" status="sample" applicableRootEntity="IfcDistributionElementType">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="f0ffa459-a01b-453e-b032-2b44614c195e" />
            <TemplateRules operator="and" />
          </Applicability>
        </ConceptRoot>
        <ConceptRoot uuid="ee44df31-d9bd-4c63-b915-89140754bd75" name="IfcDistributionPort" status="sample" applicableRootEntity="IfcDistributionPort">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="79363b36-b235-4f43-b77a-777e450d7f90" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="361c7fc0-66fb-4af9-a51c-ea4c7e9e5c8d" name="Product Local Placement" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The placement of a port indicates the position and orientation of how it may connect to a compatible port on another product.  
The placement shall be relative to the nesting <i>IfcDistributionElement</i>, <i>IfcDistributionElementType</i>, or enclosing <i>IfcDistributionPort</i>.</p>


<p>
The <i>Location</i> is the midpoint of the physical connection, unless otherwise indicated by cardinal point on a material profile.</p>


<p>The <i>Axis</i> points in the direction of the physical connection away from the product if <i>FlowDirection</i> equals <i>SOURCE</i> (or <i>SOURCEANDSINK</i> or <i>NOTDEFINED</i>), or points opposite direction (to the product) if the <i>FlowDirection</i> equals <i>SINK</i>. </p>
<blockquote class="note">NOTE&nbsp; The rationale for positioning the <i>Axis</i> in the direction of flow is to allow for the same geometry to be used, such as for connectors with polarized cross-section.</blockquote>

<p>The <i>RefDirection</i> points in the direction of the local X axis of the material profile, where the local Y axis points up if looking towards the <i>Axis</i> where the local X axis points right.</p>

<p>Upon connecting elements through ports with rigid connections, each object shall be aligned such that the effective <i>Location</i>, <i>Axis</i>, and <i>RefDirection</i> of each port is aligned to be equal (with exception for circular profiles where the <i>RefDirection</i> need not be equal).</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
            </Concept>
            <Concept uuid="a5c84849-4489-49fb-bd2e-87f92ac7024e" name="Port Connectivity" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p><b>IfcDistributionPort</b> may be connected to other objects as follows using the indicated relationship:</p>


<ul>



<li><b>IfcDistributionPort</b> (<em>IfcRelConnectsPorts</em>) : Indicates a connection to another port having the same type and opposite flow direction.  
For port connections between elements, the <em>RelatingPort</em> is set to a port having <em>FlowDirection=SOURCE</em> and the <em>RelatedPort</em> is set to a port having <em>FlowDirection=SINK</em>.  
For aggregation scenarios, ports on a device may be mapped to aggregated devices within, in which case ports on the outer device indicate a single <em>FlowDirection</em> but have an additional connection internally to a port on an aggregated inner device.  
Refer to <a href="../../ifchvacdomain/lexical/ifcunitaryequipment.htm">IfcUnitaryEquipment</a> for an example.</li>



<li><em>IfcDistributionElement</em> (<em>IfcRelConnectsPortToElement</em>): For dynamic ports, indicates the containing element.

</li>
</ul>



<p>Figure 139 illustrates distribution port connectivity.</p>



<table>
<tr><td><img alt="Connection Use Definition" src="../../../figures/ifcdistributionport-connection.png"></td></tr>
<tr><td><p class="figure">Figure 139 &mdash; Distribution port connectivity</p></td></tr>
</table>
 
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="16fe846f-32b1-4595-bbb0-c4ad053dab24" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="80891b54-d030-4a2d-b73d-e8bf00722ca8" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_DistributionPortCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="89e757b8-3d97-43c2-a57b-6e0afb4a2992" name="Port to Distribution System" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>IfcDistributionPort</em> is assigned to the distribution system where it plays its role as inlet or outlet.]]></Body>
                </Definition>
              </Definitions>
              <Template ref="25f605d3-83d4-4c10-a240-cc59abaa8fcc" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="2d1dfc66-a553-4fb3-a499-2434d1956aca" name="IfcDistributionSystem" status="sample" applicableRootEntity="IfcDistributionSystem">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="fa82666b-ba2b-4752-a7e5-e1b2c57d7ec9" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="5250f6be-32b7-492b-98fd-ccf1938d49d0" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_DistributionSystemCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e79cbc68-bc0d-4edb-a68d-b21337cddbce" name="Aggregation" status="sample" override="false">
              <Template ref="02eefcc6-b26c-4f20-9c7c-c30ae74eb9a9" />
              <TemplateRules operator="and">
                <TemplateRule Description="Indicates electrical subsystems within the system." Parameters="PredefinedType=ELECTRICAL;RelatedObjects=IfcDistributionSystem;" />
                <TemplateRule Description="Indicates electrical circuits within the system." Parameters="PredefinedType=ELECTRICAL;RelatedObjects=IfcDistributionCircuit;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a5df541f-45b2-4e67-bd71-fc19bcbd1194" name="Group Assignment" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>For the most common case of an <em>IfcDistributionElement</em> subtype containing ports of a particular <i>PredefinedType</i> that all belong to the same distribution system, the <em>IfcDistributionElement</em> is assigned to the <em>IfcDistributionSystem</em> via the <em>IfcRelAssignsToGroup</em> relationship, where <em>IfcDistributionPort</em>'s are implied as part of the corresponding system based on their <i>PredefinedType</i>.  An <em>IfcDistributionElement</em> may belong to multiple systems, however only one <em>IfcDistributionSystem</em> of a particular <i>PredefinedType</i>.</p>

<p>For rare cases where an <em>IfcDistributionElement</em> subtype contains ports of the same <i>PredefinedType</i> yet different ports belong to different systems, alternatively each <em>IfcDistributionPort</em> may be directly assigned to a single <em>IfcDistributionSystem</em> via the <em>IfcRelAssignsToGroup</em> relationship, where the <i>PredefinedType</i> must match.  Such assignment indicates that the <em>IfcDistributionSystem</em> assigned from the <em>IfcDistributionPort</em> overrides any such system of the same <i>PredefinedType</i> assigned from the containing <em>IfcDistributionElement</em>, if any.</p>

<p>Additionally, an <em>IfcDistributionSystem</em> may in turn be assigned to an <em>IfcDistributionPort</em> indicating the host or origination of the system using <i>IfcRelAssignsToProduct</i>.</p>

<blockquote class="example">
EXAMPLE&nbsp; A gas-powered hot water heater may have three ports: GAS, DOMESTICCOLDWATER, and DOMESTICHOTWATER.  The heater is a member of two systems (GAS and DOMESTICCOLDWATER), and hosts one system (DOMESTICHOTWATER) at the corresponding port.
</blockquote>

<p>Figure 140 illustrates a distribution system for an electrical circuit.</p>

<table>
<tr><td><img src="../../../figures/ifcdistributionsystem-01.png" alt="Instance diagram for electrical circuit"></td></tr>
<tr><td><p class="figure">Figure 140 &mdash; Distribution system assignment</p></td></tr>
</table>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="f567967f-5493-44d9-ac51-937c09ac2583" />
            </Concept>
            <Concept uuid="36b24794-5a7b-4bb5-8e92-25ec24a44472" name="System Element Attributes" status="sample" override="false">
              <Template ref="8042f661-d4d7-4e93-a506-6d04a405d05a" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="46bbd6c7-2d05-4455-b090-1f87e88c3bc2" name="IfcDoor" status="sample" applicableRootEntity="IfcDoor">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="1e7fffe8-ce5f-473d-a2d3-f0883d9c51de" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="5ae57d33-b6c5-443d-985e-4f136b213967" name="Door Attributes" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The opening direction is determined by the local placement of
<em>IfcDoor</em> and the <em>OperationType</em> of the <em>IfcDoorType</em> as 
shown in Figure 133. The <em>IfcDoorTypeOperationEnum</em> defines the general layout of the door type and its symbolic presentation. Depending on the enumerator, the appropriate instances of <em>IfcDoorLiningProperties</em> and <em>IfcDoorPanelProperties</em> are attached in the list of <em>HasPropertySets</em>. The <em>IfcDoorTypeOperationEnum</em> mainly determines the hinge side (left hung, or right hung), the operation (swinging, sliding, folding, etc.) and the number of panels.</p>

<blockquote class="note">NOTE&nbsp; There are different definitions 
in various countries on what a left opening or left hung or left
swing door is (same for right). Therefore the IFC definition may 
derivate from the local standard and need to be mapped
appropriately.</blockquote>



<table><tr><td>
<table border="1" cellpadding="2" cellspacing="2" style=
" width:90%;">

<thead>

 <tr>
  
<td align="left" valign="top"><small><b>Opening
directions</b></small></td>
  
<td align="left" valign="top">
<small><b>Definitions</b></small></td>
 
 <td align="left" valign="top"><small><b>Reference to other
standards</b></small></td>
 
</tr>

</thead>

<tbody>

 <tr valign="top">
  
<td><img src="../../../figures/ifcdoor-fig01.gif" height=
"130" width="150" alt="fig 1"></td>

  <td align="left"><small>The door panel (for swinging doors) opens
always into the direction of the positive Y axis of the local
placement. The determination of whether the door opens to the left
or to the right is done at the level of the <em>IfcDoorType</em>. 
Here it is a left side opening door given 
by <em>IfcDoorType.OperationType</em> = 
SingleSwingLeft</small></td>
  
<td align="left"><small>refered to as LEFT HAND (LH) in US *<br>
<br>
refered to as DIN-R (right hung) in Germany</small></td>
 
</tr>

 <tr valign="top">
  
<td><img src="../../../figures/ifcdoor-fig02.gif" height=
"130" width="150" alt="fig 2"></td>

  <td align="left"><small>If the door should open to the other side,
then the local placement has to be changed. It is still a left side 
opening door, given by <em>IfcDoorType.OperationType</em> =
 SingleSwingLeft</small></td>
  
<td align="left"><small>refered to as RIGHT HAND REVERSE (RHR) in
US *<br>
<br>
refered to as DIN-R (right hung) in Germany</small></td>
 
</tr>
 
<tr valign="top">
  
<td><img src="../../../figures/ifcdoor-fig03.gif" height="130"
width="150" alt="fig 3"></td>
  
<td align="left"><small>If the door panel (for swinging doors)
opens to the right, a separate door style needs to be used (here
<em>IfcDoorTypee.OperationType</em> = SingleSwingRight) and it always 
opens into the direction of the positive Y axis of the local
placement.</small></td>
  
<td align="left"><small>refered to as RIGHT HAND (RH) in US *<br>
<br>
refered to as DIN-L (left hung) in Germany</small></td>

 </tr>

 <tr valign="top">
  
<td><img src="../../../figures/ifcdoor-fig04.gif" height="130"
width="150" alt="fig 4"></td>
  
<td align="left"><small>If the door panel (for swinging doors)
opens to the right, and into the opposite directions, the local
placement of the door need to change. The door style is given by
<em>IfcDoorType.OperationType</em> = SingleSwingRight.</small></td>
  
<td align="left"><small>refered to as LEFT HAND REVERSE (LHR) in US
*<br>
<br>
refered to as DIN-L (left hung) in Germany</small></td>

 </tr>

</tbody>

<tfoot>
 
<tr valign="top">

  <td align="right" colspan="3"><small>* it assumes that the
'inside/private/primary' space is above (top in the pictures) and
 the 'outside/public/secondary' space is below (bottom in the
pictures).</small></td>
 </tr>

</tfoot>

</table>

</td></tr><tr><td><p class="figure">Figure 133 &mdash; Door swing</p></td></tr></table>

<blockquote class="note">NOTE&nbsp; The <em>OverallWidth</em> and
<em>OverallHeight</em> parameters are for informational purpose
only.</blockquote>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="1e5da429-cf7c-4f23-8b32-53ad98e238ad" />
            </Concept>
            <Concept uuid="90f39c25-af83-4e52-a423-2e243ba9865f" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_DoorCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="5a245658-5815-4fa5-9a01-c6494a07999e" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_DoorBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7212e96c-84d7-4d23-8eae-3981d5490844" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcDoorType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="eeaad494-cf46-419f-a5fb-6e1cb0b5318b" name="Material Constituent Set with Override" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The material of the <em>IfcDoor</em> is defined by the
<em>IfcMaterialConstituentSet</em> or as fall back by 
<em>IfcMaterial</em> and attached by the
<em>IfcRelAssociatesMaterial</em> relationship. It is accessible by the inverse <em>HasAssociations</em> relationship.</p>
<p>The following keywords for <em>IfcMaterialConstituentSet.MaterialConstituents[n].Name</em> shall be used:</p>
<ul>
<li>'Lining' - to indicate that the material constituent applies to to the door lining</li>
<li>'Framing' - to indicate that the material constituent applies to to the door framing, if not provided, the 'Lining' material information applied to frams as well</li>
<li>'Glazing' - to indicate that the material constituent applies to to the glazing as well</li>
</ul>
<p>If the fall back single <em>IfcMaterial</em> is referenced, it applies to the lining and framing of the door.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="b31e8fb4-e7b9-48da-bbf4-cfd422f5f6cd" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="dbf94c8b-8361-4e41-9970-c30d45944c15" name="IfcDuctFitting" status="sample" applicableRootEntity="IfcDuctFitting">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="ce781432-21c5-4f17-bdf6-74b1bf2260e3" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="d93f5372-91de-4557-943e-7eb9b2c9bc6a" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcDuctFittingType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="20eace67-a708-4981-933f-45bb3c4729b6" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_DuctFittingOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_DuctFittingTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="91c705e8-d560-4544-8845-77ddbe4d0eac" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_DuctFittingBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="eb60c7c5-4993-40b5-b1d2-12550b427254" name="IfcDuctSegment" status="sample" applicableRootEntity="IfcDuctSegment">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="5827e2a8-d81b-49de-a827-4862a94200c5" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="cca588b9-824e-4683-ba3c-3f6b9af713dc" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcDuctSegmentType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="bfe426b6-6915-47d5-aa71-256db5688fb1" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_DuctSegmentOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_DuctSegmentTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="cac34a2f-6574-498e-86ef-b68175918deb" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_DuctSegmentBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="bc0ecdb2-d895-4272-a617-c9a7a6370974" name="IfcDuctSilencer" status="sample" applicableRootEntity="IfcDuctSilencer">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="54b253ef-7c7d-42da-9489-1a76bb01e987" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="548e8c63-c597-4b18-8b80-05a03bac17a3" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcDuctSilencerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d992a57b-a940-42be-8422-8f3a5643a2a2" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_DuctSilencerTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="3aaede46-7a57-4a29-b011-c0f374fb4adc" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_DuctSilencerBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="a723395f-c7ac-4d7e-addc-dd93b8c7615b" name="IfcElectricAppliance" status="sample" applicableRootEntity="IfcElectricAppliance">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="670adfae-61d9-4e83-98a9-d449366ccc92" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="a0e7fb92-3b70-4cb7-8719-eed99c546c54" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcElectricApplianceType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b1a60c8c-ead7-4b21-a5ef-710e318b1f59" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ElectricApplianceTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a739c51f-c7a0-4b54-8036-cf4ed71e6981" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ElectricApplianceBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="9215f69b-573a-4b0a-9829-297f1770c6f1" name="IfcElectricDistributionBoard" status="sample" applicableRootEntity="IfcElectricDistributionBoard">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="6a4f7bc3-b70a-47e5-8e05-76e68a64f874" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="91617e8a-3e66-4d72-a5a7-a48f7757b312" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcElectricDistributionBoardType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="df4e1590-c649-447c-a285-472766e72ddc" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ElectricDistributionBoardOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_ElectricDistributionBoardTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="5ee3151b-9b4c-4691-bcb3-21c90c4f63cb" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ElectricDistributionBoardBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="1bd84aa4-3429-43e1-ba86-c0153d0acbd1" name="IfcElectricFlowStorageDevice" status="sample" applicableRootEntity="IfcElectricFlowStorageDevice">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="feda32ff-8d6d-4897-8e44-32285e79384e" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="4d5057a3-6048-4f1c-affd-a85c6160f94d" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcElectricFlowStorageDeviceType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="8efe3d02-f831-45f6-b435-7f68d723266f" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ElectricFlowStorageDeviceTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="ce2bcd50-5f89-4fc4-8c4a-05a32f7fee35" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ElectricFlowStorageDeviceBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="3a82101d-fba7-4aa3-a5d9-6590ba2863bd" name="IfcElectricGenerator" status="sample" applicableRootEntity="IfcElectricGenerator">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="c44e3a71-fc5a-46ac-af43-088069a55858" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="5bf67320-5cfc-498d-8bd1-c62440cfc78b" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcElectricGeneratorType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="20207896-6532-489d-93dd-6632f4770eab" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ElectricGeneratorTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="afca1da2-9bc3-49b0-8665-ccdbcec3a6a8" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ElectricGeneratorBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="b8bfca29-a87c-429e-bf8c-0beeeb18c42e" name="IfcElectricMotor" status="sample" applicableRootEntity="IfcElectricMotor">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="0efafafb-be2a-4cb7-ad52-c96bbaaa2426" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="ce78e394-64e4-4040-b00d-2c4aedb99b22" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcElectricMotorType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d6e93e58-d7b9-4d92-8c61-c671cc0c9d85" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ElectricMotorTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="45b8499c-4f47-4d1b-9d78-2d47076b9446" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ElectricMotorBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="aea9f056-d9b8-42e0-bfc6-d7bb0f0ba4ed" name="IfcElectricTimeControl" status="sample" applicableRootEntity="IfcElectricTimeControl">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="99714653-abb7-401a-a0c1-c2c5f0f92a65" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="5789a5ac-7fba-4904-a1d7-5b23a8899f2c" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcElectricTimeControlType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="cfcd1d8a-44f2-4d6e-9195-d073b3984d11" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ElectricTimeControlTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="376bb168-7d6d-4814-a3e5-bd96214b8939" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ElectricTimeControlBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="9c1f586b-c6cc-496c-b9fc-81e5cb1f9523" name="IfcElementAssembly" status="sample" applicableRootEntity="IfcElementAssembly">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="1cc5d759-a002-4eb2-ad6d-eed8c557182c" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="97c28ab0-d880-440c-b55c-8f3a5bd3866e" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcElementAssemblyType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="1a5e4b1c-4078-49cd-96c0-b504c9e384b7" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ElementAssemblyCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="9c50cefe-63ef-4818-a0d1-4a60d624607f" name="Element Decomposition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Any instance of <em>IfcElementAssembly</em> shall be a composite, defining an assembly. Therefore the inverse relationship <em>IsDecomposedBy</em> shall be used by at least one instance of <em>IfcRelAggregates</em>.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="8a27c15a-c4ea-4ca9-8cce-7fbba1c9bce0" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="c58866fd-312a-4ed8-8569-b11a0f694634" name="IfcElement" status="sample" applicableRootEntity="IfcElement">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>All general-case subtypes of <i>IfcElement</i> are included in this model view; standard-case and elemented-case subtypes are excluded.</p>]]></Body>
            </Definition>
          </Definitions>
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="826680f1-b756-4cdf-b424-20b60228e143" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="ab8a65fa-3066-412f-8347-a023abc3f817" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_EnvironmentalImpactIndicators;" />
                <TemplateRule Parameters="PsetName=Pset_EnvironmentalImpactValues;" />
                <TemplateRule Parameters="PsetName=Pset_Condition;" />
                <TemplateRule Parameters="PsetName=Pset_ManufacturerOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_ManufacturerTypeInformation;" />
                <TemplateRule Parameters="PsetName=Pset_ServiceLife;" />
                <TemplateRule Parameters="PsetName=Pset_Warranty;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="1c47ba50-9354-434d-a9ac-1d7c05a290e3" name="Product Local Placement" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Placement of elements is defined by a local placement (a transformation matrix relative to):</p>
<ul>
<li>the spatial container (if not part of an assembly)
 <ul>
  <li>provided by the relationship <i>IfcRelContainedInSpatialStructure</i>.<i>RelatingSpatialStructure</i></li>
  <li>being a subtype of <i>IfcSpatialElement</i>, in most cases, <i>IfcBuildingStorey</i></li>
 </ul>
</li>
<li>the parent aggregation element (if it is an aggregated part)
 <ul>
  <li>provided by the relationship <i>IfcRelAggregates</i>.<i>RelatingObject</i></li>
  <li>being a subtype of <i>IfcElement</i></li>
 </ul>
</li>
</ul>
<p>The local placement shall always be relative.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description="Placement relative to the position and rotation of the spatial element." Parameters="HasPlacement=IfcLocalPlacement;RelativeToElement=IfcSpatialElement;" />
                <TemplateRule Description="Placement relative to the position and rotation of the container element." Parameters="HasPlacement=IfcLocalPlacement;RelativeToElement=IfcElement;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="134dc8e5-a89d-4d54-ac5d-6ba27d2c5a60" name="CoG Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The 'CoG', Center of Gravity, shape representation is used as a means to verify the correct import by comparing the CoG of the imported geometry with the explicily provided CoG created during export.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="a13f0eca-6c45-4a95-bfa6-03cc7da6a6cf" />
            </Concept>
            <Concept uuid="16b0d3f0-2982-4224-ab5b-04288ac8d58b" name="Box Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<table>
 <tr>
  <td><img src="../../../figures/ifcbuildingelement-boundingbox-layout1.gif" border="0" height="275" width="400" alt="bounding box"></td> 
  <td>
<blockquote class="example">EXAMPLE&nbsp; Any <em>IfcElement</em> may be represented by a bounding box, which shows the maximum extend of the body within the object coordinate system established by the <em>IfcObjectPlacement</em>. As shown in Figure 111, the bounding box representation is given by an <em>IfcShapeRepresentation</em> that includes a single item, an <em>IfcBoundingBox</em>.</blockquote>
 </td>
 </tr>
 <tr>
  <td><p class="figure">Figure 111 &mdash; Building element box representation</p></td>
  <td>&nbsp;</td>
 </tr>
</table>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="b942ceb1-b818-4683-871b-9c979fa34dd5" />
            </Concept>
            <Concept uuid="0d974712-679c-43e1-b278-326e680d2fe8" name="Body Solid Geometry General" status="sample" override="false">
              <Template ref="6656c33f-2ce2-43de-89d6-a7ee1262b1a0" />
            </Concept>
            <Concept uuid="ce779b85-4fbf-46dc-bcf0-ee657eccd537" name="Body Tessellation Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The default geometric representation of any <em>IfcElement</em> within this model view is a single or multiple tessellated item. The supported tessellation is a triangulated face set, defined by indices into a Cartesian point list. Optionally normals per vertex can be included as well.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="5cfd4403-6545-4c6d-bc27-0a95a3d09950" />
            </Concept>
            <Concept uuid="522f2b24-b397-458a-9c5c-be641cc2071a" name="Body SweptSolid PolyCurve Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>IfcElement</em> can be geometrically represented by a single or multiple swept solid. In this case, both extruded and revolved solids are supported. The cross section of the swept solid is provided by a poly curve, having straight and circular arc segments. The cross section may have inner loops that result in holes of the resulting swept solid.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="38710ccd-8ff5-41ba-8fda-08300907a02e" />
            </Concept>
            <Concept uuid="eec431fa-85e7-46a4-b858-31edf9abfb62" name="Mapped Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>
<p>Any <em>IfcElement</em> (so far no further constraints are
 defined at the level of its subtypes) may be represented using the
'MappedRepresentation'. This shall be supported as it allows for
 reusing the geometry definition of a type at all occurrences of the
 same type. The results are more compact data sets.</p>

<p>The same constraints, as given for 'Tessellation', 'SweptSolid', and
 'AdvancedSweptSolid' geometric representation, shall apply to the
 <em>IfcRepresentationMap</em>.</p>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="ecfdd7c8-71d5-449f-bf20-e63a25dcb9ba" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="Identifier=Surface;Type=MappedItem;" />
                <TemplateRule Parameters="Identifier=Body;Type=MappedItem;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="2a658ec4-ebaa-4967-82b2-45a2bb75b2ea" name="Product Geometry Layer" status="sample" override="false">
              <Template ref="79a0d5e1-02ae-41d1-a51d-49a22c5b0a14" />
            </Concept>
            <Concept uuid="8e814a1e-6188-4bb0-9bcf-07d8147206b4" name="Product Geometry Colour" status="sample" override="false">
              <Template ref="bb040be6-824a-4e78-9814-1177b257fdc9" />
            </Concept>
            <Concept uuid="648282d7-f66b-43dc-9c2d-2ca98f6773d8" name="Spatial Containment" status="sample" override="false">
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
            </Concept>
            <Concept uuid="1bc4288f-24ad-4398-802e-bc935868ed27" name="Element Composition" status="sample" override="false">
              <Template ref="ca0f65e2-3913-4fdb-8a09-0c5c7a0d5421" />
            </Concept>
            <Concept uuid="21563473-16d3-471a-a3b1-881221b2554e" name="Element Decomposition" status="sample" override="false">
              <Template ref="8a27c15a-c4ea-4ca9-8cce-7fbba1c9bce0" />
              <Requirements>
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="f5a4c7d3-f844-473f-8d8d-8591607d5f99" name="Element Voiding" status="sample" override="false">
              <Template ref="b9005e79-b5c5-4c0b-9d86-046c21ad420d" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="139cc6a8-6b1f-4b75-8104-15fc2f740af3" name="Material Single" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="ce228dc3-1168-4ee5-8cde-ae7874b03000" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialCommon;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialCombustion;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialConcrete;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialEnergy;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialFuel;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialHygroscopic;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialMechanical;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialOptical;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialSteel;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialThermal;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialWater;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialWood;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialWoodBasedBeam;" />
                <TemplateRule Parameters="MaterialPropertySetName=Pset_MaterialWoodBasedPanel;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="8f4f1803-f293-48ef-a50b-899176307cf4" name="Material Constituent" status="sample" override="false">
              <Template ref="b31e8fb4-e7b9-48da-bbf4-cfd422f5f6cd" />
            </Concept>
            <Concept uuid="37f15abd-df8c-4af1-90a9-e2ce3d5eb0f4" name="Classification" status="sample" override="false">
              <Template ref="2a56ad37-c686-401e-a4e0-61b428927798" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="c0f507bf-879f-4b5f-b7f9-21ee442b67eb" name="IfcEngine" status="sample" applicableRootEntity="IfcEngine">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="abfd6268-bb3c-4ebc-832e-71adb604b3b3" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="835a481b-496d-4958-a393-44595d9ae3d8" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcEngineType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="26720c7e-64e4-4466-ae4c-5d4a6f21760c" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_EngineTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="ea685905-8e6e-4291-8fcf-a4313d38dccb" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_EngineBaseQuantities;TemplateType=QTO_OCCURRENCEDRIVEN;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="32865bc3-a78f-4ed5-88c7-dbb5820dd36d" name="IfcEvaporativeCooler" status="sample" applicableRootEntity="IfcEvaporativeCooler">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="85e4a8e7-01d6-45bd-9341-7b19abf393ce" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="916e4e9c-4e43-4397-9bcb-bb08af44426f" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcEvaporativeCoolerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="32530542-3f62-4a3c-b835-42d425f2bfc0" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_EvaporativeCoolerTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a9dd5e34-7fcc-44f1-8f7a-520b14ea7985" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_EvaporativeCoolerBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="46ff6cfe-6fe2-487f-9490-0f48e5de2aeb" name="IfcEvaporator" status="sample" applicableRootEntity="IfcEvaporator">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="a29cbf89-f952-4e16-a1ff-9beccd281863" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="da8d8216-01b7-4400-8903-853339ba74f6" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcEvaporatorType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="63aefa1a-529f-4f8c-8f07-411e1aa18729" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_EvaporatorTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="af7cf97d-0a76-4d8b-88b9-e9a98807f411" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_EvaporatorBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="13ccffcb-2020-4b1b-81c3-19cf1e805cf2" name="IfcFan" status="sample" applicableRootEntity="IfcFan">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="2bb64f0f-57d3-4b19-809d-251b875bdf30" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="0277d569-34b4-46c2-9d2a-610a7adf0403" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcFanType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="49529be7-677a-4caa-b174-8b02c23be24f" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_FanOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_FanTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7cabea22-c647-4cb7-b187-a033a465cf70" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_FanBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="d3e19cc7-d7c2-4767-a132-927c8aecaef8" name="IfcFastener" status="sample" applicableRootEntity="IfcFastener">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="c46179f8-c578-4389-993f-a9c454de13c3" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="ce36cf25-9953-4a11-8b03-c2c45f7ce19b" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcFastenerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b4a11dc2-8e8c-40e3-ac20-b4c542f2a6d6" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
            </Concept>
            <Concept uuid="511b2e3e-e973-4ef7-9714-da3026d05171" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="59ce0cae-c2dc-4cc2-b3f9-5a0c3f8747c6" name="IfcFilter" status="sample" applicableRootEntity="IfcFilter">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="42ba747a-9825-41b1-a3cd-cafe7b8a55a5" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="816352a7-6b21-425d-9bc4-13c3ecbe921d" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcFilterType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="01af4f10-6887-40fa-a03c-43186e676525" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_FilterTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="ae6b0339-a6b6-418e-be82-e1380d27bfdf" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_FilterBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="ed6fc8d1-687b-4fbf-b2da-4c043c13ee76" name="IfcFireSuppressionTerminal" status="sample" applicableRootEntity="IfcFireSuppressionTerminal">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="885685b9-80b1-4101-900e-29c674ee5b4d" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="bd0cedd3-5dfc-454e-86c1-ddd6f3ebba1e" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcFireSuppressionTerminalType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="880bc519-d578-4c04-a244-318a1638f438" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_FireSuppressionTerminalTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="24adf259-acc2-4f80-b4a5-782e9616c308" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_FireSuppressionTerminalBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="aae9e661-ae35-4123-a6ed-1270c2a3d094" name="IfcFlowInstrument" status="sample" applicableRootEntity="IfcFlowInstrument">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="a77d2e8f-c115-4cb9-9492-f3911767c25b" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="af130bc5-a8e0-4c7a-b038-908ffe79af78" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcFlowInstrumentType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="6ab58535-f3fa-4aa2-b2d8-431a8be647e6" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_FlowInstrumentTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="51874cac-717f-4dae-87e2-2a345f3c4790" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_FlowInstrumentBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="7a5975b4-f233-4675-9c17-155d837570fb" name="IfcFlowMeter" status="sample" applicableRootEntity="IfcFlowMeter">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="5d5e89dc-6e35-4fa4-968f-e1467c8d2317" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="b8a05b65-d8fd-4804-9473-14c318c7bf58" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcFlowMeterType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b2b46ae8-02fc-437a-8817-344bcfb9db01" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_FlowMeterOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_FlowMeterTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="361bc889-3d3e-4646-805f-31341f1a6fee" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_FlowMeterBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="e5b6e9f7-ab9d-40dc-9993-e2638eec6fdd" name="IfcFooting" status="sample" applicableRootEntity="IfcFooting">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="ccad0ed8-1351-4d71-aaf8-67d7407cd0b5" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="3f564ba0-ff86-43b0-a954-f08c2ec97555" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcFootingType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e724107c-ad83-4eb1-a0d8-94628b0cd778" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_FootingCommon;" />
                <TemplateRule Parameters="PsetName=Pset_ReinforcementBarCountOfIndependentFooting;" />
                <TemplateRule Parameters="PsetName=Pset_ReinforcementBarPitchOfContinuousFooting;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="4c209334-eeff-4a86-b847-aa8e254d218b" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_FootingBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="5c23c93a-4595-4917-9677-efd6faabdcfb" name="IfcFurniture" status="sample" applicableRootEntity="IfcFurniture">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="6a426777-d2c7-45c1-b4dc-54cc1f7e1247" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="69b40f53-fc1f-43fd-91e8-a406f216c638" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcFurnitureType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="619dc1dd-0657-4369-9cb8-5197f1e952e6" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_FurnitureTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="56a3fc24-f3b2-41c2-9ae4-c54b5e854b64" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="01af5666-d6c5-4df0-a591-7f18e411c7bc" name="IfcGeographicElement" status="sample" applicableRootEntity="IfcGeographicElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="b038d9a2-c42a-4757-8a1e-36998dc644bd" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="b7d9bff2-41ec-4979-881c-c48cf57b5b91" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcGeographicElementType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="552561c7-ead0-46fa-82c2-22fe2c877bcd" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="ef70a7e5-5362-4eac-85d3-2ff71acf3ebd" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="280bbb91-3d77-4b73-88d5-594762c1989d" name="IfcGrid" status="sample" applicableRootEntity="IfcGrid">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="42a17faa-bd1e-4445-970a-a7743b3a1fbf" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="3d02a39c-105e-4e15-95de-d8315e28c9c9" name="Grid Attributes" status="sample" override="false">
              <Template ref="9c7b470d-978a-40fa-a777-449b40588800" />
            </Concept>
            <Concept uuid="8634309c-d5a5-4dc6-b825-c39231ed1741" name="Product Local Placement" status="sample" override="false">
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
            </Concept>
            <Concept uuid="f036530f-76d6-4ec0-9040-b20a00f0537f" name="FootPrint GeomSet Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The 2D geometric representation of <em>IfcGrid</em> is defined
 using the 'GeometricCurveSet' geometry. The following
 attribute values should be inserted
</p>
    <ul>

 <li>
<em>IfcShapeRepresentation.RepresentationIdentifier</em> =
 'FootPrint'.</li>

 <li>
<em>IfcShapeRepresentation.RepresentationType</em> =
 'GeometricCurveSet'.</li>
</ul>
<p>The following constraints apply to the 2D representation:
</p>
<ul>

 <li>The <em>IfcGeometricCurveSet</em> shall be an (and the
 only) <em>Item</em> of the <em>IfcShapeRepresentation</em>. It
 should contain an <em>IfcGeometricCurveSet</em> containing
 subtypes of <em>IfcCurve</em>, each representing a grid axis.
 Applicable subtypes of <em>IfcCurve</em> are:
      <em>IfcPolyline</em>, <em>IfcCircle</em>, <em>IfcTrimmedCurve</em>
 (based on <em>BaseCurve</em> referencing <em>IfcLine</em> or <em>
IfcCircle</em>), and <em>IfcOffsetCurve2D</em>.</li>
 <li>Each subtype of <em>IfcCurve</em> may have a curve style
 assigned, using <em>IfcStyledItem</em> referencing
 <em>IfcCurveStyle</em>.</li>
 <li>Optionally the grid axis labels may be added as
 <em>IfcTextLiteral</em>, and they may have text styles
 assigned, using <em>IfcStyledItem</em> referencing
 <em>IfcTextStyle</em>.</li>
</ul>
<table cellpadding="2" cellspacing="2">

 <tr>
  <td width="510"><img src="../../../figures/ifcdesigngrid-layout1.gif" alt="design grid" border="0"></td>
 
  <td><blockquote>
As shown in Figure 31, the <em>IfcGrid</em> defines a
 placement coordinate system using the
 <em>ObjectPlacement</em>. The XY plane of the
        coordinate system is used to place the 2D grid axes.
 The <em>Representation</em> of <em>IfcGrid</em> is
 defined using <em>IfcProductRepresentation</em>,
 referencing an <em>IfcShapeRepresentation</em>, that
 includes <em>IfcGeometricCurveSet</em> as
 <em>Items</em>. All grid axes are added as
 <em>IfcPolyline</em> to the
 <em>IfcGeometricCurveSet</em>.</blockquote></td>
 </tr>
 <tr>
  <td><p class="figure">Figure 117 &mdash; Grid layout</p>
</td>

  <td>&nbsp;
</td>
 </tr>
</table>
<p>
&nbsp;</p>
<table cellpadding="2" cellspacing="2">
 <tr>

  <td width="510"><img src="../../../figures/ifcgrid-representation.png" alt="representation of a design grid" border="0"></td>

  <td><blockquote>As shown in Figure 32, the attributes <em>UAxes</em> and <em>VAxes</em> define lists of <em>IfcGridAxis</em>
 within the context of the grid. Each instance of
 <em>IfcGridAxis</em> refers to the same instance of
 <em>IfcGridAxis</em> refers to the same instance of <em>IfcCurve</em> (here the subtype <em>IfcPolyline</em>) that is contained within the <em>IfcGeometricCurveSet</em> that represents the<em>IfcGrid</em>.</blockquote></td>

 </tr>

 <tr>
  <td>
 <p class="figure">Figure 118 &mdash; Grid representation</p></td>
  <td>
&nbsp;</td>
 </tr>
</table>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="9456d6d6-a62a-48b4-baff-be2e38baac9c" />
            </Concept>
            <Concept uuid="24fb04df-c6ef-41e2-afee-157b0270e9f9" name="Spatial Containment" status="sample" override="false">
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="d91834a7-d0d1-4c19-9564-44eecf31cd9c" name="IfcGroup" status="sample" applicableRootEntity="IfcGroup">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="18502c34-555c-47c2-bb11-ae8b6037e3e7" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="90d7d5e3-5561-4236-8a58-6cf1a7b284eb" name="Group Assignment" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>IfcGroup</em> establishes an arbitrary collection of objects by utilizing this concept.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="f567967f-5493-44d9-ac51-937c09ac2583" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="deb26556-2a9d-49a4-9e21-4a3541b2c84c" name="IfcHeatExchanger" status="sample" applicableRootEntity="IfcHeatExchanger">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="ad0ba243-1b02-431c-8252-579157016c3a" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="862a64f7-15dd-4b8a-b9aa-410777cf6964" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcHeatExchangerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="412fe766-588d-41a5-889e-4444ac827fdb" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_HeatExchangerTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="02bdac28-1d34-4133-b79e-7dc7500462bc" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_HeatExchangerBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="d1204780-47a3-4ccb-b384-e7ae84b01209" name="IfcHumidifier" status="sample" applicableRootEntity="IfcHumidifier">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="39585b14-be76-4be7-88fd-ba7b1c2d8afc" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="14dacfda-fb21-474e-b904-2208664cc8dd" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcHumidifierType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="bf86b335-b683-4a25-a57e-13185275754b" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_HumidifierTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="2cb30311-11e4-4f1a-bdb6-019f8b659774" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_HumidifierBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="c32420dc-9edf-4f76-8563-ff03a780b7fb" name="IfcInterceptor" status="sample" applicableRootEntity="IfcInterceptor">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="5eddbeee-b21a-43d2-ad10-7c403ef9cf5e" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="ba581035-c441-4c3b-b8a5-04db1e5b3bb6" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcInterceptorType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="22e2ffdb-e96b-462e-8819-74d731d906eb" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_InterceptorTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="0ffbc86b-2241-4e45-a8ed-e49ed26ca254" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_InterceptorBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="c0cb1dc5-8532-4a29-b193-73a88a9505ca" name="IfcJunctionBox" status="sample" applicableRootEntity="IfcJunctionBox">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="60537b10-e174-44b8-87d2-0d5997e30442" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="073d3ad8-5176-4180-b8c6-fd2f10cf77da" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcJunctionBoxType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="801ef566-380a-4112-84cb-1ec213fdee2e" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_JunctionBoxTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="c9edfaad-bcce-45c3-aace-5b2d394840b9" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_JunctionBoxBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="d5afaed9-6a47-4cb3-b731-6fd151e9dec0" name="IfcLamp" status="sample" applicableRootEntity="IfcLamp">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="008fb3b4-1ff0-45bd-ab8d-85a62060e400" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="1e341bb9-ba1c-4a31-9b98-8c224477fd5a" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcLampType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="17289c52-b6f0-47cf-8e14-c81df860b0ba" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_LampTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="79a85257-ba02-4d5f-9142-fb41c508fc93" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_LampBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="e1c26adb-6f73-4a61-a810-36a50875d28d" name="IfcLightFixture" status="sample" applicableRootEntity="IfcLightFixture">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="2fa87599-481f-4469-81dd-94dca6ad5287" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="0d8fe3ca-9bee-40b0-a082-2615924b0834" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcLightFixtureType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="f040f252-2550-4fbf-a811-624b4e0918dc" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_LightFixtureTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b4a3f315-50df-4716-9283-4b00ecbb0305" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_LightFixtureBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="c8aac15c-dc13-4bd3-a5ad-0fab5fbce624" name="IfcMechanicalFastener" status="sample" applicableRootEntity="IfcMechanicalFastener">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="33de3f42-6ec6-4a38-82fb-7c7e48d8d4df" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="1646055f-e907-4026-9527-35ae3c8c684d" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcMechanicalFastenerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="727eb83f-a628-4d73-b361-bf24fec6bb80" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_MechanicalFastenerCommon;" />
                <TemplateRule Parameters="PsetName=Pset_MechanicalFastenerAnchorBolt;" />
                <TemplateRule Parameters="PsetName=Pset_MechanicalFastenerBolt;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="86872537-dc93-4d19-b6fd-0e5f5016bf91" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="9ce6b39b-df5c-4ef5-b7e5-66e5a7860dfb" name="IfcMedicalDevice" status="sample" applicableRootEntity="IfcMedicalDevice">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="1fc4fe52-aab0-41da-8e1f-2123cb4f8bfb" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="9aa7ce0e-0ff8-4f95-907a-ca99ea2f27e0" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcMedicalDeviceType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a75806fd-7bac-483a-8b44-f578ba2d0d3c" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_MedicalDeviceTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="c1afe082-527c-4663-a585-4f60f7ef9b9d" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_MedicalDeviceBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="0ecae211-339b-49fa-8894-0e92f86ff522" name="IfcMember" status="sample" applicableRootEntity="IfcMember">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="d5386343-7ce4-4ee3-9055-fd8efef269b8" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="0a8f7feb-d0ca-412d-9836-8d5a148f1be7" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcMemberType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="09fc3dbd-b02d-4af3-a79d-cba609cce7a8" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_MemberCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d8f1bc3a-b419-45c6-b1d0-dc57f0a5ff9c" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_MemberBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="2586f5da-5a25-451c-bf18-b836013ae2b9" name="IfcMotorConnection" status="sample" applicableRootEntity="IfcMotorConnection">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="73de9dd3-d86d-42a7-890b-f9bc0f887f87" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="678cd9e7-985f-45f8-96de-0027edf3bd10" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcMotorConnectionType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="4c3ef158-55ee-40dd-b81c-19cd9f9b83e1" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_MotorConnectionTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d6468800-491e-475c-86c4-d5493354c200" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_MotorConnectionBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="0380f338-fa4c-4c87-a589-e76064244e60" name="IfcObject" status="sample" applicableRootEntity="IfcObject">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="295c8d9d-9720-4a78-a620-c0502c0169c5" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="bee60286-4b6c-47c3-9294-e7161749bf49" name="Object User Identity" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>An attribute <em>Name</em> and optionally <em>Description</em> can be used for all subypes of <em>IfcObject</em>. For those subtypes, that have an object type definition, such as ifcBeam - IfcBeamType, the common <em>Name</em> and optionally <em>Description</em> is associated with the object type.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="c19ec186-9cfd-47fc-a4d4-9fb35008d04a" />
            </Concept>
            <Concept uuid="1a3a5bfe-eb65-4d91-965a-a0b24b89dca6" name="Object Predefined Type" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>This concepts utilizes the additional level of specializing objects. At the level of subtypes, an <em>PredefinedType</em> enumeration attribute is introduced to select a more specific object occurrence category. If the current precompiled enumeration does not include the specific category, a user defined value can be set.</em>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="25248261-98df-4d0a-9364-5653575ca421" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="ed2ff5fb-f5ee-434d-91ce-a218ce5108b6" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Any object occurrence can be typed by being assigned to a common object type utilizing this concept. A particular rule, restricting the applicable subtypes of <em>IfcTypeObject</em> that can be assigned, is introduced by overriding this concept at the level of subtypes of <em>IfcObject</em>.<p> ]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
            </Concept>
            <Concept uuid="72460826-3578-44f7-b2d3-226beb725fbe" name="Property Sets for Objects" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Any object occurrence can hold property sets, either directly at the object occurrence as element specific property sets, or at the object type, as type property sets. In this case, the properties that are provided to the object occurrence are the combinations of element specific and type properties. In case, that the same property (within the same property set, is defined both, in occurrence and type properties, the property value of the occurrence property overrides the property value of the type property.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="e26040e8-82e2-4f6a-bc63-ac8e6da2d0ae" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="ee2a5066-804f-4b60-89db-18e6a1659063" name="IfcObjectDefinition" status="sample" applicableRootEntity="IfcObjectDefinition">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="2f5ac9dc-eeb4-46f8-bfe5-25a335e5f7ad" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="5b55bf60-cc1b-409c-8856-7981c54d29b0" name="Classification" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Any object occurrence or object type can have a reference to a specific classification reference, i.e. to a particular facet within a classification system.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="811de174-15b7-4a91-a3bd-de944bd54f92" name="IfcOpeningElement" status="sample" applicableRootEntity="IfcOpeningElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="11fdcc4d-0d82-47ef-b03e-c4f5026d12f2" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="875ad4c2-da05-4805-a634-2f835d344d8a" name="Property Sets for Objects" status="sample" override="true">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_OpeningElementCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="729d5b33-2ec2-4387-9c29-29493ce4b9d5" name="Product Local Placement" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Placement of elements is defined by a local placement (a transformation matrix relative to):</p>
<ul>
<li>the element that is voided (if it is an aggregated part)
 <ul>
  <li>provided by the relationship <i>VoidsElement</i>.<i>RelatingBuildingElement</i></li>
  <li>being a subtype of <i>IfcElement</i></li>
 </ul>
</li>
</ul>
<p>The local placement shall always be relative.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <TemplateRules operator="and">
                <TemplateRule Description="Placement relative to the position and rotation of the element being voided." Parameters="HasPlacement=IfcLocalPlacement;RelativeToElement=IfcElement;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="0dc31497-009e-4b56-a350-08683922fbc0" name="Reference Geometry General" status="sample" override="false">
              <Template ref="2a556af4-4b5b-43f8-833a-8a183800b19a" />
            </Concept>
            <Concept uuid="54ed95f6-c025-4e72-a2cd-8b5953ef7660" name="Reference Tessellation Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Since there are no Boolean operations, either as <em>IfcBooleanResult</em> or implicitly by <em>IfcRelVoidsElement</em> the geometry of the <em>IfcOpeningElement</em> shall not be used to subtract the opening from the 'Body' shape representation of the voided element.</p>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="c10a7cd4-27e6-465f-a76e-da460daed660" />
            </Concept>
            <Concept uuid="b864a12d-cd00-47c7-b517-b867d9d7825a" name="Reference SweptSolid PolyCurve Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Since there are no Boolean operations, either as <em>IfcBooleanResult</em> or implicitly by <em>IfcRelVoidsElement</em> the geometry of the <em>IfcOpeningElement</em> shall not be used to subtract the opening from the 'Body' shape representation of the voided element.</p>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="903ec934-3d30-4988-a9ab-21815fc634d7" />
            </Concept>
            <Concept uuid="bd9531e3-cdc2-4940-9fd8-efb2bcc88fbe" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_OpeningElementBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a73ed88b-1c0c-4225-89e2-a70f734c5ef1" name="Element Decomposition" status="sample" override="false">
              <Template ref="8a27c15a-c4ea-4ca9-8cce-7fbba1c9bce0" />
            </Concept>
            <Concept uuid="221fea91-fd56-49b2-aa8d-c2ac5ef40f39" name="Element Composition" status="sample" override="false">
              <Template ref="ca0f65e2-3913-4fdb-8a09-0c5c7a0d5421" />
            </Concept>
            <Concept uuid="c2198614-5046-4512-a752-7100b0e62f33" name="Spatial Containment" status="sample" override="false">
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
            </Concept>
            <Concept uuid="203b2251-8c34-42cc-85a1-5e68ca39dfb2" name="Mapped Geometry" status="sample" override="false">
              <Template ref="ecfdd7c8-71d5-449f-bf20-e63a25dcb9ba" />
            </Concept>
            <Concept uuid="0dce7f23-78f5-468d-bd43-f7bc51b97cde" name="Material Single" status="sample" override="false">
              <Template ref="5f39a814-44a0-4fb3-8dc6-ddaa0560fc54" />
            </Concept>
            <Concept uuid="3109fd62-4474-4a39-85f6-29c17c115269" name="Body SweptSolid PolyCurve Geometry" status="sample" override="false">
              <Template ref="38710ccd-8ff5-41ba-8fda-08300907a02e" />
            </Concept>
            <Concept uuid="1ef42421-7d45-4e04-84a3-e3b031d31a90" name="Body Tessellation Geometry" status="sample" override="false">
              <Template ref="5cfd4403-6545-4c6d-bc27-0a95a3d09950" />
            </Concept>
            <Concept uuid="197fae0a-3690-4006-8f73-a82f5c903f8a" name="Body Geometry General" status="sample" override="false">
              <Template ref="6656c33f-2ce2-43de-89d6-a7ee1262b1a0" />
            </Concept>
            <Concept uuid="e148e351-3d9f-4e92-8631-14bbbcdd344c" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="f257a2ca-bfff-4453-ad4a-8c2dab78982b" name="IfcOutlet" status="sample" applicableRootEntity="IfcOutlet">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="4d840f2f-f88e-47a7-b94f-bf5cafd35ebf" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="fa66391e-f353-476b-814d-4a8be9d54ae4" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcOutletType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="2b7e965d-0e90-4212-b631-c4911b55da18" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_OutletTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="9040ad06-0aa8-4c32-bd17-570865ae2dd2" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_OutletBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="c353f692-f757-47cf-a217-f9050a21021c" name="IfcPile" status="sample" applicableRootEntity="IfcPile">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="921f3305-6b91-4aeb-a7c3-0760247b8b27" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="f315e14e-7db2-4aa3-a43a-9584a7169c9f" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcPileType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a6770b8d-297a-4a2b-8ab9-031987cb096d" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_PileCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="1cc62714-6c53-46ef-ae62-24c0c2bb654f" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_PileBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="dbf79b70-b259-406e-b738-a6491e2c5cb3" name="IfcPipeFitting" status="sample" applicableRootEntity="IfcPipeFitting">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="8205100d-6e48-4989-9de5-533867c1197a" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="c1241a2a-321a-4e2d-9a7b-d94be05afa89" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcPipeFittingType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="da764a4c-4566-407d-9da5-ef1a44a11f63" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_PipeFittingOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_PipeFittingTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="bfe5b78e-084e-4164-8236-06a077db5bc4" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_PipeFittingBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="33ac06bb-0903-4102-9c14-5b6fc4363fe9" name="IfcPipeSegment" status="sample" applicableRootEntity="IfcPipeSegment">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="5592e3b4-a1e1-4b62-830c-62e01d9025fa" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="d0678fcb-54b9-426a-82cc-fdd23e6f5eb4" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcPipeSegmentType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="3024630d-b0d8-49da-893a-43ece5dd8903" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_PipeConnectionFlanged;" />
                <TemplateRule Parameters="PsetName=Pset_PipeSegmentOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_PipeSegmentTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="95d02dd3-ae76-40fe-a5ff-4628c1043b14" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_PipeSegmentBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="42d51bb8-cc35-435e-9c38-01e9de098223" name="IfcPlate" status="sample" applicableRootEntity="IfcPlate">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="b6acc169-57a6-4a05-80b6-daf7cd84cea6" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="ca0db71a-673b-4c0b-a559-ea540480c939" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcPlateType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="5dd551cf-6003-4d12-80cb-c5a30711ae52" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_PlateCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7e85247a-91fa-4f64-a88c-c4de808f6340" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_PlateBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="45d0fd71-1824-4d74-b838-f8bcad703221" name="IfcProject" status="sample" applicableRootEntity="IfcProject">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="5917f9b6-2950-4772-9243-28d187e2355e" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="fb29fda3-4544-4709-99fd-e90bfc197006" name="Project Units" status="sample" override="false">
              <Template ref="4ccaac0c-88f8-4c1d-91fd-2214d0e513c4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description="Length unit as meters, millimeters, or inches." Parameters="NamedUnitType=LENGTHUNIT;" />
                <TemplateRule Description="Angle unit as degrees or radians." Parameters="NamedUnitType=PLANEANGLEUNIT;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="85e713ac-599b-453c-bfda-29a78246924f" name="Project Representation Context 3D" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The main representation context defined at the <em>IfcProject</em> shall be a 3D representation concept.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="0c93e2c2-cb23-46a8-8b9a-c772c280fc26" />
              <Requirements>
                <Requirement applicability="export" requirement="not-relevant" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="not-relevant" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description="Main representation context for all sub contexts defining geometric representations in 3D coordinate space." Parameters="ContextType=Model;" />
                <TemplateRule Description="Main representation subcontext for all 3D body geometry of model elements" Parameters="ContextType=Model;SubContextType=Model;" />
                <TemplateRule Description="Representation subcontext for curve-based axis representation of model elements (wall axis, beam axis, etc.)" Parameters="ContextType=Model;SubContextType=Model;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7cdc703f-2081-43d1-ba70-453801409dd1" name="Project Global Positioning" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The representation context of the project refers to a global positioning, i.e. the local engineering coordinate system of the project has a mapping to a defined projected coordinate system (a rectangular map coordinate system, as used in GIS systems)</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="d326800d-02e0-4442-84e7-b8fb4fde0400" />
            </Concept>
            <Concept uuid="d999fd8d-6987-4ee9-8416-d11b96836fcf" name="Project Type Definitions" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="634e27f7-7edb-4e22-b8cc-25f1cdc765ce" />
            </Concept>
            <Concept uuid="1f3d17a8-cfd2-4b20-ab7f-ec4414926c83" name="Project Classification Information" status="sample" override="false">
              <Template ref="818ca5a3-4574-49b1-9951-ae7bad5c3341" />
            </Concept>
            <Concept uuid="0fd7660d-d8e2-41cb-b959-514c678fafe9" name="Spatial Decomposition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>IfcProject</em> is used to reference the root of the spatial structure of a building or other construction project (that serves as the primary project breakdown and is required to be hierarchical). The spatial structure elements are linked together, and to the <em>IfcProject</em>, by using the objectified relationship <em>IfcRelAggregates</em>. 

<ul>
 <li><em>IfcProject</em>.Decomposes -- shall be NIL, i.e. the <em>IfcProject</em> shall be on top of the root of the spatial structure tree.</li>
 <li><em>IfcProject</em>.IsDecomposedBy -- referencing (<em>IfcSite</em> || <em>IfcBuilding</em> || <em>IfcSpatialZone</em>) by using <em>IfcRelAggregates</em>.RelatedObjects. The <em>IfcSite</em>, <em>IfcBuilding</em>, or <em>IfcSpatialZone</em> being referenced shall be the root of the spatial structure.</li>
</ul>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="667f8443-ecce-4a8d-a63f-931fab0453e0" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description="If referenced, the site is the root of the spatial structure." Parameters="" />
                <TemplateRule Description="If referenced, the building is the root of the spatial structure (no explicit site information included)." Parameters="Spatial Parts=IfcBuilding;" />
                <TemplateRule Description="If referenced, the spatial zone is the root of the spatial structure (to be used as a stub for non-building related projects)." Parameters="Spatial Parts=IfcSpatialZone;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="b9188511-814c-4559-a6cf-646ba67f1dfb" name="IfcProtectiveDevice" status="sample" applicableRootEntity="IfcProtectiveDevice">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="009e96b2-8aff-4d74-949b-69e2d77a61e0" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="f921b798-1bf9-4c10-a096-a31707c3ccc9" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcProtectiveDeviceType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="806e5747-b1a0-428a-a089-25698dacb335" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceBreakerUnitI2TCurve;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceBreakerUnitI2TFuseCurve;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceBreakerUnitIPICurve;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceBreakerUnitTypeMotorProtection;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceTrippingCurve;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e9879fd6-cc5e-4234-93f4-c197f873790d" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ProtectiveDeviceBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="949a4e9f-c911-401d-92e3-81736c073ae9" name="IfcProtectiveDeviceTrippingUnit" status="sample" applicableRootEntity="IfcProtectiveDeviceTrippingUnit">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="34d3522c-c195-4d6e-b5fa-629c1648d665" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="778285c1-8564-42f9-b200-101c08902f12" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcProtectiveDeviceTrippingUnitType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="4f3d4f0a-d897-4e59-bcf0-be46c2ddf8cb" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceTrippingFunctionGCurve;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceTrippingFunctionICurve;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceTrippingFunctionLCurve;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceTrippingFunctionSCurve;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceTrippingUnitCurrentAdjustment;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceTrippingUnitTimeAdjustment;" />
                <TemplateRule Parameters="PsetName=Pset_ProtectiveDeviceTrippingUnitTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b20f657c-d692-4c5e-ba50-a49307b4fc9b" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ProtectiveDeviceTrippingUnitBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="755735c0-eb16-44fc-8830-30163ad6c445" name="IfcPump" status="sample" applicableRootEntity="IfcPump">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="fa09ac2e-2811-491e-9ea4-136f548dc51d" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="3dce3981-57b5-4956-985e-255e217d55f3" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcPumpType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="c92b1e64-76c8-49b4-ade2-d1f92d4d2e11" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_PumpOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_PumpTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="5e39157d-ee60-4341-8a19-89ace0aab6a0" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_PumpBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="320aa658-d827-4379-9acb-5c0667a710ac" name="IfcRailing" status="sample" applicableRootEntity="IfcRailing">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="43376e6d-3f4c-4f32-8ed2-57b051e488dd" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="13e0391d-6b99-4820-8108-42b4df5286ef" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcRailingType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="3f5e3a44-3c78-49d8-b926-7d616c302908" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_RailingCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="6ddebdea-8f53-488d-9541-8fe45f12252e" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_RailingBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d1453f45-a98a-4b64-bbab-5277d2d36c56" name="Material Constituent Set with Override" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The material of the <em>IfcRailing</em> is defined by the
 <em>IfcMaterialConstituent</em> or as fallback by <em>IfcMaterial</em>, and it is attached either directly or at the <em>IfcRailingType</em>.</p>

]]></Body>
                </Definition>
              </Definitions>
              <Template ref="b31e8fb4-e7b9-48da-bbf4-cfd422f5f6cd" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="5e165f26-8ee0-4f18-a9ab-917dd5ad30fa" name="IfcRamp" status="sample" applicableRootEntity="IfcRamp">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="d4db6d26-8543-4f16-be7a-2039a45002e2" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="a6cef96d-1898-473d-baef-4664538592e5" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcRampType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="c3503996-6a71-40e8-a557-8aa7731fd415" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_RampCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="86e04e35-8f06-4668-93a0-bffa9c33367e" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="d24f33eb-f4c9-40d0-aeca-afa9d6fc5f7a" name="Element Decomposition" status="sample" override="false">
              <Template ref="8a27c15a-c4ea-4ca9-8cce-7fbba1c9bce0" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatedObjects=IfcRampFlight;" />
                <TemplateRule Parameters="RelatedObjects=IfcSlab;" />
                <TemplateRule Parameters="RelatedObjects=IfcRailing;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="6e65873b-2ccf-44cc-94c5-cc703b34d7de" name="IfcRampFlight" status="sample" applicableRootEntity="IfcRampFlight">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="bacf8a9b-dd1c-4055-8a29-4985cd0fb8c3" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="314e0810-04bd-4979-9fa3-7eeeea0bac44" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcRampFlightType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a8c7d5b0-8856-4f62-93f1-b0bf01eb37ef" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_RampFlightCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="5d3e4409-9d54-4bd2-8c0e-7f155ea86692" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_RampFlightBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="71cc15ff-4e75-4adc-9bd8-765bf5eeda6b" name="Element Composition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>IfcRampFlight</em> shall only be used within the component breakdown structure of an <em>IfcRamp</em>.]]></Body>
                </Definition>
              </Definitions>
              <Template ref="ca0f65e2-3913-4fdb-8a09-0c5c7a0d5421" />
              <TemplateRules operator="and">
                <TemplateRule Description="The &lt;em&gt;IfcRampFlight&lt;/em&gt; is defined as a component of &lt;em&gt;IfcRamp&lt;/em&gt;." Parameters="Composite=IfcRamp;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="956a45b9-8630-4677-bc09-66457d7cef97" name="Spatial Containment" status="sample" override="true">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Since the <em>IfcRampFlight</em> is always a component of <em>IfcRamp</em> it shall not have an independent spatial containment relationship to a spatial structure.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="aab931ac-b659-4503-8a00-f39117233f9e" name="IfcReinforcingBar" status="sample" applicableRootEntity="IfcReinforcingBar">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="b9a92efc-9344-4e36-a28b-cd210614d4dd" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="be16e143-e157-44b4-b2c6-b204c55cd8e8" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcReinforcingBarType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="1de249ab-2954-4a7e-8104-6af123ed53f3" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ReinforcingBarCommon;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="3334ca53-2094-46a0-b7c8-1c7adacc1d69" name="IfcReinforcingElement" status="sample" applicableRootEntity="IfcReinforcingElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="b68fdc17-1d4a-4a04-bf53-8eb17ec88169" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="89a66378-b01c-4745-86f1-5a6da4f5099f" name="Body AdvancedSwept DiskSolid PolyCurve Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The default geometric item to exchange the body shape representation of reinforcing elements is the <em>IfcSweptDiskSolid</em> using the <em>IfcIndexedPolyCurve</em> to describe the <em>Directrix</em>.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="1c224429-1512-4000-bfff-19fd3129f1ab" />
            </Concept>
            <Concept uuid="a3745e10-c5a3-4e2e-9767-a333db83162f" name="Element Voiding" status="sample" override="true">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The various subtypes of <em>IfcReinforcingElement</em> do not support the concept of voiding - there shall no voids (openings, cut-outs, recesses) being defined as shape features for reinforcing elements.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="b9005e79-b5c5-4c0b-9d86-046c21ad420d" />
            </Concept>
            <Concept uuid="e3665990-c9bc-4d43-8a66-2c6670547914" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ReinforcingElementBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="5e6a6f10-f56e-4495-98a1-392521a4fe2a" name="IfcReinforcingMesh" status="sample" applicableRootEntity="IfcReinforcingMesh">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="70925a50-30f3-4113-b6fd-95b22b5b8588" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="8ae17bee-ecd4-4510-928e-23e92233a74a" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcReinforcingMeshType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="11d05766-cd78-46d1-8e50-c1b1758a7e81" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ReinforcingMeshCommon;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="1d807077-d341-4b5e-8c0a-eddbbd2eb3f6" name="IfcRoof" status="sample" applicableRootEntity="IfcRoof">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="ab903982-2926-427b-b581-0eab51030088" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="5e7e0ac3-8b31-4608-b8ee-e6017c682c54" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcRoofType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="1f0672b9-aea0-4450-9545-d58e62515468" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_RoofCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="999481d1-7027-4ea9-a4a9-2c54625dbbc3" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_RoofBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="19a4b41b-a03c-4338-ae0d-05866911f643" name="Element Decomposition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p><em>Geometric representation by aggregated elements</em></p>
<p>If the <em>IfcRoof</em> has components (referenced by
<em>SELF\IfcObject.IsDecomposedBy</em>) then no independent
geometric representation shall defined for the <em>IfcRoof</em>.
The <em>IfcRoof</em> is then geometrically represented by the
geometric representation of its components. The components are
accessed via 
<em>SELF\IfcObject.IsDecomposedBy[1].RelatedObjects</em>. The 
geometric representations that are supported for the aggregated 
elements are defined with each element. See geometric use 
definition for <em>IfcSlab</em>, <em>IfcBeam</em>, <em>IfcColumn</em>,
<em>IfcBuildingElementPart</em> and other subtypes of
<em>IfcBuildingElement</em>.</p>


<p>Figure 134 illustrates roof placement, with an <em>IfcRoof</em> defining the local placement for all aggregated elements.</p>

<table cellpadding="2" cellspacing="2">
<tr valign="top"><td valign="top" align="left"><img src="../../../figures/ifcroof-layout1.gif" alt="roof" width="399" height="274" border="0"></td></tr>
<tr><td><p class="figure">Figure 134 &mdash; Roof placement</p></td></tr>
</table>

]]></Body>
                </Definition>
              </Definitions>
              <Template ref="8a27c15a-c4ea-4ca9-8cce-7fbba1c9bce0" />
              <TemplateRules operator="and">
                <TemplateRule Description="A roof may be aggregated into slabs for each face." Parameters="RelatedObjects=IfcSlab;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="96ce6a14-e91b-4435-80df-6ead7a2fdd28" name="IfcRoot" status="sample" applicableRootEntity="IfcRoot">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="4581d8c9-3493-4714-b8be-5a01d4b3514a" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="96f9e17d-27a3-4a59-b583-be668284f3e2" name="Identity" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p><em>Globally unique ID, as compressed uuid, is assigned to each subtype of <em>IfcRoot</em>.</p>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="28aa177b-07c5-4180-986d-59336043445b" name="Revision Control" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Ownership, history, and merge state is captured using <i>IfcOwnerHistory</i>.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="b441c773-3fdc-42b6-a323-ad268dcd85f2" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="112d9df9-d867-4e0d-b860-eb2376e43809" name="IfcSanitaryTerminal" status="sample" applicableRootEntity="IfcSanitaryTerminal">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="2114ea75-800f-4dee-9a67-00a96e014c65" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="5016b111-5d53-418f-ab09-bf5d315367fc" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcSanitaryTerminalType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="f5edc345-da90-4859-8996-4eebdeee31eb" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_SanitaryTerminalTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="4852024b-44b5-43b2-8539-893a88a61581" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_SanitaryTerminalBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="19b8c910-4026-477a-9254-8de653fb268f" name="IfcSensor" status="sample" applicableRootEntity="IfcSensor">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="c674efb0-8aca-433b-b1bb-44407b626e95" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="125c947e-c526-4956-b6c9-fc8a14e255cd" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcSensorType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="20efa96b-8e0d-4692-94bf-c94c15c0af1c" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_SensorTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="32fe9156-5ad7-4f1a-986b-0568b825bc49" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_SensorBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="bf4a9caa-928a-4510-87df-d9a7dc0ae5be" name="IfcShadingDevice" status="sample" applicableRootEntity="IfcShadingDevice">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="6d177be2-ed15-4c54-a374-41302a244516" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="604ab438-f636-4b34-8638-020680b017fb" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcShadingDeviceType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a4f7a0e5-53d3-4079-9c61-e7cbf144c4fe" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ShadingDeviceCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b2fd835c-77cd-4f81-aa23-9f05ef7678da" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="015811e2-0063-4a8a-b4d6-97b9d406e7c1" name="IfcSite" status="sample" applicableRootEntity="IfcSite">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="da862ca3-4d34-4f77-b54c-afab9153edf3" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="c9d38083-a919-464e-8d2d-a0f25c059092" name="Site Attributes" status="sample" override="false">
              <Template ref="f6c9eecc-f5fc-4096-a037-12c2cd4d9d97" />
              <Requirements>
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="a3feffdb-78e2-4c87-ad0a-9908857dac92" name="Spatial Composition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>By using the inverse relationship <em>IfcSite.Decomposes</em> it references <em>IfcProject</em> ||
<em>IfcSite</em> through <em>IfcRelAggregates.RelatingObject</em>, If it 
refers to another instance of <em>IfcSite</em>, the referenced
 <em>IfcSite</em> needs to have a different and higher 
<em>CompositionType</em>, i.e. COMPLEX (if the other <em>IfcSite</em>
 has ELEMENT), or ELEMENT (if the other <em>IfcSite</em> has 
PARTIAL).</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="8c0fd2f7-71bb-4e6e-8fdb-0c02b352f14a" />
              <TemplateRules operator="and">
                <TemplateRule Description="Direct assignment to project, if the site is the outermost spatial container (default)" Parameters="Spatial Composite=IfcProject;" />
                <TemplateRule Description="Assignment to a site complex." Parameters="Spatial Composite=IfcSite;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d86fc729-0ef4-4412-9a90-751762d3422d" name="Spatial Decomposition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>By using the inverse relationship <em>IfcSite.IsDecomposedBy</em> it references (em>IfcSite</em> ||
<em>IfcBuilding</em> || <em>IfcSpace</em> by
 <em>IfcRelAggregates.RelatedObjects</em>. If it refers to another
instance of <em>IfcSite</em>, the referenced <em>IfcSite</em> needs to 
have a different and lower <em>CompositionType</em>, i.e. ELEMENT (if the
 other <em>IfcSite</em> has COMPLEX), or PARTIAL (if the other
<em>IfcSite</em> has ELEMENT).</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="667f8443-ecce-4a8d-a63f-931fab0453e0" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description="Spatial decomposition into building." Parameters="Spatial Parts=IfcBuilding;" />
                <TemplateRule Description="Spatial decomposition directly into spaces that are allocated at the site." Parameters="Spatial Parts=IfcSpace;" />
                <TemplateRule Description="Spatial decomposition directly into spatial zones that are allocated at the site." Parameters="Spatial Parts=IfcSpatialZone;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="95db597d-6033-4da7-8e2c-54a9080ea5cc" name="Spatial Container" status="sample" override="false">
              <Template ref="61dd08ed-fd01-4955-9337-8afd284a0e6f" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description="The site may contain elements directly (if those are not assigned to the individual building, building stories or spaces" Parameters="Type=IfcElement;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="38756051-0a03-4275-b7ff-a5683f611386" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_LandRegistration;" />
                <TemplateRule Parameters="PsetName=Pset_SiteCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7297e6d0-2fa6-4769-a31c-cdff3974d1cb" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_SiteBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b0b5cf45-fd54-4a1c-a911-3d43cca1b75f" name="Product Local Placement" status="sample" override="false">
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
            </Concept>
            <Concept uuid="44a01bfe-09a0-40d6-ac52-f0e458838f61" name="FootPrint GeomSet Geometry" status="sample" override="false">
              <Template ref="9456d6d6-a62a-48b4-baff-be2e38baac9c" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="f100d9f5-790d-4932-b998-0071443c4888" name="Object User Identity" status="sample" override="false">
              <Template ref="c19ec186-9cfd-47fc-a4d4-9fb35008d04a" />
            </Concept>
            <Concept uuid="bff2aadb-6cc6-44d9-a532-2dd720adbb0e" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
            </Concept>
            <Concept uuid="c37069e1-90b4-45d7-b321-46aa5cd7180d" name="Object Predefined Type" status="sample" override="false">
              <Template ref="25248261-98df-4d0a-9364-5653575ca421" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="cb195c9e-038b-4ce8-9a06-26fdaf89c90f" name="IfcSlab" status="sample" applicableRootEntity="IfcSlab">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="02c2ca6a-059f-46a0-8981-f1d4fb242bed" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="8e14277f-616d-42d6-ab48-72ca7852b9b0" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcSlabType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="91baaa77-56c2-415a-b791-d08bc6da3b61" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_SlabCommon;" />
                <TemplateRule Parameters="PsetName=Pset_PrecastSlab;" />
                <TemplateRule Parameters="PsetName=Pset_ReinforcementBarPitchOfSlab;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="f9c6fcf0-2e1e-4ec5-b567-bfb2e943311e" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_SlabBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="f4777926-bd53-4f17-aed6-fb321a268371" name="IfcSolarDevice" status="sample" applicableRootEntity="IfcSolarDevice">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="4da4ae25-e05f-44a6-9139-2b5074722a6e" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="d9e159fa-bcd2-43d5-aa3d-3fa0d3c6aabd" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcSolarDeviceType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e54d91bb-3a67-4877-a3ee-eef2b04351c8" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_SolarDeviceTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="94555a18-8dcf-42ae-8cb6-a4ba9f27bd14" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_SolarDeviceBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="75217ae0-a1fb-43ad-b52d-a6b5d75e53fb" name="IfcSpace" status="sample" applicableRootEntity="IfcSpace">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="c5a21892-3064-4870-ae43-6496eda10540" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="d6239bb5-eddc-4027-a426-172a3b2c2e61" name="Space Attributes" status="sample" override="false">
              <Template ref="543a52a7-799c-4349-a0ba-04c3fc2914d3" />
            </Concept>
            <Concept uuid="a116252d-43fd-4270-bde9-d6b47ad0cfa4" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcSpaceType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="324dff43-e2e2-47b3-862c-a3ac53308061" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_SpaceCommon;" />
                <TemplateRule Parameters="PsetName=Pset_SpaceCoveringRequirements;" />
                <TemplateRule Parameters="PsetName=Pset_SpaceThermalDesign;" />
                <TemplateRule Parameters="PsetName=Pset_SpaceThermalLoad;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="880fcd23-1511-46ae-9a08-f467e1d6a098" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_SpaceBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="bc7cd9af-bb2f-42f7-b8a7-c8970e0afe8f" name="Spatial Decomposition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>By using the inverse relationship <em>IfcSpace.Decomposes</em> it references <em>IfcSite</em> ||
<em>IfcBuildingStorey</em> by 
<em>IfcRelAggregates.RelatingObject</em>.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="667f8443-ecce-4a8d-a63f-931fab0453e0" />
              <TemplateRules operator="and">
                <TemplateRule Description="Relation to the &lt;em&gt;IfcSite&lt;/em&gt; to which this space belongs to" Parameters="Spatial Parts=IfcSite;" />
                <TemplateRule Description="Relation to the &lt;em&gt;IfcBuildingStorey&lt;/em&gt; to which this space belongs to (default)" Parameters="Spatial Parts=IfcBuildingStorey;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="9e219929-5710-412e-b75a-34421fe32645" name="Spatial Container" status="sample" override="false">
              <Template ref="61dd08ed-fd01-4955-9337-8afd284a0e6f" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="7d82617c-3d38-47cc-86fe-f729fc3ed84f" name="Product Local Placement" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The local placement for <em>IfcSpace</em> is defined at its 
supertype <em>IfcProduct</em>. It is defined by the 
<em>IfcLocalPlacement</em>, which defines the local coordinate system 
that is referenced by all geometric representations.</p>

<ul>

 <li>The <em>PlacementRelTo</em> relationship of 
<em>IfcLocalPlacement</em> shall point to the local placement of the
 <em>IfcSpatialStructureElement</em> of type <em>IfcBuildingStorey</em> or <em>IfcSite</em> if
 relative placement is used.</li>
 
<li>If the relative placement is not used, the absolute placement
 is defined within the world coordinate system.
 </li>

</ul>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
            </Concept>
            <Concept uuid="fcddf0b1-ae2e-4ec0-855b-bc6e976107a8" name="FootPrint GeomSet Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[
<p>The following constraints apply to the 2D representation:</p>

<ul>
 
<li>An <em>IfcBoundedCurve</em> is required, using
<em>IfcPolyline</em> for faceted space contours or
 <em>IfcCompositeCurve</em> for space contours with arc segments. For
 spaces with inner boundaries, a set of <em>IfcBoundedCurve</em>'s is
 used, that should be grouped into an
 <em>IfcGeometricCurveSet</em>.</li>

</ul>


<p>&nbsp;</p>


<table cellpadding="2" cellspacing="2">
 
<tr valign="top">
  <td align="left" valign="top"><img src="../../../figures/ifcspace_2d-layout1.gif" alt="2d representation" border="0" height="300" width="400"></td>
  <td><blockquote class="example">EXAMPLE&nbsp; Figure 125 shows a two-dimensional bounded curve representing the
foot print of <em>IfcSpace</em>.</example></td>
 </tr>

 <tr>
  <td><p class="figure">Figure 125 &mdash; Space footprint</p></td>
  <td>&nbsp;</td>
 </tr>

</table>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="9456d6d6-a62a-48b4-baff-be2e38baac9c" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Description="A single curve defining the outer boundary" Parameters="Identifier=FootPrint;Type=Curve2D;Items=IfcBoundedCurve;" />
                <TemplateRule Description="Set of curves (outer and inner) representing the floor projection," Parameters="Identifier=FootPrint;Type=GeometricCurveSet;Items=IfcGeometricCurveSet;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="eb232576-bd64-469e-87a2-8a77a507e881" name="Body SweptSolid PolyCurve Geometry" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[
<p>The following constraints apply to the 'Body' 'SweptSolid' representation:</p>

<ul>

 <li><u>Solid</u>: <em>IfcExtrudedAreaSolid</em> is required,</li>
 
<li><u>Profile</u>: <em>IfcArbitraryClosedProfileDef</em> and <em>IfcArbitraryProfileDefWithVoids</em> shall be
supported. The profile outline and inline curves are defined using <em>IfcIndexedPolyCurve</em>.</li>

 <li><u>Extrusion</u>: The extrusion direction shall be vertically,
i.e., along the positive Z Axis of the co-ordinate system of the
 containing spatial structure element.</li>

</ul>


<p>Figure 126 shows an extrusion of an arbitrary profile definition with voids into the swept area solid of <em>IfcSpace</em>.</p>


<table cellpadding="2" cellspacing="2">

 <tr valign="top">
  <td align="left" valign="top">
   <img src=
"../../../figures/ifcspace_standard-layout1.gif" alt="fig1" border="0" 
height="300" width="400"></td>
 </tr>
 
<tr>
  <td><p class="figure">Figure 126 &mdash; Space body swept solid</p></td></tr>

</table>

]]></Body>
                </Definition>
              </Definitions>
              <Template ref="38710ccd-8ff5-41ba-8fda-08300907a02e" />
              <TemplateRules operator="and">
                <TemplateRule Description="Only extruded area solid shall be used for the swept solid representation." Parameters="Identifier=Body;Type=SweptSolid;Geometry=IfcExtrudedAreaSolid;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a18635bc-e7ab-4f06-9ea5-e92e6080b248" name="Object User Identity" status="sample" override="false">
              <Template ref="c19ec186-9cfd-47fc-a4d4-9fb35008d04a" />
            </Concept>
            <Concept uuid="7af6ece2-a562-4aa1-b752-f302f5782145" name="Object Predefined Type" status="sample" override="false">
              <Template ref="25248261-98df-4d0a-9364-5653575ca421" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="e2975bc4-c1dc-47c6-bb71-cd0846049ebf" name="IfcSpaceHeater" status="sample" applicableRootEntity="IfcSpaceHeater">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="14deaed4-6c5f-4221-9211-0518667cdff4" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="82c306c7-9c52-43d0-b5c8-1d40f3cf4d54" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcSpaceHeaterType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="708bda44-165d-447b-b262-4303daa40d9e" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_SpaceHeaterTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="3e4d2f94-1c0b-4f3f-8e28-1ef3c65990de" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_SpaceHeaterBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="ff677d4e-7307-46f0-9424-9063ac36a867" name="IfcSpatialElement" status="sample" applicableRootEntity="IfcSpatialElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="673b0d93-bcf9-46ba-b51b-b0e86732d563" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="40593df6-210e-4d98-af69-4430577704c0" name="Spatial Element Type Predefined Type" status="sample" override="false">
              <Template ref="1a9b609e-a295-4a3f-aed8-588712adce11" />
            </Concept>
            <Concept uuid="2c2e67b0-ce73-4abb-a426-d73e9bcfbc98" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ThermalLoadAggregate;" />
                <TemplateRule Parameters="PsetName=Pset_ThermalLoadDesignCriteria;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="34e273a5-f732-4021-bbc6-7a11b13d3c26" name="IfcSpatialStructureElement" status="sample" applicableRootEntity="IfcSpatialStructureElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="0d1d4c23-7c95-4d63-8d7a-36408cb3cfea" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="f8b1bb98-5339-4954-aed3-67c774c9e47e" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_PropertyAgreement;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="c10bdb79-0b90-42dc-9ff4-c918a605ef5d" name="IfcSpatialZone" status="sample" applicableRootEntity="IfcSpatialZone">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="442262e3-0e0f-476d-bd10-31f6be168f5b" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="e8a320e2-4ad6-416b-975d-46110d169b9e" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_SpatialZoneCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="8dbc0e09-1e54-441c-bfdb-9b68680da4d8" name="Spatial Zone Attributes" status="sample" override="false">
              <Template ref="0541525d-d527-4edc-a326-e82c23c30c7d" />
            </Concept>
            <Concept uuid="702402da-2431-41f4-9eaa-001d53154f9a" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcSpatialZoneType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b9986eb0-c34d-4c4e-be2e-cd9e035c57d5" name="Product Local Placement" status="sample" override="false">
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
            </Concept>
            <Concept uuid="38b73d1a-f412-4ceb-a893-c14bbaf59d72" name="Spatial Composition" status="sample" override="false">
              <Template ref="8c0fd2f7-71bb-4e6e-8fdb-0c02b352f14a" />
            </Concept>
            <Concept uuid="8289e647-2095-4fb2-9084-29bd95ec2a67" name="Spatial Decomposition" status="sample" override="false">
              <Template ref="667f8443-ecce-4a8d-a63f-931fab0453e0" />
            </Concept>
            <Concept uuid="3f9784cb-257b-4ad1-ac5e-57677f6ac068" name="Spatial Container" status="sample" override="false">
              <Template ref="61dd08ed-fd01-4955-9337-8afd284a0e6f" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="4c5eb004-2c4b-43cb-8acb-3a1fccb5a777" name="IfcStackTerminal" status="sample" applicableRootEntity="IfcStackTerminal">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="a4243a1f-cfe8-4ad5-a056-09687ee2a036" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="f6abffd9-84f7-4059-a2b9-82fd53789e95" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcStackTerminalType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="7ce8a1d5-60ae-43a0-a6c0-d98f487a23bb" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_StackTerminalTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="03043976-7fc4-4453-acb7-61aade149688" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_StackTerminalBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="e3145225-7c30-4c97-bc6d-812274061f0a" name="IfcStair" status="sample" applicableRootEntity="IfcStair">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="307e8cd1-7996-4003-8f1b-398b1b94c40d" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="e3b92820-c47e-4d67-8b18-fcc61a671a3a" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcStairType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a95d98ca-8bce-4aaa-96d4-5810bec23dd2" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_StairCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="38d8dbf5-0992-418a-b611-ebff1a1e06e6" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
            <Concept uuid="d206b2cb-436f-4004-90ed-63eec187bc20" name="Element Decomposition" status="sample" override="false">
              <Template ref="8a27c15a-c4ea-4ca9-8cce-7fbba1c9bce0" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatedObjects=IfcStairFlight;" />
                <TemplateRule Parameters="RelatedObjects=IfcSlab;" />
                <TemplateRule Parameters="RelatedObjects=IfcRailing;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="9ebbf2e8-1753-4513-8507-2e86d27ca831" name="IfcStairFlight" status="sample" applicableRootEntity="IfcStairFlight">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="9721cc74-54da-4fbb-aaa4-5e3fc5158245" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="4bc2545a-c9d7-47af-94f6-e963e17323eb" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcStairFlightType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="f898c165-64e4-4a13-93eb-721d42f9623b" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_StairFlightCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="509e18e0-870c-4e01-83db-8b8b9d073a1d" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_StairFlightBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="0d4fed1c-0724-4cf2-b49e-52ccc1e1d944" name="Element Composition" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>IfcStairFlight</em> shall only be used within the component breakdown structure of an <em>IfcStair.</em>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="ca0f65e2-3913-4fdb-8a09-0c5c7a0d5421" />
            </Concept>
            <Concept uuid="f17e7b31-4e53-48ee-8b33-468cf61b9dc6" name="Spatial Containment" status="sample" override="true">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Since the <em>IfcRampFlight</em> is always a component of <em>IfcRamp</em> it shall not have an independent spatial containment relationship to a spatial structure.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="639b7a4d-c021-4b1d-b8d1-eeaa773809c8" name="IfcSwitchingDevice" status="sample" applicableRootEntity="IfcSwitchingDevice">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="227f551e-d2cd-4b34-9db7-b7812d75fcfd" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="38e27401-381d-4d58-9e8e-b177977a8425" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcSwitchingDeviceType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="8c1427c5-c5b3-472b-917b-26f55ac15bda" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_SwitchingDeviceTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="0058d1b2-f7b0-472e-8a70-735acf57130f" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_SwitchingDeviceBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="12b2fe96-c45a-48c2-b978-201a31a50499" name="IfcSystem" status="sample" applicableRootEntity="IfcSystem">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="75992271-0dbe-47b3-af13-a8641668dc3b" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="16bb076f-5506-4a38-84f4-75c2ac0fed96" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ServiceLifeFactors;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="b8bff5e1-fe38-49ab-9950-6cb54390f2cc" name="IfcSystemFurnitureElement" status="sample" applicableRootEntity="IfcSystemFurnitureElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="5ae4615f-6461-4392-b1c7-f03338e4c46d" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="d15a896a-21f3-4c16-a199-b11c532c1f12" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcSystemFurnitureElementType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="cb6fbced-c6d0-40fb-a569-c25b82762bb8" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_SystemFurnitureElementTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="fdeee8d3-50c2-4251-bd66-0d22e072ea6d" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="0083719d-b812-40d2-8729-64eb6fb58930" name="IfcTank" status="sample" applicableRootEntity="IfcTank">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="68b0314d-22b3-4649-9a67-a21eddb194a4" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="e249eaf2-d7b1-42d8-b106-0fe94340154a" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcTankType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="23cf88e8-0cbe-4065-b7ae-e482db6e2bb1" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_TankOccurrence;" />
                <TemplateRule Parameters="PsetName=Pset_TankTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="6d85adce-f2ad-4ee5-92f0-8919ef463613" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_TankBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="91f944fb-abde-4175-a3db-42bf45ae4c7f" name="IfcTendon" status="sample" applicableRootEntity="IfcTendon">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="5ca88b05-66cc-4dbb-aab1-ed7f574d7b3c" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="5dd50404-3c82-49fa-a637-7ebf1a64d195" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcTendonType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="241d7d48-3776-43eb-9999-601bc416f664" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_TendonCommon;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="9db2a7b7-6696-4dc7-867b-c84f4dc9b637" name="IfcTendonAnchor" status="sample" applicableRootEntity="IfcTendonAnchor">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="0611f507-b5d4-46f9-9fc1-dd4a2fd46001" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="d19a463c-bd37-4ee8-a0da-c85c1df2fc13" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcTendonAnchorType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e6c3e306-1c35-4a4a-8197-80e32ded0bfd" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_TendonAnchorCommon;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="330b2b25-c4ef-4a8e-a87f-89b7350b3516" name="IfcTransformer" status="sample" applicableRootEntity="IfcTransformer">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="1439f3e4-dd18-4b7e-b7fb-d2084c63e1a3" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="9499eb7e-f6ac-471b-8d9c-019e4d4f2471" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcTransformerType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="973629e8-92a9-41ae-8fe1-a674c5642c6c" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_TransformerTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d74ef05a-77f4-4720-9527-c7970ebc8255" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_TransformerBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="d209507b-6103-45bb-8edf-2eb16cd38d53" name="IfcTransportElement" status="sample" applicableRootEntity="IfcTransportElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="514f4b5d-753b-4e21-bd47-27a342ca3854" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="aeb52acf-4331-4f87-913a-a2232859243f" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[    <p>
      <em>IfcTransportElement</em> defines the occuurence of any
      transportation device, common information about
      transportation device types (or styles) is handled by
      <em>IfcTransportElementType</em>. The
      <em>IfcTransportElementType</em> (if present) may establish
      the common&nbsp;type name, usage (or predefined) type, common
      material layer set, common set of properties and common shape
      representations (using <em>IfcRepresentationMap</em>). The
      <em>IfcTransportElementType</em> is attached using the
      <em>IfcRelDefinedByType.RelatingType</em> objectified
      relationship and is accessible by the inverse
      <em><font color="#0000FF">IsTypedBy</font></em> attribute.
    </p>
    <p>
      If no <em>IfcTransportElementType</em> is attached&nbsp;(i.e.
      if only occurrence information is given) the
      <em>PredefinedType</em> should be provided. If set to
      .USERDEFINED. a user defined value can be provided by the
      <em>ObjectType</em> attribute.
    </p>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcTransportElementType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="36655aba-b7da-4a8d-95a5-6d64421a60ec" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_TransportElementCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="51089dd1-3dc8-4d97-813e-73f1b8709f59" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="908b7b85-2693-45ba-a38f-30582d751716" name="IfcTubeBundle" status="sample" applicableRootEntity="IfcTubeBundle">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="1a7e3db6-4cb7-431c-92bc-79342580ac3d" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="649bb373-3d53-46b5-b34d-4a0a1ea7a469" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcTubeBundleType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="4f4a67be-7125-4e9c-98d6-02f02aceda38" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_TubeBundleTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="06d8b726-edd1-4f95-8196-48d6853ff095" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_TubeBundleBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="2006bcb1-0e62-45fc-b454-a4c5a60901a2" name="IfcTypeProduct" status="sample" applicableRootEntity="IfcTypeProduct">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="1be0dffc-0252-4c69-922d-6b199046c104" />
            <TemplateRules operator="and" />
          </Applicability>
        </ConceptRoot>
        <ConceptRoot uuid="5de8fc67-4667-4b71-b3a0-b876ab634448" name="IfcUnitaryControlElement" status="sample" applicableRootEntity="IfcUnitaryControlElement">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="1c96c0c6-30d7-48b0-be63-f8458385f3d8" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="1aec3747-7f1d-40ec-ad20-bd4c1d867ff1" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcUnitaryControlElementType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="b4b37630-e000-403c-ab4a-00432e95fbfb" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_UnitaryControlElementTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="0d9f7da1-3cd3-4723-b9c0-952cd05df9b0" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_UnitaryControlElementBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="b03bb9dc-81c2-4f8a-8726-370bcffa7df2" name="IfcUnitaryEquipment" status="sample" applicableRootEntity="IfcUnitaryEquipment">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="757258f1-2f7a-415c-8c9e-bd4927756d3d" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="aa92fe64-713b-4d3b-af24-0a7e7cde2740" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcUnitaryEquipmentType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="0deea1ef-ebde-42a0-b47d-e59d1b1bd692" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_UnitaryEquipmentTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="2acf23fd-0e49-41de-b703-bbff9e7c2329" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_UnitaryEquipmentBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="cd996e7d-b4f5-402e-99a2-021a90fdfd2b" name="IfcValve" status="sample" applicableRootEntity="IfcValve">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="6dca833e-41be-4ad3-afff-d77ea6e29d63" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="a576229e-aa26-46c8-a213-718af592f7dd" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcValveType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="ca95ff25-a02e-491b-b7ee-854b452c110a" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ValveTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="e9d0c3a5-4064-4a65-8d9a-5a8acfd9b171" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_ValveBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="0b7ea008-987c-4cb3-810a-e80eef1bef21" name="IfcVibrationIsolator" status="sample" applicableRootEntity="IfcVibrationIsolator">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="00b27193-72a5-4a05-bc88-c780dfc919b0" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="49f7ce06-96e5-454f-ac51-3391aed3da00" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcVibrationIsolatorType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="5f260e7f-2b03-4fdd-a01c-c2a214bfe8e6" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_VibrationIsolatorTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="68492df2-f009-40a3-80bb-87c84f65eb54" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_VibrationIsolatorBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="04a16035-7d76-4a2b-bf13-8b640826aaf6" name="IfcVoidingFeature" status="sample" applicableRootEntity="IfcVoidingFeature">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="771f7610-94b6-4054-8846-282157632b88" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="a02d874d-8938-40e4-88a5-6437f5b3ea9a" name="Product Local Placement" status="sample" override="false">
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
            </Concept>
            <Concept uuid="4c01096b-a442-4770-b791-8687d74857b6" name="Reference Geometry General" status="sample" override="false">
              <Template ref="2a556af4-4b5b-43f8-833a-8a183800b19a" />
            </Concept>
            <Concept uuid="03f9d54b-dbce-4e4a-8380-5e2b4b9ed91f" name="Reference Tessellation Geometry" status="sample" override="false">
              <Template ref="c10a7cd4-27e6-465f-a76e-da460daed660" />
            </Concept>
            <Concept uuid="7ddd732f-27d3-47a5-a61d-1aee0679c512" name="Reference SweptSolid PolyCurve Geometry" status="sample" override="false">
              <Template ref="903ec934-3d30-4988-a9ab-21815fc634d7" />
            </Concept>
            <Concept uuid="5faaf604-e1f8-4000-ba86-a90f19bdd55b" name="Material Single" status="sample" override="false">
              <Template ref="5f39a814-44a0-4fb3-8dc6-ddaa0560fc54" />
            </Concept>
            <Concept uuid="97a3d028-ca17-463c-815a-bd9c66a3ee1e" name="Element Decomposition" status="sample" override="false">
              <Template ref="8a27c15a-c4ea-4ca9-8cce-7fbba1c9bce0" />
            </Concept>
            <Concept uuid="1ebaf541-61ab-446e-9ad1-790eb143c9ab" name="Element Composition" status="sample" override="false">
              <Template ref="ca0f65e2-3913-4fdb-8a09-0c5c7a0d5421" />
            </Concept>
            <Concept uuid="db78604e-4394-4ea7-b2e3-9eff3ab40cd3" name="Spatial Containment" status="sample" override="false">
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
            </Concept>
            <Concept uuid="b2d2071e-f7ac-4f1e-8374-c54109756f87" name="Body SweptSolid PolyCurve Geometry" status="sample" override="false">
              <Template ref="38710ccd-8ff5-41ba-8fda-08300907a02e" />
            </Concept>
            <Concept uuid="2b5bcd29-a465-4417-8212-7fbc0bb82ee8" name="Mapped Geometry" status="sample" override="false">
              <Template ref="ecfdd7c8-71d5-449f-bf20-e63a25dcb9ba" />
            </Concept>
            <Concept uuid="77474e96-3fb6-4bc8-9c6e-628c62a4e094" name="Body Tessellation Geometry" status="sample" override="false">
              <Template ref="5cfd4403-6545-4c6d-bc27-0a95a3d09950" />
            </Concept>
            <Concept uuid="886560cb-ddbd-4595-9f31-78b41ca5efa5" name="Body Geometry General" status="sample" override="false">
              <Template ref="6656c33f-2ce2-43de-89d6-a7ee1262b1a0" />
            </Concept>
            <Concept uuid="302e9bb6-1932-4dfe-b58f-18c5f2fff1f5" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="8d8a4c59-8ae3-4d91-b999-0c364a144e69" name="IfcWall" status="sample" applicableRootEntity="IfcWall">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="0dd1fc9a-27be-4fa6-956d-bcd5a261ef90" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="53d2d203-9cb5-4794-9c5e-e41256294d97" name="Object Typing" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcWallType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="4a37912b-7947-4c97-930d-676120a85b6b" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_WallCommon;" />
                <TemplateRule Parameters="PsetName=Pset_ReinforcementBarPitchOfWall;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="282f358b-08d7-45f5-936e-5dec0a05be0a" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_WallBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="d94dbf9e-e533-4686-b1b0-0c8c5f688b10" name="IfcWasteTerminal" status="sample" applicableRootEntity="IfcWasteTerminal">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="86486a30-e36d-4aa7-8b6f-a835b3148f3a" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="e944883c-8da3-4a1a-9826-55828b0a213a" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcWasteTerminalType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="5d5846d7-554a-4c4e-a118-d037f439654c" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_WasteTerminalTypeCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="d139ae73-9bfe-4352-91d9-ffbe038075f0" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_WasteTerminalBaseQuantities;" />
              </TemplateRules>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="0ef29a62-58a8-47c1-8412-35ebc9ba4d90" name="IfcWindow" status="sample" applicableRootEntity="IfcWindow">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="383f3cd3-41d0-4eb3-aa5e-f7cf5331b551" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="42256660-4da8-4ebb-95f1-2718953b4cf9" name="Window Attributes" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>IfcWindowTypePartitioningEnum</em> defines the general layout of the window type and its symbolic presentation. Depending on the enumerator, the appropriate instances of
<em>IfcWindowLiningProperties</em> and <em>IfcWindowPanelProperties</em> are attached in the list of <em>HasPropertySets</em>. The <em>IfcWindowTypePartitioningEnum</em> mainly determines the way of partitioning the window into individual window panels and thereby number and position of window panels.</p>
<p>See <em>IfcWindowTypePartitioningEnum</em> for the correct usage of panel partitioning and <em>IfcWindowPanelProperties</em> for the opening symbols for different panel operation types.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="f80dd8bf-fc59-4138-aa05-5ed02c4b6be2" />
            </Concept>
            <Concept uuid="c0aacca3-18cd-4c20-bcac-acd4fce97d89" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_WindowCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="5e520c0e-42a4-44b8-a026-6e6543b269ec" name="Object Typing" status="sample" override="false">
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="RelatingType=IfcWindowType;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="068f1dde-2371-433c-9150-f5f6b4414e81" name="Quantity Sets" status="sample" override="false">
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
                <Requirement applicability="import" requirement="recommended" exchangeRequirement="dcd96125-898e-4ff0-b294-eb02afe953aa" />
              </Requirements>
              <TemplateRules operator="and">
                <TemplateRule Parameters="QsetName=Qto_WindowBaseQuantities;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="53f06b2e-6097-471a-9e5d-11ec282b6895" name="Material Constituent Set with Override" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The material of the <em>IfcWindow</em> is defined by the
 <em>IfcMaterialConstituentSet</em> or as fall back by
 <em>IfcMaterial</em> and attached by the
<em>IfcRelAssociatesMaterial</em> relationship. It is accessible by the inverse <em>HasAssociations</em> relationship.</p>
<p>The following keywords for <em>IfcMaterialConstituentSet.MaterialConstituents[n].Name</em> shall be used:</p>
<ul>
<li>'Lining' - to indicate that the material constituent applies to to the window lining</li>
<li>'Framing' - to indicate that the material constituent applies to to the window panels, if not provided, the 'Lining' material information applied to panels as well</li>
<li>'Glazing' - to indicate that the material constituent applies to to the glazing part</li>
</ul>
<p>If the fall back single <em>IfcMaterial</em> is referenced, it applies to the lining and framing of the window.</p>]]></Body>
                </Definition>
              </Definitions>
              <Template ref="b31e8fb4-e7b9-48da-bbf4-cfd422f5f6cd" />
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="bff13bf4-d2ea-4ae3-beae-f0e91fe9ef71" name="IfcZone" status="sample" applicableRootEntity="IfcZone">
          <Applicability uuid="00000000-0000-0000-0000-000000000000" status="sample">
            <Template ref="7a6693ca-8eba-4fb6-8299-3a3b105caa5e" />
            <TemplateRules operator="and" />
          </Applicability>
          <Concepts>
            <Concept uuid="db1ad375-1db7-4493-8c18-98002d2bf379" name="Property Sets for Objects" status="sample" override="false">
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <TemplateRules operator="and">
                <TemplateRule Parameters="PsetName=Pset_ZoneCommon;" />
              </TemplateRules>
            </Concept>
            <Concept uuid="a6c1d2b2-da18-4070-861d-988471931703" name="Group Assignment" status="sample" override="false">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>An <em>IfcZone</em> is a spatial system under which individual
<em>IfcSpace</em>'s (and other <em>IfcZone</em>'s) are grouped. In
contrary to the <em>IfcSpatialZone</em> entity, <em>IfcZone</em> is a
mere grouping, it can not define an own geometric representation
and placement. Therefore it cannot be used for spatial zones
having a different shape and size compared to the shape and size
of aggregated spaces.</p>



<blockquote class="note">
NOTE&nbsp; The <em>IfcZone</em> is regarded as the
spatial system (as compared to the building service, electrical,
or analytical system), the name remains <em>IfcZone</em> for
compatibility reasons, instead of using a proper naming
convention, like IfcSpatialSystem.</blockquote>



<blockquote class="note">
NOTE&nbsp; One of the purposes of a zone is to
define a fire compartmentation. In this case it defines the
geometric information about the fire compartment (through the
contained spaces) and information, whether this compartment is
ventilated or sprinkler protected. In addition the fire risk code
and the hazard type can be added, the coding is normally defined
within a national fire regulation. All that information is
available within the relevant property sets. Again, if an
independent shape has to be provided to the fire compartment,
then the entity <em>IfcSpatialZone</em> shall be
used.
</blockquote>



<p>In case of a zone denoting a (fire) compartment, the following types should be used, if
applicable, as values of the <em>ObjectType</em> attribute:</p>

<ul>

 <li><b>'FireCompartment'</b>: a zone of spaces, collected to represent a single fire compartment.</li>
<li><b>'ElevatorShaft'</b>: a collection of spaces within an elevator, potentially going through many storeys.</li>
 
<li><b>'RisingDuct'</b>: A collection of vertical airspaces.</li>
 
<li><b>'RunningDuct'</b>: A collection of horizontal airspaces.</li>

</ul>
]]></Body>
                </Definition>
              </Definitions>
              <Template ref="f567967f-5493-44d9-ac51-937c09ac2583" />
            </Concept>
            <Concept uuid="13a408be-b74e-48e3-b5a9-5a273c5ad611" name="System Element Attributes" status="sample" override="false">
              <Template ref="8042f661-d4d7-4e93-a506-6d04a405d05a" />
            </Concept>
          </Concepts>
        </ConceptRoot>
      </Roots>
    </ModelView>
  </Views>
</mvdXML>