<?xml version="1.0"?>
<mvdXML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" uuid="00000000-0000-0000-0000-000000000000" xmlns="http://buildingsmart-tech.org/mvdXML/mvdXML1-0">
  <Definitions />
  <Templates>
    <ConceptTemplate uuid="ccb45aa2-74e1-46e8-8e35-ca5e5d7cc9dd" name="Roots" status="" applicableSchema="IFC4" applicableEntity="IfcRoot">
      <Definitions>
        <Definition>
          <Body><![CDATA[      <p class="std">

        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 class="std">File size may be reduced by interning (sharing) non-rooted data instances;

        </li>

        <li class="std">Database retrieval may be more efficient by storing non-rooted data local to rooted data

        instances;

        </li>

        <li class="std">Storage size may be reduced by avoiding IFC-GUID storage for items not requiring direct

        retrieval;

        </li>

        <li class="std">Comparisons of differences may be done at a higher level where the context of such change is

        apparent;

        </li>

        <li class="std">Implementations may treat non-rooted data instances as immutable for efficiency or simplified

        usage.

        </li>

      </ul>

]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" name="Identity" status="" applicableSchema="IFC4" applicableEntity="IfcRoot">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p class="std">

An object needs to be identifiable for accurate processing by both human and automated processes. Identification may be through several attributes such as Identification, Name, 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 class="std">

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

      </p>

<p>

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>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="GlobalId" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcGloballyUniqueId" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="Name" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="Description" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcText" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="b441c773-3fdc-42b6-a323-ad268dcd85f2" name="Revision Control" status="" applicableSchema="IFC4" applicableEntity="IfcRoot">
          <Definitions>
            <Definition>
              <Body><![CDATA[      <p class="std">

        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 class="std">

        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 <i>direct attributes</i> 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 class="std">

        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 class="std">

        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 class="std">

        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>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="OwnerHistory" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcOwnerHistory" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="OwningUser" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcPersonAndOrganization" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="ThePerson" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcPerson" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="TheOrganization" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcOrganization" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="OwningApplication" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcApplication" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="ApplicationDeveloper" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcOrganization" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="State" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcStateEnum" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="ChangeAction" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcChangeActionEnum" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="CreationDate" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcTimeStamp" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="6fbed597-69bb-43c0-a837-1006f2d3dac3" name="Descriptions" status="" applicableSchema="IFC4" applicableEntity="IfcRoot">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Objects may have descriptions included to aid in human identification of the object.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="Description" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcText" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="805deb96-2684-4bc5-a9ad-3a29199dc023" name="Project" status="" applicableSchema="IFC4" applicableEntity="IfcContext">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>All files contain a single <i>IfcProject</i> instance indicating overall context and a directory of objects contained within.</p>]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="ab1e2cfd-9f21-4f4a-b6af-cc26d84e45ac" name="Project Declaration" status="" applicableSchema="IFC4" applicableEntity="IfcContext">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>The project provides a directory of objects contained within using declaration relationships.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="Declares" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelDeclares" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedDefinitions" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcObjectDefinition" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="4ccaac0c-88f8-4c1d-91fd-2214d0e513c4" name="Project Units" status="" applicableSchema="IFC4" applicableEntity="IfcContext">
          <Definitions>
            <Definition>
              <Body><![CDATA[  <p class="std">

        The project context includes the definition of the default units within the IFC data set. Default units are

        those units that apply:

      </p>

      <ul class="std">

        <li class="std">to all geometric representation items within the geometric representation contexts;

        </li>

        <li class="std">to all attributes with a defined datatype indicating a measure datatype;

        </li>

        <li class="std">to all properties and quantities with a defined datatype indicating a measure datatype and with

        no local unit definitions provided.

        </li>

      </ul>
]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="UnitsInContext" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcUnitAssignment" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="Units" Cardinality="_asSchema">
                      <EntityRules />
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="ef090973-08aa-4b7d-a6af-75bc89ebf215" name="SI Units" status="" applicableSchema="IFC4" applicableEntity="IfcContext">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>SI units are defined according to standard prefix and standard name.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="UnitsInContext" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcUnitAssignment" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Units" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcSIUnit" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="UnitType" AttributeName="UnitType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcUnitEnum" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Prefix" AttributeName="Prefix" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcSIPrefix" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcSIUnitName" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="58df55ef-a765-4c49-992d-55483a25e0b8" name="Conversion Units" status="" applicableSchema="IFC4" applicableEntity="IfcContext">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Conversion units are defined according to a conversion factor (and conversion offset for temperature) relative to a specified base SI unit.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="UnitsInContext" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcUnitAssignment" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Units" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcConversionBasedUnitWithOffset" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="UnitType" AttributeName="UnitType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcUnitEnum" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="ConversionFactor" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMeasureWithUnit" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule RuleID="ConversionType" AttributeName="ValueComponent" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule RuleID="ConversionFactor" EntityName="IfcReal" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule AttributeName="UnitComponent" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcSIUnit" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule RuleID="BaseUnitPrefix" AttributeName="Prefix" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcSIPrefix" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule RuleID="BaseUnitName" AttributeName="Name" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcSIUnitName" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="ConversionOffset" AttributeName="ConversionOffset" Cardinality="_asSchema">
                                  <EntityRules />
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="87582ef5-9a6e-4848-8284-b33e9f08cfa5" name="Derived Units" status="" applicableSchema="IFC4" applicableEntity="IfcRoot">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="UnitsInContext" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcUnitAssignment" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Units" Cardinality="_asSchema">
                          <EntityRules />
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                    <EntityRule EntityName="IfcUnitAssignment" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Units" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcDerivedUnit" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                            <EntityRule EntityName="IfcMonetaryUnit" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                        <AttributeRule AttributeName="Units" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcDerivedUnit" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                            <EntityRule EntityName="IfcMonetaryUnit" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="38dac6f0-997c-4544-9bca-b6326b9a3e4b" name="Project Context" status="" applicableSchema="IFC4" applicableEntity="IfcContext">
          <Definitions>
            <Definition>
              <Body><![CDATA[ <p class="std">

        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.

      </p>
]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="RepresentationContexts" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="ContextIdentifier" AttributeName="ContextIdentifier" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule RuleID="ContextType" AttributeName="ContextType" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="CoordinateSpaceDimension" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDimensionCount" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="WorldCoordinateSystem" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcAxis2Placement3D" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="TrueNorth" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDirection" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="818ca5a3-4574-49b1-9951-ae7bad5c3341" name="Project Classification Information" status="" 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>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesClassification" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingClassification" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcClassification" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="HasReferences" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcClassificationReference" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="HasReferences" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcClassificationReference" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Identification" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="Source" AttributeName="Source" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="ReferenceTokens" AttributeName="ReferenceTokens" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcIdentifier" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="627f19f8-d2ee-4b19-a13c-e5149018b976" name="Project Document Information" status="" applicableSchema="IFC4" applicableEntity="IfcContext">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Projects may define external documents, which may be used to attach arbitrary information to objects contained within the same project or referencing projects.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesDocument" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingDocument" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDocumentInformation" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Location" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcURIReference" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="ElectronicFormat" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDocumentElectronicFormat" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="f71de28e-4352-4f0d-9830-4fa13534a705" name="Project Library Information" status="" applicableSchema="IFC4" applicableEntity="IfcContext">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Projects may define libraries holding revisions of the project such as model servers or databases.  Multiple libraries may be referenced to indicate multiple revisions, multiple branches, and/or multiple servers.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesLibrary" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingLibrary" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLibraryInformation" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Version" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="Publisher" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcPersonAndOrganization" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="VersionDate" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDateTime" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="Location" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcURIReference" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="4b385464-b99a-42bc-a17a-a0a647a1ab5b" name="Association" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
      <Definitions>
        <Definition>
          <Body><![CDATA[]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="4a224609-6578-4c75-afcf-8affa86e5ef2" name="Classification" code="" status="" 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>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesClassification" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingClassification" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcClassificationReference" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule RuleID="" AttributeName="Identification" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcIdentifier" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="" AttributeName="ReferencedSource" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcClassification" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="Source" AttributeName="Source" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Tokens" AttributeName="ReferenceTokens" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="7dadae9c-0026-44d3-ade7-9a843fe2ef0b" name="Document" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[
      <p class="std">
        Any object or property can have associated documents indicating external files. Documents may be referenced in
        their entirety such as to capture product brochures, data sheets, multimedia content, or thumbnail images. Contents
        within documents may be referenced from any object, and may be used to synchronize information in other files such as
        work schedules for project management applications.
      </p>

]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesDocument" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="RelatingDocument" AttributeName="RelatingDocument" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDocumentReference" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule RuleID="" AttributeName="ReferencedDocument" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDocumentInformation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="" AttributeName="Location" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcURIReference" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="3d761f09-23a2-4c01-8bc5-8762aa92bc23" name="Library" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[
      <p class="std">
        Any object, type object, property, and some resource schema entities can have associated library entities indicating
        the source of data such as from a model server or product library, or simply enriching the data with more details.
        Libraries may be referenced in their entirety from projects or project libraries indicating the master source and version of data. 
        Contents within libraries may be referenced from any object, type object, property, and some resource schema entities within a project or project library.
      </p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesLibrary" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="RelatingLibrary" AttributeName="RelatingLibrary" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLibraryReference" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule RuleID="" AttributeName="ReferencedLibrary" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcLibraryInformation" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="52561fda-4281-409d-aa07-da485302249e" name="Approval" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[
      <p class="std">
        Any object or property can have associated approvals indicating who is required to approve the data, the status
        of whether it has been approved, and the date/time of such approval. 
        Approvals may require multiple parties fulfilling various roles.
      </p>

]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="" AttributeName="HasAssociations" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesApproval" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="" AttributeName="RelatingApproval" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcApproval" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="c08b264c-f7c6-479f-af7f-5d645c130ea8" name="Constraint" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[
      <p class="std">
        Any object or property may have associated constraints
        indicating a qualitative objective or a quantitative metric
        to be met.
      </p>

      <p class="std">
        Constraints based on metrics are measurable, such that the
        status of a metric being valid is computer-interpretable.
        Metric constraints are based on simple conditional logic
        such as greater than a particular value or included within
        a specified list or table. Constraints may be combine
        multiple metrics using boolean logic such as AND, OR, XOR,
        or NOT.
      </p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="" AttributeName="HasAssociations" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssociatesConstraint" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="" AttributeName="RelatingConstraint" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcObjective" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule RuleID="" AttributeName="BenchmarkValues" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcMetric" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="" AttributeName="Benchmark" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcBenchmarkEnum" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="daf77f62-7ec3-4ff1-bec2-b3175f51f14b" name="External Data Constraints" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The constraint model may be used to indicate mappings between data in the IFC model and external documents.  This concept template may also be used by software applications to translate data to/from spreadsheets without necessarily instantiating constraint relationships within an IFC data set.</p>

<p>To indicate an explicit mapping to a particular file or database, IFC classes may be mapped to tabular data formats using <i>IfcResourceConstraintRelationship</i> attached to <i>IfcDocumentInformation</i>.</p>

<p>Default mappings may be indicated using the <i>IfcRelAssociatesConstraint</i> relationship, with <i>RelatingConstraint</i> pointing to <i>IfcObjective</i>.</p>

<p>An <i>IfcObjective</i> of type <i>EXTERNAL</i> has <i>ConstraintSource</i> set to the name of the IFC entity (e.g. 'IfcSpace') with <i>Benchmarks</i> containing a single <i>IfcMetric</i> with <i>DataValue</i> set to an <i>IfcTable</i>. On <i>IfcTable</i>, the <i>Name</i> is set to the name of the external database table or worksheet, and the <i>Columns</i> attribute indicates the external table columns in order as <i>IfcTableColumn</i>. For each <i>IfcTableColumn</i>, the <i>Name</i> indicates the field name or column header, and the <i>ReferencePath</i> identifies the corresponding object attribute, for which standard mappings are indicated.</p>



<p>Within this document, attribute paths (as used for <i>IfcReference</i>) are encoded using syntax in the form 'IfcSpace.OwnerHistory\IfcOwnerHistory.CreationDate' with the following conventions:</p>

<ul>

<li>The period character dereferences an attribute from an entity.</li>

<li>The backslash character casts an entity into a subtype, where a backslash without a subtype indicatings mapping to the type itself.</li>
<li>A bracket sequence with an asterisk ("[*]") dereferences a collection into each member.</li> 

<li>A bracket sequence with an encoded string (e.g. "['SerialNumber']" dereferences a collection into a specific member by name.</li>

</ul>



<p>Upon import from a spreadsheet, tables shall be identified by worksheet name regardless of order, and columns shall be identified by header name regardless of order.  For export to a new spreadsheet, worksheets shall be provided with identifying name for each entity and sequenced in the order specified, and within each worksheet a header row shall be provided with with each column having an identifying name and sequenced in the order specified.</p>

<p>Attributes are mapped to spreadsheet cells, where either NULL, an empty string, or the reserved value 'n/a' indicates a null value.  Specific base types are mapped as follows:</p>
<ul>
<li><b>STRING</b>: String types are represented as strings.</li>
<li><b>REAL</b>: Real number types are represented as real numbers.</li>
<li><b>ENTITY</b> Entity references are represented as strings identifying by name (<i>IfcRoot</i>.<i>Name</i>).</li>
<li><b>SET</b> Set-based collections are represented as strings identifying each object by name and separated by a comma.</li>
</ul>

<p>Specific mappings are defined at corresponding entities, where the following standard column names are used:</p>
<ul>
<li><b>Name</b>: Indicates the name of the object, corresponding to <a href="../ifckernel/lexical/ifcroot.htm">IfcRoot</a>.<i>Name</i>.</li>
<li><b>ExtObject</b>: Indicates the IFC type of the object by identifying the IFC entity by name (e.g. 'IfcBoiler').  If omitted upon import, the IFC entity shall be the base type where the concept is indicated (if non-abstract); otherwise no entity shall be imported.</li>
<li><b>ExtSystem</b>: Indicates the application that currently owns the object, mapping to <i>IfcApplication</i>.<i>ApplicationIdentifier</i>.</li>
<li><b>ExtIdentifier</b>: Indicates the GUID of the object encoded in the same format described at <i>IfcGloballyUniqueId</i>, mapping to <i>IfcRoot</i>.<i>GlobalId</i>.  If omitted upon import, such GUID shall be constructed dynamically.  If merging changes upon import, such identifier shall be used to identify an existing object (i.e. this maintains identity if an object is renamed (the <i>Name</i> attribute changing).</li>
</ul>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="" AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesConstraint" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="" AttributeName="RelatingConstraint" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcObjective" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="" AttributeName="BenchmarkValues" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMetric" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="DataValue" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcTable" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule RuleID="Table" AttributeName="Name" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="Columns" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcTableColumn" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                        <AttributeRule RuleID="Reference" AttributeName="ReferencePath" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcReference" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                        <AttributeRule AttributeName="Unit" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcContextDependentUnit" Cardinality="_asSchema">
                                                              <AttributeRules>
                                                                <AttributeRule RuleID="Format" AttributeName="Name" Cardinality="_asSchema">
                                                                  <EntityRules />
                                                                  <AttributeConstraints />
                                                                </AttributeRule>
                                                              </AttributeRules>
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                        <AttributeRule RuleID="Color" AttributeName="Description" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcText" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="ObjectiveQualifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcObjectiveEnum" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=EXTERNAL" AttributeName="Value=EXTERNAL" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                        <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="9219756f-0ed4-449e-b260-046e1ee34c9b" name="Parametric Constraints" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Constraints may be applied to type definitions for indicating parametric dependencies.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="" AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesConstraint" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="" AttributeName="RelatingConstraint" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcObjective" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="" AttributeName="BenchmarkValues" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMetric" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule RuleID="" AttributeName="Benchmark" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcBenchmarkEnum" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule AttributeName="ReferencePath" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcReference" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="TypeIdentifier" Cardinality="_asSchema">
                                                  <EntityRules />
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule RuleID="Attribute1" AttributeName="AttributeIdentifier" Cardinality="_asSchema">
                                                  <EntityRules />
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="InnerReference" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcReference" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="TypeIdentifier" Cardinality="_asSchema">
                                                          <EntityRules />
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                        <AttributeRule RuleID="Attribute2" AttributeName="AttributeIdentifier" Cardinality="_asSchema">
                                                          <EntityRules />
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="ObjectiveQualifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcObjectiveEnum" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=PARAMETRIC" AttributeName="Value=PARAMETRIC" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                        <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="061fc584-e291-40d0-b0f6-9cd2775dec41" name="Requirement Constraints" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
              <Definitions />
              <Rules>
                <AttributeRule RuleID="" AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesConstraint" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="" AttributeName="RelatingConstraint" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcObjective" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="" AttributeName="BenchmarkValues" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMetric" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule RuleID="" AttributeName="Benchmark" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcBenchmarkEnum" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="ObjectiveQualifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcObjectiveEnum" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=REQUIREMENT" AttributeName="Value=REQUIREMENT" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                        <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="de0e1712-64d1-4b38-ad15-18c1062afdbb" name="Tabular Constraints" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>This template enables a tabular representation of items that may be used to validate the building model and/or automatically generate requirement elements within the building model.</p>

<p>Tables may be used for various scenarios, such as available configurations of product types, equipment schedules, and mappings to tabular data formats.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="" AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesConstraint" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="" AttributeName="RelatingConstraint" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcObjective" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="" AttributeName="BenchmarkValues" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMetric" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule RuleID="" AttributeName="Benchmark" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcBenchmarkEnum" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule AttributeName="DataValue" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcTable" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Columns" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcTableColumn" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule RuleID="Identifier" AttributeName="Identifier" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcIdentifier" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                        <AttributeRule RuleID="ReferencePath" AttributeName="ReferencePath" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcReference" Cardinality="_asSchema">
                                                              <AttributeRules>
                                                                <AttributeRule AttributeName="TypeIdentifier" Cardinality="_asSchema">
                                                                  <EntityRules />
                                                                  <AttributeConstraints />
                                                                </AttributeRule>
                                                                <AttributeRule AttributeName="AttributeIdentifier" Cardinality="_asSchema">
                                                                  <EntityRules />
                                                                  <AttributeConstraints />
                                                                </AttributeRule>
                                                                <AttributeRule AttributeName="InstanceName" Cardinality="_asSchema">
                                                                  <EntityRules />
                                                                  <AttributeConstraints />
                                                                </AttributeRule>
                                                                <AttributeRule AttributeName="ListPositions" Cardinality="_asSchema">
                                                                  <EntityRules />
                                                                  <AttributeConstraints />
                                                                </AttributeRule>
                                                                <AttributeRule AttributeName="InnerReference" Cardinality="_asSchema">
                                                                  <EntityRules />
                                                                  <AttributeConstraints />
                                                                </AttributeRule>
                                                              </AttributeRules>
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                        <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="ea2a63be-fd0d-426d-863b-52c3970ca585" name="Material" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p class="std">

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

        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>

      <p class="std">

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

        examples include:

      </p>

      <ul class="std">

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

        </li>

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

        </li>

        <li class="std">a door may have associated constituents for framing and glazing;

        </li>

        <li class="std">a port may have an associated profile and/or material flowing through it such as hot water.

        </li>

      </ul>
]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules />
          <SubTemplates>
            <ConceptTemplate uuid="5f39a814-44a0-4fb3-8dc6-ddaa0560fc54" name="Material Solid" status="" 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>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesMaterial" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingMaterial" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcMaterial" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="HasProperties" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialProperties" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Properties" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcProperty" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="HasRepresentation" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialDefinitionRepresentation" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledRepresentation" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Items" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcPresentationStyle" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="dfb5b3a9-50e3-46e2-8518-1f03e7cfd886" name="Material Layer Set" status="" applicableSchema="IFC4" applicableEntity="IfcElementType">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Material layer sets are associated with product types to indicate a parametric specification of layers having specified thickness filling a boundary defined on occurrences of the type.  Examples of such product types are slabs, walls, and plates. 
</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesMaterial" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingMaterial" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcMaterialLayerSet" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="MaterialLayers" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialLayer" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Material" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcMaterial" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="HasRepresentation" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMaterialDefinitionRepresentation" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcStyledRepresentation" Cardinality="_asSchema">
                                                              <AttributeRules>
                                                                <AttributeRule AttributeName="Items" Cardinality="_asSchema">
                                                                  <EntityRules>
                                                                    <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                                                      <AttributeRules>
                                                                        <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                                          <EntityRules>
                                                                            <EntityRule EntityName="IfcPresentationStyle" Cardinality="_asSchema">
                                                                              <AttributeRules />
                                                                              <EntityRules />
                                                                            </EntityRule>
                                                                          </EntityRules>
                                                                          <AttributeConstraints />
                                                                        </AttributeRule>
                                                                      </AttributeRules>
                                                                      <EntityRules />
                                                                    </EntityRule>
                                                                  </EntityRules>
                                                                  <AttributeConstraints />
                                                                </AttributeRule>
                                                              </AttributeRules>
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="HasProperties" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMaterialProperties" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="Properties" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcProperty" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="6d5fb86f-3f2d-49fb-9528-077855ddcc47" name="Material Layer Set Usage" code="" status="" applicableSchema="IFC4" applicableEntity="IfcProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Material layer set usage defines layout at occurrences to indicate a direction and offset from the 'Axis' reference curve, and a reference extent such as for a default wall height.
</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="" AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesMaterial" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="" AttributeName="RelatingMaterial" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcMaterialLayerSetUsage" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="" AttributeName="ForLayerSet" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialLayerSet" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule RuleID="" AttributeName="MaterialLayers" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcMaterialLayer" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                                                  <EntityRules />
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule RuleID="" AttributeName="Material" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMaterial" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule RuleID="" AttributeName="LayerThickness" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcNonNegativeLengthMeasure" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="427ac055-2a71-42c2-a423-71689fa75c59" name="Material Profile Set" status="" applicableSchema="IFC4" applicableEntity="IfcElementType">
              <Definitions>
                <Definition>
                  <Body><![CDATA[
<p>Material profile sets are associated with product types where materials are placed in cross-sections of specified dimensions following a path defined at occurrences of the type.  Examples of such products are beams, columns, members, reinforcing, footings, piles, pipe segments, duct segments, and cable segments. 
</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesMaterial" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingMaterial" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcMaterialProfileSet" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="MaterialProfiles" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialProfile" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Material" Cardinality="ZeroToOne">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcMaterial" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="HasRepresentation" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMaterialDefinitionRepresentation" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcStyledRepresentation" Cardinality="_asSchema">
                                                              <AttributeRules>
                                                                <AttributeRule AttributeName="Items" Cardinality="_asSchema">
                                                                  <EntityRules>
                                                                    <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                                                      <AttributeRules>
                                                                        <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                                          <EntityRules>
                                                                            <EntityRule EntityName="IfcPresentationStyle" Cardinality="_asSchema">
                                                                              <AttributeRules />
                                                                              <EntityRules />
                                                                            </EntityRule>
                                                                          </EntityRules>
                                                                          <AttributeConstraints />
                                                                        </AttributeRule>
                                                                      </AttributeRules>
                                                                      <EntityRules />
                                                                    </EntityRule>
                                                                  </EntityRules>
                                                                  <AttributeConstraints />
                                                                </AttributeRule>
                                                              </AttributeRules>
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="HasProperties" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMaterialProperties" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="Properties" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcProperty" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Profile" Cardinality="One">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcProfileDef" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="HasProperties" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcProfileProperties" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="Properties" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcProperty" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="6aa01429-b566-4b36-875a-3162088a9831" name="Material Profile Set Usage" code="" status="" applicableSchema="IFC4" applicableEntity="IfcProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Material profile set usage defines layout at occurrences to indicate the offset from the 'Axis' reference curve according to cardinal point, and a reference extent such as for a default column height.
</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="" AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesMaterial" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="" AttributeName="RelatingMaterial" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcMaterialProfileSetUsage" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="" AttributeName="ForProfileSet" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialProfileSet" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule RuleID="" AttributeName="MaterialProfiles" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcMaterialProfile" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                                                  <EntityRules />
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule RuleID="" AttributeName="Material" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMaterial" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule RuleID="" AttributeName="Profile" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcProfileDef" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="d96f7f7d-e742-4db8-9b5d-18a36a6df884" name="Material Constituents" code="" status="" applicableSchema="IFC4" applicableEntity="IfcProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Material constituents are associated with products 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>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesMaterial" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingMaterial" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcMaterialConstituentSet" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="MaterialConstituents" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialConstituent" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule RuleID="Name" Description="The name of the material constituent." AttributeName="Name" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule AttributeName="Material" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcMaterial" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="HasProperties" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMaterialProperties" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="Properties" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcProperty" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="HasRepresentation" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMaterialDefinitionRepresentation" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcStyledRepresentation" Cardinality="_asSchema">
                                                              <AttributeRules>
                                                                <AttributeRule AttributeName="Items" Cardinality="_asSchema">
                                                                  <EntityRules>
                                                                    <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                                                      <AttributeRules>
                                                                        <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                                          <EntityRules>
                                                                            <EntityRule EntityName="IfcPresentationStyle" Cardinality="_asSchema">
                                                                              <AttributeRules />
                                                                              <EntityRules />
                                                                            </EntityRule>
                                                                          </EntityRules>
                                                                          <AttributeConstraints />
                                                                        </AttributeRule>
                                                                      </AttributeRules>
                                                                      <EntityRules />
                                                                    </EntityRule>
                                                                  </EntityRules>
                                                                  <AttributeConstraints />
                                                                </AttributeRule>
                                                              </AttributeRules>
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="HasShapeAspects" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeAspect" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="ShapeRepresentations" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Items" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcRepresentationItem" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcRepresentationItem" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="33e0be15-e301-4858-9f4b-18b2eb5488ba" name="Definition" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
      <Definitions>
        <Definition>
          <Body><![CDATA[]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" name="Object Typing" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[
<p>
<i>Object Occurrences</i> may be
 defined by a particular <i>Object Type</i>, where such type
 describes common characteristics. 
Such characteristics
 include common properties, shapes, materials, composition,
 and other concepts described at particular entities. 
An
 object occurrence may have similar state as its object
 type, overridden state for particular characteristics, or
 have no defined type object.

</p>



<p>
A pair of <i>entities</i> are defined for various
 object occurrences and object types, where such object occurrence entity may only be defined using a particular
object type entity. For example, the <i>IfcTank</i>
 occurrence object entity has a corresponding
 <i>IfcTankType</i> type object entity.

</p>


<p>
Many object occurrence and object type entities have an <i>attribute</i> named <i>PredefinedType</i> consisting of a specific
 <i>enumeration</i>. 
Such predefined
 type essentially provides another level of inheritance to
 further differentiate objects without the need for
 additional <i>entities</i>. 
Predefined types are not
 just informational; various rules apply such as applicable
 <i>property
 sets</i>, part composition, and distribution ports.

</p>



<p>
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.

</p>

 ]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="IsTypedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelDefinesByType" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatingType" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcTypeObject" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="36984334-3ac8-4e59-85a6-f68d65e379c7" name="Property Sets" status="" 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>
              <Links />
            </Definition>
          </Definitions>
          <Rules />
          <SubTemplates>
            <ConceptTemplate uuid="f74255a6-0c0e-4f31-84ad-24981db62461" name="Properties for Occurrences" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObject">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Any specialization of <i>object</i> can be related to multiple <i>property set occurrences</i>. 
A property set
 contains multiple <i>property occurrences</i>. The data types of property occurrences are single value, enumerated value,
 bounded value, table value, reference value, list value,
 and combination of property occurrences.</p>
                ]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" Cardinality="_asSchema">
                  <EntityRules />
                  <AttributeConstraints />
                </AttributeRule>
                <AttributeRule AttributeName="IsDefinedBy" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelDefinesByProperties" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingPropertyDefinition" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcPropertySet" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                                  <EntityRules />
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="" AttributeName="HasProperties" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcProperty" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="4be3312a-3199-492e-b204-cac2229a9ade" name="Properties for Types" status="" applicableSchema="IFC4" applicableEntity="IfcTypeObject">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>For object types, property sets are defined directly.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="HasPropertySets" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcPropertySet" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                        <AttributeRule AttributeName="HasProperties" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcProperty" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="c32cc55b-afc7-439e-b821-e646e1b1dd1a" name="Properties for Performance" status="" applicableSchema="IFC4" applicableEntity="IfcPerformanceHistory">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>For performance history, properties are in the form of time series, for tracking data at points in time.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="IsDefinedBy" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelDefinesByProperties" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingPropertyDefinition" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcPropertySet" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="HasProperties" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPropertyReferenceValue" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="PropertyReference" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcIrregularTimeSeries" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Values" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcIrregularTimeSeriesValue" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="TimeStamp" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcDateTime" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                        <AttributeRule AttributeName="ListValues" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcValue" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="784ef6bf-1e7f-4fab-9884-40502af61452" name="Properties on Occurrences" status="" applicableSchema="IFC4" applicableEntity="IfcObject">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Properties on occurrences may be required to be present for specific information exchanges. </p>

<p>Constraints may be attached to property sets to enforce conformance of the building model to indicated values. 
The associated <i>IfcObjective</i> has its type set to DESIGNINTENT to indicate that any nonconforming value should be flagged accordingly but not necessarily automatically updated as is done for other types such as PARAMETRIC. The <i>IfcObjective</i> contains one or more <i>IfcMetric</i> items corresponding to each <i>IfcProperty</i> that is constrained, where <i>IfcMetric.ValueSource</i> corresponds to <i>IfcProperty.Name</i>. The <i>IfcMetric.ReferencePath</i> identifies the attribute on related objects (<i>IfcRelDefinesByProperties.RelatedObjects</i>) that is to be checked, where the reference path is relative to the associated object, in this case the <i>IfcPropertySet</i>.</p>

<p>Within this document, attribute paths (as used for <i>IfcReference</i>) are encoded using syntax in the form 'IfcSpace.OwnerHistory\IfcOwnerHistory.CreationDate' with the following conventions:</p>

<ul>

<li>The period character (".") dereferences an attribute from an entity.</li>

<li>The back slash character ("\") casts an entity into a subtype, where a backslash without a subtype indicatings mapping to the type itself.</li>

<li>The forward slash character ("/") filters an entity according to its PredefinedType.</li>
<li>A bracket sequence with an asterisk ("[*]") dereferences a collection into each member.</li> 

<li>A bracket sequence with an encoded string (e.g. "['SerialNumber']" dereferences a collection into a specific member by name.</li>

</ul>



<p>Constrained values are interpreted as follows:</p>
<ul>
<li><i>IfcBoolean</i>: checks for the presense of one or more matching elements, where True indicates one or more exist, and False indicates none exist.</li>
<li><i>IfcInteger</i>: checks for the count of elements, where the number indicates the quantity of matching elements found.</li>
<li><i>IfcValue</i>: for all other value types such as labels or measure values, checks for matching value.</li>
</ul>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="IsDefinedBy" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelDefinesByProperties" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingPropertyDefinition" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcPropertySet" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="Pset" AttributeName="Name" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="HasProperties" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPropertySingleValue" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule RuleID="Property" AttributeName="Name" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcIdentifier" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule RuleID="Type" AttributeName="NominalValue" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcRelAssociatesConstraint" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="RelatingConstraint" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcObjective" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="ObjectiveQualifier" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcObjectiveEnum" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule Description="Value=DESIGNINTENT" AttributeName="Value=DESIGNINTENT" Cardinality="_asSchema">
                                                          <EntityRules />
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="BenchmarkValues" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMetric" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="ValueSource" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                        <AttributeRule AttributeName="DataValue" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcMetricValueSelect" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                        <AttributeRule RuleID="ReferencePath" AttributeName="ReferencePath" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcReference" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="e0ad4768-37c9-4b49-8111-17e8a4734cd7" name="Material Properties" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Properties may be defined for materials indicating physical characteristics.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesMaterial" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingMaterial" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcMaterialProfileSet" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="MaterialProfiles" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialProfile" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Material" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcMaterial" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule RuleID="Category" Description="*" AttributeName="Category" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="HasProperties" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcMaterialProperties" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcIdentifier" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                        <AttributeRule AttributeName="Properties" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcProperty" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="4df2a8ba-9380-4068-83c7-e609b86b2ab4" name="Profile Properties" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Properties may be defined for profiles indicating custom parameter-driven shapes.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="HasAssociations" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAssociatesMaterial" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingMaterial" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcMaterialProfileSet" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="MaterialProfiles" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcMaterialProfile" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Profile" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcProfileDef" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="HasProperties" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcProfileProperties" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule RuleID="Name" AttributeName="Name" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcIdentifier" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                        <AttributeRule AttributeName="Properties" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcProperty" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="6652398e-6579-4460-8cb4-26295acfacc7" name="Quantity Sets" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[
      
      <p class="std">
        Any specialization of <i>object</i> can be related to multiple <i>quantity set occurrences</i>. A quantity set
        contains multiple <i>quantity occurrences</i>. The data type of
        quantity occurrence are count, length, area, volume, weight, time, and combination of quantity occurrences.
      </p>
]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="IsDefinedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelDefinesByProperties" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingPropertyDefinition" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcElementQuantity" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="0ec408d8-04d2-493b-817e-4022a98e6ccb" name="Quantity Sets for Occurrences" status="" applicableSchema="IFC4" applicableEntity="IfcObject">
              <Definitions />
              <Rules>
                <AttributeRule AttributeName="IsDefinedBy" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelDefinesByProperties" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingPropertyDefinition" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcElementQuantity" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="23d345c2-154d-4268-bc7f-adc2648eff37" name="Quantities on Occurrences" status="" 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 are count, length, area, volume, weight, time, and combination of quantity occurrences.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="IsDefinedBy" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelDefinesByProperties" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatingPropertyDefinition" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcElementQuantity" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="Qset" AttributeName="Name" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="Quantities" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule RuleID="Type" EntityName="IfcPhysicalSimpleQuantity" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule RuleID="Quantity" Description="*" AttributeName="Name" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="15555189-efab-4d84-9103-65ce7b404072" name="Property Set Templates" status="" applicableSchema="IFC4" applicableEntity="IfcPropertySet">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Property set templates describe extensible parameters that may be configured on objects.  
Each property is identified by name, and indicates data type and access mode.
</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="IsDefinedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelDefinesByTemplate" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingTemplate" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcPropertySetTemplate" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="TemplateType" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcPropertySetTemplateTypeEnum" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="HasPropertyTemplates" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcSimplePropertyTemplate" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="TemplateType" AttributeName="TemplateType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcSimplePropertyTemplateTypeEnum" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="PrimaryMeasureType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="SecondaryMeasureType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Enumerators" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcPropertyEnumeration" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                            <AttributeRule AttributeName="EnumerationValues" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="AccessState" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcStateEnum" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule RuleID="PropertyType" AttributeName="HasProperties" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcSimpleProperty" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="05ccd4c2-8b8e-4f5f-b716-dca771a3424e" name="Predefined Type" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <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. </p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules />
          <SubTemplates>
            <ConceptTemplate uuid="02177093-f6a8-4d2f-9000-796c3b21b68c" name="System furniture element types" status="" applicableSchema="IFC4" applicableEntity="IfcSystemFurnitureElement">
              <Definitions />
              <Rules>
                <AttributeRule AttributeName="PredefinedType" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcSystemFurnitureElementTypeEnum" Cardinality="_asSchema">
                      <AttributeRules />
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="3b8e69d9-2824-4ebb-bb95-e5271c122efc" name="Assignment" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
      <Definitions>
        <Definition>
          <Body><![CDATA[
<p>
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 <i>actors</i> (people) issue <i>controls</i> (such as
 work orders or schedules), which may result in <i>groups</i> (such as
        building systems) comprised of <i>products</i> (such as building
 elements) operated upon by <i>processes</i> (such as construction
 tasks) performed by <i>resources</i> (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>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="048079c1-74dd-4bd9-b330-479a148d238f" name="Actor Assignment" status="" applicableSchema="IFC4" applicableEntity="IfcActor">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Actors may have assignments indicating objects for which they have responsibility.  An example of such assignment is a work order assigned to an organization.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="IsActingUpon" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToActor" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcControl" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="813e73fe-5641-4648-a680-8887cf4359f1" name="Control Assignment" status="" applicableSchema="IFC4" applicableEntity="IfcControl">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Controls may have assignments indicating objects that must observe the established requirements.  An example of such assignment is a labor resource assigned to a calendar.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="Controls" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToControl" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcObject" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="f567967f-5493-44d9-ac51-937c09ac2583" name="Group Assignment" status="" applicableSchema="IFC4" applicableEntity="IfcGroup">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Groups may have assignments indicating products that are members of the group.  An example of such assignment is an air handler belonging to an air conditioning system.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="IsGroupedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToGroup" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProduct" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="ec9cfb04-adfe-4868-8168-d78fe995a913" name="Product Assignment" status="" applicableSchema="IFC4" applicableEntity="IfcProduct">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Products may have assignments indicating processes that operate upon the product.  An example of such assignment is a task to construct a wall.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="ReferencedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToProduct" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcObject" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="e841d02b-ccfd-4d1f-9433-da4084658468" name="Process Assignment" status="" applicableSchema="IFC4" applicableEntity="IfcProcess">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Processes may have assignments indicating resources consumed or occupied by the process.  An example of such assignment is a carpenter labor resource building a wall.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="OperatesOn" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToProcess" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcResource" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="26529b88-e45d-4818-a1ce-02ba12901b7e" name="Resource Assignment" status="" applicableSchema="IFC4" applicableEntity="IfcResource">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Resources may have assignments indicating sources available to be used.  An example of such assignment is a person fulfilling a carpenter labor resource.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="ResourceOf" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToResource" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcActor" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                        <EntityRule EntityName="IfcProduct" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="8b9545ad-f9e9-403d-8682-5460bfeb2706" name="Product Type Assignment" status="" applicableSchema="IFC4" applicableEntity="IfcTypeProduct">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Product types may have assignments indicating re-usable process types for which occurrences may operate on occurrences of the product type.  An example of such assignment is a task type for placing concrete in slabs on grade.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="ReferencedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToProduct" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcTypeProcess" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="eddb0a80-6bd8-4364-85fc-6d5dd2bb17e7" name="Process Type Assignment" status="" applicableSchema="IFC4" applicableEntity="IfcTypeProcess">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Process types may have assignments indicating re-usable resource types for which occurrences may be consumed or occupied by occurrences of the process type.  An example of such assignment is a concrete mixer resource type for delivering concrete.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="OperatesOn" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToProcess" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcTypeResource" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="d8197dee-4bdc-4aba-bb57-4c6678ce70dc" name="Resource Type Assignment" status="" applicableSchema="IFC4" applicableEntity="IfcTypeResource">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Resource types may have assignments indicating re-usable product types for which occurrences may be sourced by occurrences of the resource type.  An example of such assignment is a particular crane model that may be used for a crane equipment resource used for erecting steel.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="ResourceOf" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToResource" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcTypeProduct" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="db9cfd93-0947-462a-861b-8c2c4f954dbe" name="Assigned Actor" status="" applicableSchema="IFC4" applicableEntity="IfcObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Objects may be assigned to actors indicating the actor demands services of the object. Specific semantics are defined at concepts.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssignments" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToActor" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatingActor" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcActor" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="1b81a3ab-ce20-4916-8865-d8b94b6251fd" name="Assigned Control" status="" applicableSchema="IFC4" applicableEntity="IfcObject">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Objects may be assigned to controls indicating the control demands services of the object. Specific semantics are defined at concepts.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasAssignments" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToControl" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatingControl" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcControl" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="9b08402d-dc9d-4773-9ab3-7597a4c828be" name="Assigned Group" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions />
          <Rules>
            <AttributeRule AttributeName="HasAssignments" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAssignsToGroup" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatingGroup" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcGroup" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="5098cd13-bf4b-473a-a846-a60f69e9b738" name="Composition" code="" status="" 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>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="02eefcc6-b26c-4f20-9c7c-c30ae74eb9a9" name="Aggregation" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Aggregation indicates an unordered part composition relationship.</p>


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


<p>Aggregation is used on systems to indicate subsystems such as branch circuits.</p>
                ]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" Cardinality="_asSchema">
              <EntityRules />
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="IsDecomposedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelAggregates" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="RelatedObjects" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcObject" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="ca0f65e2-3913-4fdb-8a09-0c5c7a0d5421" name="Element Composition" status="" 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 specificly 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>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Decomposes" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAggregates" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="Composite" AttributeName="RelatingObject" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcElement" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="8a27c15a-c4ea-4ca9-8cce-7fbba1c9bce0" name="Element Decomposition" status="" 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>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>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="IsDecomposedBy" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAggregates" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="RelatedObjects" AttributeName="RelatedObjects" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcElement" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="8c0fd2f7-71bb-4e6e-8fdb-0c02b352f14a" name="Spatial Composition" status="" applicableSchema="IFC4" applicableEntity="IfcSpatialElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Provision of a spatial structure of the project by aggregating spatial structure elements. The spatial structure is a hierarchical tree of spatial structure elements (site, building, storey, space) 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>
<p>The order of spatial structure elements being included in the concept are from high to low level: <em>IfcProject</em>, <em>IfcSite</em>, <em>IfcBuilding</em>, <em>IfcBuildingStorey</em>, <em>IfcSpace</em>. Therefore an spatial structure element can only be part of an element at the same or higher level.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Decomposes" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAggregates" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="Spatial Composite" AttributeName="RelatingObject" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcSpatialElement" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="667f8443-ecce-4a8d-a63f-931fab0453e0" name="Spatial Decomposition" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Provision of a spatial structure of the project by aggregating spatial structure elements. The spatial structure is a hierarchical tree of spatial structure elements (site, building, storey, space) ultimately assigned to the project. Decomposition refers to the relationship to lower level elements (e.g. this storey has spaces).</p>
<p>The order of spatial structure elements being included in the concept are from high to low level: <em>IfcProject</em>, <em>IfcSite</em>, <em>IfcBuilding</em>, <em>IfcBuildingStorey</em>, <em>fcSpace</em>. Therefore an spatial structure element can only has parts of an element at the same or lower level.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="IsDecomposedBy" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelAggregates" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="Spatial Parts" AttributeName="RelatedObjects" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcSpatialElement" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="b9005e79-b5c5-4c0b-9d86-046c21ad420d" name="Voiding" status="" 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.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasOpenings" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelVoidsElement" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="RelatedOpening" AttributeName="RelatedOpening" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcVoidingFeature" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="38ca8788-5e47-411c-8294-d56f9e9a5691" name="Nesting" status="" applicableSchema="IFC4" applicableEntity="IfcObjectDefinition">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Nesting indicates an ordered arrangement relationship.</p>


<p>Nesting is used on building elements to indicate features placed in sequence such as ports.</p>


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


<p>Nesting is used on process objects to indicate subordinate task details.</p>

<p>Nesting is used on resource objects to indicate subordinate resource allocations.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="IsNestedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelNests" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcObject" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" name="Ports" code="" status="" 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.</p>
<p>Ports may have material profile sets defined indicating the flow area and connection enclosure.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" Cardinality="_asSchema">
              <EntityRules />
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="IsNestedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelNests" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDistributionPort" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule RuleID="Name" Description="The name of the port." AttributeName="Name" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="Flow" Description="The flow direction of the port." AttributeName="FlowDirection" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcFlowDirectionEnum" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="Type" Description="The type of the port." AttributeName="PredefinedType" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDistributionSystemEnum" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="" AttributeName="ObjectPlacement" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcLocalPlacement" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="" AttributeName="RelativePlacement" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcAxis2Placement3D" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule RuleID="" AttributeName="Location" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcCartesianPoint" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                            <AttributeRule RuleID="" AttributeName="Axis" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcDirection" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                            <AttributeRule RuleID="" AttributeName="RefDirection" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcDirection" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="" AttributeName="HasAssociations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcRelAssociatesMaterial" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="" AttributeName="RelatingMaterial" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcMaterialProfileSetUsage" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule RuleID="" AttributeName="ForProfileSet" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcMaterialProfileSet" Cardinality="_asSchema">
                                                  <AttributeRules>
                                                    <AttributeRule RuleID="" AttributeName="MaterialProfiles" Cardinality="_asSchema">
                                                      <EntityRules>
                                                        <EntityRule EntityName="IfcMaterialProfile" Cardinality="_asSchema">
                                                          <AttributeRules>
                                                            <AttributeRule RuleID="" AttributeName="Material" Cardinality="_asSchema">
                                                              <EntityRules>
                                                                <EntityRule EntityName="IfcMaterial" Cardinality="_asSchema">
                                                                  <AttributeRules />
                                                                  <EntityRules />
                                                                </EntityRule>
                                                              </EntityRules>
                                                              <AttributeConstraints />
                                                            </AttributeRule>
                                                            <AttributeRule RuleID="" AttributeName="Profile" Cardinality="_asSchema">
                                                              <EntityRules>
                                                                <EntityRule EntityName="IfcProfileDef" Cardinality="_asSchema">
                                                                  <AttributeRules />
                                                                  <EntityRules />
                                                                </EntityRule>
                                                              </EntityRules>
                                                              <AttributeConstraints />
                                                            </AttributeRule>
                                                          </AttributeRules>
                                                          <EntityRules />
                                                        </EntityRule>
                                                      </EntityRules>
                                                      <AttributeConstraints />
                                                    </AttributeRule>
                                                  </AttributeRules>
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="" AttributeName="IsDeclaredBy" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcRelDefinesByObject" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="" AttributeName="RelatingObject" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcDistributionPort" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule RuleID="" AttributeName="ObjectPlacement" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLocalPlacement" Cardinality="_asSchema">
                                                  <AttributeRules>
                                                    <AttributeRule RuleID="" AttributeName="RelativePlacement" Cardinality="_asSchema">
                                                      <EntityRules>
                                                        <EntityRule EntityName="IfcAxis2Placement3D" Cardinality="_asSchema">
                                                          <AttributeRules>
                                                            <AttributeRule RuleID="" AttributeName="Location" Cardinality="_asSchema">
                                                              <EntityRules>
                                                                <EntityRule EntityName="IfcCartesianPoint" Cardinality="_asSchema">
                                                                  <AttributeRules />
                                                                  <EntityRules />
                                                                </EntityRule>
                                                              </EntityRules>
                                                              <AttributeConstraints />
                                                            </AttributeRule>
                                                            <AttributeRule RuleID="" AttributeName="Axis" Cardinality="_asSchema">
                                                              <EntityRules>
                                                                <EntityRule EntityName="IfcDirection" Cardinality="_asSchema">
                                                                  <AttributeRules />
                                                                  <EntityRules />
                                                                </EntityRule>
                                                              </EntityRules>
                                                              <AttributeConstraints />
                                                            </AttributeRule>
                                                            <AttributeRule RuleID="" AttributeName="RefDirection" Cardinality="_asSchema">
                                                              <EntityRules>
                                                                <EntityRule EntityName="IfcDirection" Cardinality="_asSchema">
                                                                  <AttributeRules />
                                                                  <EntityRules />
                                                                </EntityRule>
                                                              </EntityRules>
                                                              <AttributeConstraints />
                                                            </AttributeRule>
                                                          </AttributeRules>
                                                          <EntityRules />
                                                        </EntityRule>
                                                      </EntityRules>
                                                      <AttributeConstraints />
                                                    </AttributeRule>
                                                  </AttributeRules>
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                            <AttributeRule RuleID="" AttributeName="Name" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                            <AttributeRule RuleID="" AttributeName="FlowDirection" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcFlowDirectionEnum" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                            <AttributeRule RuleID="" AttributeName="PredefinedType" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcDistributionSystemEnum" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="47b7b020-e010-40c8-b9e3-8234f1b5f563" name="Type-Based Ports" status="" applicableSchema="IFC4" applicableEntity="IfcDistributionElementType">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Ports may be specified on types, following the same rules as defined for corresponding occurrences.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="IsNestedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelNests" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatedObjects" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDistributionPort" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="FlowDirection" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcFlowDirectionEnum" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="PredefinedType" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDistributionSystemEnum" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="ObjectPlacement" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcLocalPlacement" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="RelativePlacement" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcAxis2Placement3D" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule AttributeName="Location" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcCartesianPoint" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                            <AttributeRule AttributeName="Axis" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcDirection" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                            <AttributeRule AttributeName="RefDirection" Cardinality="_asSchema">
                                              <EntityRules>
                                                <EntityRule EntityName="IfcDirection" Cardinality="_asSchema">
                                                  <AttributeRules />
                                                  <EntityRules />
                                                </EntityRule>
                                              </EntityRules>
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="252a5fa6-cc5b-4d30-bd0c-35e22e336499" name="Connectivity" code="" status="" applicableSchema="IFC4" applicableEntity="IfcObject">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p class="std">
        Objects may participate in various connectivity
        relationships with other objects.
      </p>
]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="81bc486c-1976-4e11-a469-cff2f70f123e" name="Spatial Structure" status="" applicableSchema="IFC4" applicableEntity="IfcRoot">
          <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>
              <Links />
            </Definition>
          </Definitions>
          <Rules />
          <SubTemplates>
            <ConceptTemplate uuid="61dd08ed-fd01-4955-9337-8afd284a0e6f" name="Spatial Container" status="" applicableSchema="IFC4" applicableEntity="IfcSpatialStructureElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>Spatial Container</em> concept defines a spatial structure element as being the spatial container for physical elements, such as building elements, distribution elements, or furnishing elements.</em>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="ContainsElements" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelContainedInSpatialStructure" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatedElements" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcElement" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="d9a3f822-0014-4bc2-8d94-9d9067759045" name="Spatial Containment" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Spatial structures may contain physical elements, including building elements, distribution elements, and furnishing elements.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="ContainedInStructure" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelContainedInSpatialStructure" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="Structure" AttributeName="RelatingStructure" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcSpatialStructureElement" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="33d30909-8fee-41f9-b8de-33c3b01cc335" name="Space Coverings" status="" applicableSchema="IFC4" applicableEntity="IfcSpace">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="HasCoverings" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelCoversSpaces" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatedCoverings" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcCovering" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="CoveringType" AttributeName="PredefinedType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcCoveringTypeEnum" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="6ae2d514-e2bd-4a24-b984-9b11725fc7db" name="Space Boundaries" status="" applicableSchema="IFC4" applicableEntity="IfcSpace">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Spaces may have boundaries defined by building elements such as walls, slabs, doors, and windows.  Such information may be used to determine heat transmission through surrounding materials.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="BoundedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelSpaceBoundary" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="RelatedBuildingElement" AttributeName="RelatedBuildingElement" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcElement" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="17e42301-4a59-4945-b62b-2c64f6ca6c12" name="Element Connectivity" status="" 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>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="ConnectedFrom" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelConnectsElements" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatedElement" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcElement" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="50170395-87c6-492e-a6fc-9f5f840b114f" name="Path Connectivity" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Elements based on an 'Axis' representation such as walls, beams, and columns use a path connectivity relationship to indicate parameters for the connection, indicating which side takes precedence for material layers or profiles.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="ConnectedFrom" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelConnectsPathElements" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="RelatedElement" AttributeName="RelatedElement" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcElement" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                        <AttributeRule AttributeName="ConnectionGeometry" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcConnectionCurveGeometry" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="CurveOnRelatingElement" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPolyline" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="CurveOnRelatedElement" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPolyline" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="16fe846f-32b1-4595-bbb0-c4ad053dab24" name="Port Requirements" status="" applicableSchema="IFC4" applicableEntity="IfcDistributionPort">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Ports on objects may be connected using elements such as cables, ducts, or pipes.Once Components within a System has some ports, then the connectivity should be complete and continuous. The presence of ports for air, water and electrical connections on complex equipment does not imply that all such connectivity is expected: only that if for example the HVAC segments and fittings have ports, then they will need to connect properly to the equipment's air ports. </p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="ConnectedTo" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRelConnectsPorts" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="RelatedPort" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcDistributionPort" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                        <AttributeRule AttributeName="RealizingElement" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcFlowSegment" Cardinality="_asSchema">
                              <AttributeRules />
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="585079f1-c1a3-4389-85fd-305b994cd757" name="At least two ports expected" status="Candidate" author="nn@aec3.com" owner="aec3" copyright="aec3" applicableSchema="IFC4" applicableEntity="IfcDistributionPort">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>At least two ports may be expected on <i>duct segments. </i></p>]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="ContainedIn" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelConnectsPortToElement" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatedElement" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDistributionElement" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="HasPorts" Cardinality="OneToMany">
                                      <EntityRules />
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="c59a7056-a9ae-4d04-a751-aeec7d2ff70b" name="At least one port" status="Candidate" author="nn@aec3.com" owner="aec3" copyright="aec3" applicableSchema="IFC4" applicableEntity="IfcDistributionPort">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>At least one port is expected on <i>duct fittings</i></p>]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="ContainedIn" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelConnectsPortToElement" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatedElement" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDistributionElement" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="HasPorts" Cardinality="OneToMany">
                                      <EntityRules />
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="8e3e0e84-5f95-44c0-a46a-fd59e870599e" name="Ports to be twinned" status="Candidate" author="nn@aec3.com" owner="aec3" copyright="aec3" applicableSchema="IFC4" applicableEntity="IfcDistributionPort">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>All ports are to be twinned with a complementary port on another Component </p>]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="ConnectedFrom" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcRelConnectsPorts" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="RelatingPort" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDistributionPort" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="RelatedPort" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDistributionPort" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="714f0835-dcee-44a6-a2f2-230004ce3d1d" name="Port Connectivity" status="" applicableSchema="IFC4" applicableEntity="IfcDistributionPort">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Ports on objects may be connected using elements such as cables, ducts, or pipes.Once Components within a System has some ports, then the connectivity should be complete and continuous. The presence of ports for air, water and electrical connections on complex equipment does not imply that all such connectivity is expected: only that if for example the HVAC segments and fittings have ports, then they will need to connect properly to the equipment's air ports. </p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="ConnectedTo" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelConnectsPorts" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatedPort" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDistributionPort" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="RealizingElement" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcFlowSegment" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="d1d8208b-51e5-4a8f-92ba-e3a2ea2bcb9c" name="Control Flow" status="" applicableSchema="IFC4" applicableEntity="IfcDistributionControlElement">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Control elements (such as sensors) that monitor or control behavior of flow elements (such as valves) use this relationship to indicate control flow logical behavior.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="AssignedToFlowElement" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelFlowControlElements" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="Type" AttributeName="RelatingFlowElement" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDistributionFlowElement" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="06674893-7a2c-493b-8eb5-e85a058707b3" name="Filling" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Elements such as doors and windows may be placed inside openings of walls, slabs, or other elements.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="FillsVoids" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelFillsElement" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingOpeningElement" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcOpeningElement" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="VoidsElements" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcRelVoidsElement" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="Type" AttributeName="RelatingElement" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule RuleID="" EntityName="IfcElement" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="9390ca72-d8e2-482b-9986-e0e1d15e7194" name="Structural Activity" status="" applicableSchema="IFC4" applicableEntity="IfcStructuralActivity">
          <Definitions>
            <Definition>
              <Body><![CDATA[]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="AppliedLoad" AttributeName="AppliedLoad" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcStructuralLoad" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="AssignedToStructuralItem" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelConnectsStructuralActivity" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="RelatingElement" AttributeName="RelatingElement" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcStructuralItem" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="f4f75d4f-6d38-4cbe-9efb-dfb58440dfcb" name="Structural Connectivity" status="" applicableSchema="IFC4" applicableEntity="IfcStructuralMember">
          <Definitions>
            <Definition>
              <Body><![CDATA[]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="ConnectedBy" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelConnectsStructuralMember" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="StructuralConnection" AttributeName="RelatedStructuralConnection" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcStructuralConnection" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="c9f11880-8cf6-47fe-abac-05c73b4041b1" name="Sequential Connectivity" status="" applicableSchema="IFC4" applicableEntity="IfcProcess">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Processes that occur in time use this relationship to indicate the order of occurrence, such as for tasks, procedures, and events.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="IsPredecessorTo" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelSequence" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatedProcess" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProcess" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="IsSuccessorFrom" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelSequence" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingProcess" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProcess" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="300e62e0-5ecd-464c-9d12-0eb24671f8c7" name="Interference" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Elements may interfere with other elements, such as cable carriers going through walls. 
The interference relation enables precedence of interfering elements to be asserted.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="InterferesElements" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelInterferesElements" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingElement" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcElement" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="ecc9d997-c6dc-4853-a636-a8c029f8c5db" name="Space Coverings" status="" applicableSchema="IFC4" applicableEntity="IfcCovering">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Spaces may have coverings applied to fill surrounding flooring, walls, ceilings, or other aspects parametrically.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="CoversSpaces" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelCoversSpaces" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RelatingSpace" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcSpace" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" Cardinality="_asSchema">
              <EntityRules />
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="b9005e79-b5c5-4c0b-9d86-046c21ad420d" name="Voiding" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Elements may have voids defined, which may be partial recess or extending full depth.  Vodis for openings may optionally be filled by another element such as a door or window.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="HasOpenings" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcRelVoidsElement" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="RelatedOpening" AttributeName="RelatedOpening" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcVoidingFeature" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="5929fb90-3af9-41f9-9675-67c687a05218" name="Actor" status="" applicableSchema="IFC4" applicableEntity="IfcActor">
      <Definitions>
        <Definition>
          <Body><![CDATA[]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="121650c9-a1f4-4559-a1a2-e189c400cdfe" name="Organization Role" status="" applicableSchema="IFC4" applicableEntity="IfcActor">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Contact information indicates roles and addresses of people and organizations.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="TheActor" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcOrganization" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="Identification" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcIdentifier" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Roles" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcActorRole" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule RuleID="Role" AttributeName="Role" Cardinality="_asSchema">
                              <EntityRules />
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="UserDefinedRole" AttributeName="UserDefinedRole" Cardinality="_asSchema">
                              <EntityRules />
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Addresses" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcTelecomAddress" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="ElectronicMailAddresses" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="62770e4a-82fa-49f6-925f-36c9ff8756ac" name="Contact" status="" applicableSchema="IFC4" applicableEntity="IfcActor">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Project participants are indicating using <i>IfcActor</i>.  The <i>Name</i> must indicate a human-readable unique identifier of the actor, such as their email address, which enables automatic association of authoring information based on login credentials.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="TheActor" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcPersonAndOrganization" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="ThePerson" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcPerson" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Addresses" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcPostalAddress" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="AddressLines" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="PostalBox" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Town" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Region" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="PostalCode" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="Country" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                                <EntityRule EntityName="IfcTelecomAddress" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="TelephoneNumbers" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="TheOrganization" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcOrganization" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="Description" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcText" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="61405b1f-cfcf-4ac8-b636-891892b3f0a7" name="Control" status="" applicableSchema="IFC4" applicableEntity="IfcControl">
      <Definitions>
        <Definition>
          <Body><![CDATA[]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="8f46f419-f1d8-4dd9-bc33-d8c64c16b04b" name="Cost" status="" applicableSchema="IFC4" applicableEntity="IfcCostItem">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Cost information is used to indicate rate structures within a cost schedule which are applicable to assigned objects.
</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="CostValues" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcCostValue" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="AppliedValue" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcMonetaryMeasure" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="ApplicableDate" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDate" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="FixedUntilDate" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDate" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="2550551e-bf70-4c09-a0c7-9d838380ebfe" name="Calendar" status="" applicableSchema="IFC4" applicableEntity="IfcWorkCalendar">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Calendar information is used to filter other objects to indicate time periods during which the control applies.
</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="WorkingTimes" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcWorkTime" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="RecurrencePattern" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcRecurrencePattern" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="RecurrenceType" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcRecurrenceTypeEnum" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="TimePeriods" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcTimePeriod" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="StartTime" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcTime" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule AttributeName="EndTime" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcTime" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Start" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDate" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Finish" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcDate" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="0e8b1397-1ac6-41e1-a6d0-f2b34688cb61" name="Product" code="" status="" applicableSchema="IFC4" applicableEntity="IfcProduct">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>A product is an occurence of a physical or virtual object with finite spatial extent.</p>
            ]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" name="Placement" code="" status="" applicableSchema="IFC4" applicableEntity="IfcProduct">
          <Definitions>
            <Definition>
              <Body><![CDATA[
      <p class="std">
        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 class="std">
        Placement follows aggregation and containment relationships
        as follows:
      </p>
      <ul class="std">
        <li class="std">at the outermost level, a site is globally
        positioned according to latitude, longitude, and elevation;
        </li>
        <li class="std">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 class="std">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 class="std">for aggregated parts, positioning is
        relative to aggregation. For example, a staircase may
        aggregate one or more stair flights;
        </li>
        <li class="std">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 class="std">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 class="std">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 class="std">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 class="std">
        If a containing spatial structure contains a grid, then
        placement may also be based relative to grid coordinates.
      </p>
      
                ]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="Type" AttributeName="ObjectPlacement" Cardinality="ZeroToOne">
              <EntityRules>
                <EntityRule RuleID="" EntityName="IfcLocalPlacement" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="" AttributeName="RelativePlacement" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcAxis2Placement3D" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule RuleID="" AttributeName="Location" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcCartesianPoint" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Dim" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcDimensionCount" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=3" AttributeName="Value=3" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="" AttributeName="Axis" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDirection" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Dim" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcDimensionCount" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=3" AttributeName="Value=3" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="" AttributeName="RefDirection" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcDirection" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Dim" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcDimensionCount" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=3" AttributeName="Value=3" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule RuleID="" AttributeName="PlacementRelTo" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLocalPlacement" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="13f96914-1ad4-41d4-ba99-411a9ecbf567" name="Geometry" code="" status="" 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>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule RuleID="Name" AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                              <EntityRules />
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                              <EntityRules />
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                              <EntityRules />
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates>
            <ConceptTemplate uuid="b942ceb1-b818-4683-871b-9c979fa34dd5" name="Box Geometry" status="" 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>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Box" AttributeName="Value=Box" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=BoundingBox" AttributeName="Value=BoundingBox" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcBoundingBox" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="903fb653-05cc-471e-a58e-6b58b9c76f68" name="Annotation Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcAnnotation">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Annotations may provide an 'Annotation' representation for including points, curves, surfaces, fill areas, and text. </p>

<p>Styled items may provide structure and styles that apply to the representation, a geometric set may provide styles that apply to all items within, and/or items may provide their own styles which override styles defined at the geometric set. Styles and label can also be assigned by presentation layers.
</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Annotation" AttributeName="Value=Annotation" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcTextLiteral" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="StyledByItem" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcTextStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                    <EntityRule EntityName="IfcDefinedSymbol" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="StyledByItem" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcSymbolStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                    <EntityRule EntityName="IfcSurface" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="StyledByItem" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcSurfaceStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                    <EntityRule EntityName="IfcCurve" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="StyledByItem" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcCurveStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                    <EntityRule EntityName="IfcPoint" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                    <EntityRule EntityName="IfcAnnotationFillArea" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="StyledByItem" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcFillAreaStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                                <AttributeRule AttributeName="Name" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                    <EntityRule EntityName="IfcGeometricSet" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="StyledByItem" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcSurfaceStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                    <EntityRule EntityName="IfcCurveStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                    <EntityRule EntityName="IfcFillAreaStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                    <EntityRule EntityName="IfcMappedItem" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="MappingSource" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcRepresentationMap" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="MappedRepresentation" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule AttributeName="MappingTarget" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcCartesianTransformationOperator" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="014166a7-ef2b-4818-bfcb-1128a691cf9f" name="Annotation 2D Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcAnnotation">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>
The 'Annotation 2D Geometry' is used, when the representation of an annotation includes specific drafting
 representation elements, in particular areas for hatching and text. </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> : 'Annotation'
</li>

 <li>
<em>IfcShapeRepresentation</em><em>.RepresentationType</em> : 'Annotation2D'
</li>

 <li><em>IfcShapeRepresentation</em><em>.Items</em> :

  <ul>

   <li>subtypes of <em>IfcPoint</em> and <em>IfcCurve</em> being two-dimensional and
 within an <em>IfcGeometricCurveSet</em>
</li>

   <li>subtypes of <em>IfcAnnotationFillArea</em> for hatches
</li>

  <li>subtypes of <em>IfcTextLiteral</em> for text
</li>

  </ul>
 </li>
</ul>]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Annotation" AttributeName="Value=Annotation" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Annotation2D" AttributeName="Value=Annotation2D" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcPoint" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcCurve" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcAnnotationFillArea" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcTextLiteral" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="0f213846-fe15-4607-a66a-b33e98cb5887" name="Annotation 3D Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcAnnotation">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>
The 'Annotation 3D Geometry' is used, when the representation of the
 annotation does includes surfaces and is not restricted to two-dimensional representation items.</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> : 'Annotation'
</li>

 <li>
<em>IfcShapeRepresentation</em><em>.RepresentationType</em> : 'GeometricSet'
</li>
    
 <li><em>IfcShapeRepresentation</em><em>.Items</em> :
  <ul>
   <li>subtypes of <em>IfcPoint</em> and <em>IfcCurve</em> being three-dimensional and
 within an <em>IfcGeometricSet</em></li>
   <li>subtypes of <em>IfcSurface</em> being three-dimensional and
 within an <em>IfcGeometricSet</em></li>
  </ul>
 
 </li>
</ul>]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Annotation" AttributeName="Value=Annotation" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=GeometricSet" AttributeName="Value=GeometricSet" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcPoint" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcCurve" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcSurface" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="3bf716df-3990-4bfc-8045-9e4011c9b622" name="Axis Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>
Elements following a path provide an 'Axis' representation
 indicating a line segment or any arbitrary open bounded curve.
 Examples of such elements include walls, beams, columns,
 pipes, ducts, and cables. For elements that have a material
 profile set association indicating cross-section, a
 'Body' representation may be generated based on the axis
 curve and material profiles. Curve styles may indicate
 particular colors, line thicknesses, and dash patterns for
 2D rendering.

</p>

]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="" AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="" AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="" AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="" AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Axis" AttributeName="Value=Axis" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Curve3D" AttributeName="Value=Curve3D" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule RuleID="" EntityName="IfcBoundedCurve" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="StyledByItem" Cardinality="ZeroToOne">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcCurveStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="782444e8-d681-475a-9034-a9e7f53c6d65" name="Axis 2D Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>
The 'Axis' representation using 'Curve2D' representation type is predominately used to align material layer sets to geometric representations of standard walls.

</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> =
'Axis'</li>


 <li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> : 'Curve2D'</li>
 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcBoundedCurve</em></li>

</ul>
]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="" AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Axis" AttributeName="Value=Axis" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Curve2D" AttributeName="Value=Curve2D" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcBoundedCurve" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="b894d8cb-fb41-45ec-ba18-72cac6baff34" name="Axis 3D Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>
The 'Axis' representation using 'Curve3D' representation type is predominately used to align material profile sets to geometric representations of standard beams, columns, members, pipes, ducts and other longitudinal elements.

</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> =
'Axis'</li>


 <li><em>IfcShapeRepresentation</em><em>.RepresentationType</em> : 'Curve3D'</li>
 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcBoundedCurve</em></li>

</ul>
]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="" AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Axis" AttributeName="Value=Axis" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Curve3D" AttributeName="Value=Curve3D" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcBoundedCurve" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="4f5777d7-68e9-459c-aa2c-46adf3e88d31" name="Footprint Geometry" status="" 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>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule RuleID="" AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule RuleID="" AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="" AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Footprint" AttributeName="Value=Footprint" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=GeometricCurveSet" AttributeName="Value=GeometricCurveSet" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricCurveSet" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule RuleID="" AttributeName="Elements" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcBoundedCurve" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="StyledByItem" Cardinality="ZeroToOne">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                                      <AttributeRules>
                                                        <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                          <EntityRules>
                                                            <EntityRule EntityName="IfcCurveStyle" Cardinality="_asSchema">
                                                              <AttributeRules />
                                                              <EntityRules />
                                                            </EntityRule>
                                                          </EntityRules>
                                                          <AttributeConstraints />
                                                        </AttributeRule>
                                                      </AttributeRules>
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule AttributeName="StyledByItem" Cardinality="ZeroToOne">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcFillAreaStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="" AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="LayerAssignments" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPresentationLayerAssignment" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="9456d6d6-a62a-48b4-baff-be2e38baac9c" name="FootPrint GeomSet Geometry" status="" 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> : <i>IfcGeometricCurveSet</i></li>
</ul>
]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=FootPrint" AttributeName="Value=FootPrint" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="" AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=GeometricCurveSet" AttributeName="Value=GeometricCurveSet" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricCurveSet" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="608f0092-eb1a-4c23-b92f-f41ae0aa6ff4" name="FootPrint Annotation Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcProduct">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The 'FootPrint Annotation Geometry' is the representation for the floor plan projection of the geometric representation of elements, comprising of mainly 2D curves, hatches and additional annotations such as a tag number or similar.</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> : 'FootPrint'
</li>

 <li>
<em>IfcShapeRepresentation</em><em>.RepresentationType</em> : 'Annotation2D'
</li>
    
 <li><em>IfcShapeRepresentation</em><em>.Items</em> : 
  <ul>

   <li>subtypes of <em>IfcPoint</em> and <em>IfcCurve</em> being two-dimensional and
 within an <em>IfcGeometricCurveSet</em>
</li>

   <li>subtypes of <em>IfcAnnotationFillArea</em> for hatches
</li>

  <li>subtypes of <em>IfcTextLiteral</em> for text
</li>

  </ul>
 </li>

</ul>]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=FootPrint" AttributeName="Value=FootPrint" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="" AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Annotation2D" AttributeName="Value=Annotation2D" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricCurveSet" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcAnnotationFillArea" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcTextLiteral" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="f16eb3be-ff88-4f33-97df-d55aed3a0f95" name="Profile Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Elements filling an opening provide a 'Profile' representation describing the shape of the cutout.  Examples of such elements include doors and windows.
</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Profile" AttributeName="Value=Profile" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Curve3D" AttributeName="Value=Curve3D" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcPolyline" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Points" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcCartesianPoint" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="1d897220-740d-4793-9a8d-5d2774c7bc00" name="Profile 3D Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Profile 3D Geometry</em> is the standard representation of the outer profile for elements filling an opening.  Examples of such elements include doors and windows.
 In the case of doors and windows the profile geometry is used to apply the parametric definition of lining and panel dimensions to the profile.</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> =
'Profile'</li>


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


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

</ul>
]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Profile" AttributeName="Value=Profile" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Curve3D" AttributeName="Value=Curve3D" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcBoundedCurve" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="2e99de70-fb73-478f-9bca-4fedfdeb4ea5" name="Surface Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>
Elements may have a 'Surface' representation describing the
 outer surface of the object. Such representation may be
 used for hit-testing objects having part composition such
 as framed walls.

</p>
      ]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Surface" AttributeName="Value=Surface" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Surface3D" AttributeName="Value=Surface3D" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcBoundedSurface" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="StyledByItem" Cardinality="ZeroToOne">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcSurfaceStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="bd82983d-39d5-41b2-9ee8-f3bd8777d315" name="Surface 3D Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Surface 3D Geometry</em> is the standard surfacic represenation for elements having a 'Surface' representation describing the
 inner or outer surface of the object, e.g. for defining thermal boundaries idealized at the middle plane of an element.

</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> =
'Surface'</li>


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


 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcBoundedSurface</em>, <em>IfcSweptSurface</em></li>

</ul>
]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Surface" AttributeName="Value=Surface" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Surface3D" AttributeName="Value=Surface3D" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcBoundedSurface" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcSweptSurface" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="c446bd16-2de3-4b97-b34f-4446ac0badc2" name="Body Geometry" status="" 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 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>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule RuleID="" EntityName="IfcSolidModel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="StyledByItem" Cardinality="ZeroToOne">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcStyledItem" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Styles" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcSurfaceStyle" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates>
                <ConceptTemplate uuid="fbbb70d8-52ee-4d90-972e-9ddb4c0a11ab" name="Body SurfaceOrSolidModel Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Body SurfaceOrSolidModel Geometry</em> is the representation of the 3D shape of a product by surface or solid models and allows for a mixed representation.

</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> =
'SurfaceOrSolidModel'</li>


 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcTessellateditem</em>, <em>IfcShellBasedSurfaceModel</em>, <em>IfcFaceBasedSurfaceModel</em>, <em>IfcSolidModel</em></li>

</ul>
]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=SurfaceOrSolidModel" AttributeName="Value=SurfaceOrSolidModel" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcTessellatedItem" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcShellBasedSurfaceModel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcFaceBasedSurfaceModel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcSolidModel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="17d34a12-9403-40f4-bf82-65399be23c55" name="Body SurfaceModel Geometry" status="" 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 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> =
'SurfaceModel'</li>


 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcTessellateditem</em>, <em>IfcShellBasedSurfaceModel</em>, <em>IfcFaceBasedSurfaceModel</em></li>

</ul>
]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=SurfaceModel" AttributeName="Value=SurfaceModel" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcTessellatedItem" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcFaceBasedSurfaceModel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcShellBasedSurfaceModel" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="5cfd4403-6545-4c6d-bc27-0a95a3d09950" name="Body Tessellation Geometry" status="" 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>IfcTessellateditem</em></li>

</ul>
]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Tessellation" AttributeName="Value=Tessellation" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcTessellatedItem" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="cb7c18fa-cf83-4db1-be1b-c013ba4ed672" name="Body SweptSolid Geometry" status="" 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>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=SweptSolid" AttributeName="Value=SweptSolid" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcExtrudedAreaSolid" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcRevolvedAreaSolid" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="5464785d-e5d1-4f75-9ecc-6cb39214705e" name="Body AdvancedSweptSolid Geometry" status="" 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>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=AdvancedSweptSolid" AttributeName="Value=AdvancedSweptSolid" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcSweptAreaSolid" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcSweptDiskSolid" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="8fb923f5-b82d-48d2-ad29-d678ca473fda" name="Body Brep Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Body Brep Geometry</em> is the representation of the 3D shape of a product by faceted boundary representation 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> =
'Brep'</li>


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

</ul>
]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Brep" AttributeName="Value=Brep" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcFacetedBrep" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="fc763575-50f1-4bc0-bbf2-382380152047" name="Body AdvancedBrep Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Body Brep Geometry</em> is the representation of the 3D shape of a product by boundary representation models, including NURBS.

</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> =
'AdvancedBrep'</li>


 
<li><em>IfcShapeRepresentation</em><em>.Items</em> =
 <em>IfcAdvancedBrep</em>, <em>IfcFacetedBrep</em></li>

</ul>
]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=AdvancedBrep" AttributeName="Value=AdvancedBrep" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcAdvancedBrep" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                        <EntityRule EntityName="IfcFacetedBrep" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="a0ab7630-6965-495e-be8f-d106fd2599c2" name="Body CSG Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Body CSG Geometry</em> is the representation of the 3D shape of a product by Constructive Solid Geometry 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> =
'CSG'</li>


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

</ul>

<blockquote class="note">NOTE&nbsp; The <em>Items</em> <em>IfcBooleanResult</em> and <em>IfcPrimitive3D</em> shall also be allowed for compatibility with previous releases of the standard.</blockquote>]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=CSG" AttributeName="Value=CSG" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcCsgSolid" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
                <ConceptTemplate uuid="2cdbc2f5-9b0c-43ea-9d2a-9d72d0147e00" name="Body Clipping Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
                  <Definitions>
                    <Definition>
                      <Body><![CDATA[<p>The <em>Body Clipping Geometry</em> is the representation of the 3D shape of a product by using Constructive Solid Geometry models with difference operations involving half space solids only.

</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> =
'Clipping'</li>


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

</ul>

<blockquote class="note">NOTE&nbsp; This representation type is predominately used for compatibility with previous releases of the standard.</blockquote>]]></Body>
                      <Links />
                    </Definition>
                  </Definitions>
                  <Rules>
                    <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Identifier" AttributeName="RepresentationIdentifier" Cardinality="One">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                          <AttributeRules>
                                            <AttributeRule Description="Value=Clipping" AttributeName="Value=Clipping" Cardinality="_asSchema">
                                              <EntityRules />
                                              <AttributeConstraints />
                                            </AttributeRule>
                                          </AttributeRules>
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                    <AttributeRule RuleID="Items" AttributeName="Items" Cardinality="_asSchema">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcBooleanClippingResult" Cardinality="_asSchema">
                                          <AttributeRules />
                                          <EntityRules />
                                        </EntityRule>
                                      </EntityRules>
                                      <AttributeConstraints />
                                    </AttributeRule>
                                  </AttributeRules>
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </Rules>
                  <SubTemplates />
                </ConceptTemplate>
              </SubTemplates>
            </ConceptTemplate>
            <ConceptTemplate uuid="0fdc2380-9ef0-41e9-b0dc-f01fd2f77e6c" name="Clearance Geometry" status="" 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>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Clearance" AttributeName="Value=Clearance" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcBoundedSurface" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="a0002f8b-7b38-44ff-9bbb-862d6ccd54b1" name="Lighting Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Elements emitting light provide a 'Lighting' representation. Examples of such elements include lamps and light fixtures.  Such representation may be used for 3D rendering or lighting design.
</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Lighting" AttributeName="Value=Lighting" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=LightSource" AttributeName="Value=LightSource" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLightSource" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="LightColour" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcColourRgb" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="2a90f52f-7961-4dbd-8560-546e2d0b73bb" name="Survey Points Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcSite">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Elements may provide a 'SurveyPoints' representation for defining a countour such as for <i>IfcSite</i>.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=SurveyPoints" AttributeName="Value=SurveyPoints" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=GeometricCurveSet" AttributeName="Value=GeometricCurveSet" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricCurveSet" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Elements" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcCartesianPoint" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                            <EntityRule EntityName="IfcPolyline" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="ecfdd7c8-71d5-449f-bf20-e63a25dcb9ba" name="Mapped Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcRoot">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>
Elements may have a 'Mapped Geometry' representation
 that reuses the 'Product Type Representation' at the corresponding 'Product Type'.

</p>

]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules />
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="f041510e-b923-4bad-92de-b106692ec3c5" name="Box Geometry" status="" 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>

]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Box" AttributeName="Value=Box" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=BoundingBox" AttributeName="Value=BoundingBox" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcBoundingBox" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Corner" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcCartesianPoint" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule AttributeName="XDim" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcPositiveLengthMeasure" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule AttributeName="YDim" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcPositiveLengthMeasure" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                        <AttributeRule AttributeName="ZDim" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcPositiveLengthMeasure" Cardinality="_asSchema">
                                              <AttributeRules />
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="4bd6c9cf-6fd1-432e-9e6c-956bfd8b36bb" name="Row Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElementComponent">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>A symbolic representation is defined for a row of fasteners or several rows of
fasteners within a single instance of a product.  Such rows or arrays may
contain possibly large numbers of individual pieces.</p>

<p>Each <i>IfcPolyline</i> starting point represents where the head of a fastener
is located.  The local placement of the element shall be located and oriented such
that the local z axis is parallel with the axes of the fasteners (bolts, nails, staples or similar).</p>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Row" AttributeName="Value=Row" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=GeometricCurveSet" AttributeName="Value=GeometricCurveSet" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricCurveSet" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule AttributeName="Elements" Cardinality="_asSchema">
                                          <EntityRules>
                                            <EntityRule EntityName="IfcPolyline" Cardinality="_asSchema">
                                              <AttributeRules>
                                                <AttributeRule AttributeName="Points" Cardinality="_asSchema">
                                                  <EntityRules>
                                                    <EntityRule EntityName="IfcCartesianPoint" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                    <EntityRule EntityName="IfcCartesianPoint" Cardinality="_asSchema">
                                                      <AttributeRules />
                                                      <EntityRules />
                                                    </EntityRule>
                                                  </EntityRules>
                                                  <AttributeConstraints />
                                                </AttributeRule>
                                              </AttributeRules>
                                              <EntityRules />
                                            </EntityRule>
                                          </EntityRules>
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="f7a8e906-22c1-49f9-921e-04d440f62dc5" name="Topology" status="" applicableSchema="IFC4" applicableEntity="IfcRoot">
          <Definitions>
            <Definition>
              <Body><![CDATA[]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules />
          <SubTemplates>
            <ConceptTemplate uuid="79dd6317-2390-44ca-88c2-70d46cd5b969" name="Reference Topology" status="" applicableSchema="IFC4" applicableEntity="IfcProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="Representation" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcProductDefinitionShape" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="Representations" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcTopologyRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Reference" AttributeName="Value=Reference" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Topology" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcTopologicalRepresentationItem" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="0626e774-a910-46df-89e0-f291617890ea" name="Port Types" status="" applicableSchema="IFC4" applicableEntity="IfcDistributionPort">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Ports are described according to flow direction, port type, and system type. In order for two ports to be connected, they must have equal port type, equal or undefined system type, and opposite flow direction.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="FlowDirection" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcFlowDirectionEnum" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule RuleID="PredefinedType" AttributeName="PredefinedType" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcDistributionPortTypeEnum" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule RuleID="SystemType" AttributeName="SystemType" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcDistributionSystemEnum" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="5ed93e91-faf6-4682-82f9-6f3b747de093" name="Spatial Naming" status="" applicableSchema="IFC4" applicableEntity="IfcSpatialElement">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Spatial elements may have both identifier-based names and descriptive names, each of which should correspond with building signage.<p>

<p>For spatial elements, the <i>Name</i> attribute is intended to be unique and indexable within a building for purposes of identifying by location. This attribute typically corresponding to a room number, floor number, or building number.</p>

<p>For spatial elements, the <i>LongName</i> attribute is intended to be descriptive of function, such as 'Small Conference Room'.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="LongName" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="bc6d5fa7-4e01-4595-b8eb-4f1fada00221" name="Site Location" status="" applicableSchema="IFC4" applicableEntity="IfcSite">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>The site location may be used to determine climate conditions and applicable building codes.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="RefLatitude" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcCompoundPlaneAngleMeasure" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="RefLongitude" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcCompoundPlaneAngleMeasure" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="RefElevation" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcLengthMeasure" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="LandTitleNumber" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="SiteAddress" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcPostalAddress" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="AddressLines" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Town" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Region" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Country" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="PostalCode" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="e84772bb-fa2e-43a9-8764-2caede0bc1bc" name="Building Location" status="" applicableSchema="IFC4" applicableEntity="IfcBuilding">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>The building location may indicate the address as found on a map.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="ElevationOfRefHeight" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcLengthMeasure" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="ElevationOfTerrain" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcLengthMeasure" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="BuildingAddress" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcPostalAddress" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="AddressLines" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Town" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Region" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="PostalCode" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="Country" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="433df61b-bc59-4afe-a358-9f366b3f5f27" name="Building Storey Elevation" status="" applicableSchema="IFC4" applicableEntity="IfcBuildingStorey">
          <Definitions>
            <Definition>
              <Body><![CDATA[]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="Elevation" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcLengthMeasure" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="d17ae27a-1ad6-471b-8775-404c8a59e0a2" name="Grid" status="" applicableSchema="IFC4" applicableEntity="IfcGrid">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Grids are used for layout according to rectangular, triangular or circular patterns</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="GridType" AttributeName="PredefinedType" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcGridTypeEnum" Cardinality="_asSchema">
                  <AttributeRules />
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="UAxes" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcGridAxis" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="AxisTag" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule RuleID="UCurve" AttributeName="AxisCurve" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule RuleID="" EntityName="IfcCurve" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
            <AttributeRule AttributeName="VAxes" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcGridAxis" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="AxisTag" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule RuleID="VCurve" AttributeName="AxisCurve" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule RuleID="" EntityName="IfcCurve" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="80f88bec-0436-4f70-a42a-c04705656a81" name="Product Type" status="" applicableSchema="IFC4" applicableEntity="IfcTypeProduct">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>Product types define explicit product models or parametric product families, that may be instantiated in buildings.</p>]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="ad332edd-42ee-4cc6-a86b-dd904bd3f762" name="Product Type Representation" status="" applicableSchema="IFC4" applicableEntity="IfcTypeProduct">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Product types may have representations indicating shape representation for geometry, clearance, or other concepts.</p>
<p>The shape representation attached to a type is defined using the relationship <em>RepresentationMaps</em> of data type <em>IfcRepresentationMap</em>. It provides the means to store several representation maps for different purposes. In order to utilze the representation map at each occurrence of the product type, the product occurrence has to use the concept 'Mapped Geometry'.</p>
<blockquote class="note">NOTE&nbsp; See <em>IfcTypeProduct</em> for further information and figures explaning the concepts 'Product Type Representation' and 'Mapped Geometry'.</blockquote>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules />
          <SubTemplates>
            <ConceptTemplate uuid="e10f140b-0bf8-4bde-9b8c-8980971063f1" name="Axis Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcElementType">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The Axis representation may be defined on product types that have a concept of a linear representation, which may also correspond to structural axis or distribution flow path.</p>

<p>For distribution elements, this represents the 3D flow path of the item having <em>IfcShapeRepresentation.RepresentationType</em> of 'Curve3D' and containing a single <em>IfcBoundedCurve</em> subtype such as <em>IfcPolyline</em>, <em>IfcTrimmedCurve</em>, or <em>IfcCompositeCurve</em>.  For elements containing directional ports (<em>IfcDistributionPort</em> with <em>FlowDirection</em> of <em>SOURCE</em> or <em>SINK</em>), the direction of the curve indicates direction of flow where a <em>SINK</em> port is positioned at the start of the curve and a <em>SOURCE</em> port is positioned at the end of the curve.  This representation is most applicable to flow segment types (pipes, ducts, cables), however may be used at other elements to define a primary flow path if applicable.</p>

<p>If an element type is defined parametrically (such as a flow segment type defining common material profile but no particular length or path), then no representations shall be asserted at the type.</p>

<blockquote class="note">NOTE&nbsp; The product representations are defined as representation maps (at the level of the supertype <em>IfcTypeProduct</em>, which get assigned by an element occurrence instance through the <em>IfcShapeRepresentation.Item[1]</em> being an <em>IfcMappedItem</em>.</blockquote>

]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="RepresentationMaps" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRepresentationMap" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="MappedRepresentation" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Axis" AttributeName="Value=Axis" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcBoundedCurve" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="3aec2d00-b4bb-476a-a821-fc22b895b531" name="Body Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcTypeProduct">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The Body representation defines the physical shape of the product type.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="RepresentationMaps" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRepresentationMap" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="MappedRepresentation" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule RuleID="" AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Body" AttributeName="Value=Body" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="RepresentationType" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationItem" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                        <AttributeRule AttributeName="MappingOrigin" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcAxis2Placement3D" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="Location" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcCartesianPoint" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="6b6bcc41-3928-4db0-addb-58b771a27d19" name="Lighting Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcDistributionElementType">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>For elements that emit light such as lamps or light fixtures, this represents the light emission of the item having <em>IfcShapeRepresentation.RepresentationType</em> of 'LightSource' and containing one or more <em>IfcLightSource</em> subtypes.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="RepresentationMaps" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRepresentationMap" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="MappedRepresentation" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Lighting" AttributeName="Value=Lighting" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLightSource" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
            <ConceptTemplate uuid="f1ebb0f3-96c9-4912-a475-d012a23f8179" name="Clearance Geometry" status="" applicableSchema="IFC4" applicableEntity="IfcDistributionElementType">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>For elements that require clearance such as for safety, maintenance, or other purpose, this represents the 3D clearance volume of the item having RepresentationType of 'Surface3D'. Such clearance region indicates space that should not intersect with the 'Body' representation of other elements, though may intersect with the 'Clearance' representation of other elements.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Rules>
                <AttributeRule AttributeName="RepresentationMaps" Cardinality="_asSchema">
                  <EntityRules>
                    <EntityRule EntityName="IfcRepresentationMap" Cardinality="_asSchema">
                      <AttributeRules>
                        <AttributeRule AttributeName="MappedRepresentation" Cardinality="_asSchema">
                          <EntityRules>
                            <EntityRule EntityName="IfcShapeRepresentation" Cardinality="_asSchema">
                              <AttributeRules>
                                <AttributeRule AttributeName="ContextOfItems" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcGeometricRepresentationContext" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule AttributeName="RepresentationIdentifier" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules>
                                        <AttributeRule Description="Value=Clearance" AttributeName="Value=Clearance" Cardinality="_asSchema">
                                          <EntityRules />
                                          <AttributeConstraints />
                                        </AttributeRule>
                                      </AttributeRules>
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Type" AttributeName="RepresentationType" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                                <AttributeRule RuleID="Geometry" AttributeName="Items" Cardinality="_asSchema">
                                  <EntityRules>
                                    <EntityRule EntityName="IfcSurface" Cardinality="_asSchema">
                                      <AttributeRules />
                                      <EntityRules />
                                    </EntityRule>
                                  </EntityRules>
                                  <AttributeConstraints />
                                </AttributeRule>
                              </AttributeRules>
                              <EntityRules />
                            </EntityRule>
                          </EntityRules>
                          <AttributeConstraints />
                        </AttributeRule>
                      </AttributeRules>
                      <EntityRules />
                    </EntityRule>
                  </EntityRules>
                  <AttributeConstraints />
                </AttributeRule>
              </Rules>
              <SubTemplates />
            </ConceptTemplate>
          </SubTemplates>
        </ConceptTemplate>
        <ConceptTemplate uuid="25a2e112-3a60-49fd-9349-87de90ec6445" name="Predefined Type expected" status="Candidate" author="nn@aec3.com" owner="aec3" copyright="aec3" applicableSchema="IFC4" applicableEntity="IfcDistributionFlowElementType">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>A predefined type other than <i>NOTDEFINED</i> shall be provided</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules />
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="e6acde2d-086e-4ca7-ba4b-08c1ad1c12ef" name="Resource" status="" applicableSchema="IFC4" applicableEntity="IfcResource">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>A resource represents usage of something, having costs and environmental impacts.</p>]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="678111f9-565e-4c1d-b8c3-d218c4ccd056" name="Resource Cost" status="" applicableSchema="IFC4" applicableEntity="IfcConstructionResource">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Resources can have associated costs indicating financial costs and environmental impacts incurred according to a specified base quantity.</p>
<p>Each cost value may be defined using a constant amount or calculated according to specified formula.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="CostType" AttributeName="BaseCosts" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcAppliedValue" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="CostName" AttributeName="Name" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule RuleID="ValueType" AttributeName="AppliedValue" Cardinality="_asSchema">
                      <EntityRules />
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
        <ConceptTemplate uuid="a057d708-23d4-47d2-a84d-89ffc93d8fe8" name="Resource Quantity" status="" applicableSchema="IFC4" applicableEntity="IfcConstructionResource">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Resources may be defined according to a base quantity, where assigned tasks consume such amount of resource relative to an output quantity.</p>

<p>For work-based resources such as labor and equipment, quantities are based on time.
For product-based resources, quantities are based on count.  
For material-based resources, quantities are based on volume.</p>
]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule RuleID="QuantityType" AttributeName="BaseQuantity" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcPhysicalSimpleQuantity" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule RuleID="QuantityName" AttributeName="Name" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
    <ConceptTemplate uuid="ade59c14-5675-49a6-9622-6b5e585d7dca" name="Resource Type" status="" applicableSchema="IFC4" applicableEntity="IfcTypeResource">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>Resource types define explicit resource models or parametric cost families, that may be instantiated in cost schedules.</p>]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <Rules />
      <SubTemplates>
        <ConceptTemplate uuid="ff176f32-6953-48e7-8893-697ef422ab96" name="Resource Cost Rate" status="" applicableSchema="IFC4" applicableEntity="IfcConstructionResourceType">
          <Definitions>
            <Definition>
              <Body><![CDATA[]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Rules>
            <AttributeRule AttributeName="BaseCosts" Cardinality="_asSchema">
              <EntityRules>
                <EntityRule EntityName="IfcCostValue" Cardinality="_asSchema">
                  <AttributeRules>
                    <AttributeRule AttributeName="AppliedValue" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcMonetaryMeasure" Cardinality="_asSchema">
                          <AttributeRules />
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                    <AttributeRule AttributeName="UnitBasis" Cardinality="_asSchema">
                      <EntityRules>
                        <EntityRule EntityName="IfcMeasureWithUnit" Cardinality="_asSchema">
                          <AttributeRules>
                            <AttributeRule AttributeName="ValueComponent" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcValue" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                            <AttributeRule AttributeName="UnitComponent" Cardinality="_asSchema">
                              <EntityRules>
                                <EntityRule EntityName="IfcUnit" Cardinality="_asSchema">
                                  <AttributeRules />
                                  <EntityRules />
                                </EntityRule>
                              </EntityRules>
                              <AttributeConstraints />
                            </AttributeRule>
                          </AttributeRules>
                          <EntityRules />
                        </EntityRule>
                      </EntityRules>
                      <AttributeConstraints />
                    </AttributeRule>
                  </AttributeRules>
                  <EntityRules />
                </EntityRule>
              </EntityRules>
              <AttributeConstraints />
            </AttributeRule>
          </Rules>
          <SubTemplates />
        </ConceptTemplate>
      </SubTemplates>
    </ConceptTemplate>
  </Templates>
  <Views>
    <ModelView uuid="08b7826d-9a51-49cc-aa8e-0b160beb4918" name="Plumbing System Design" code="WSie" version="2013" status="Candidate" author="Tim Chipman" owner="Tim Chipman" copyright="buildingSMART Alliance" applicableSchema="IFC4">
      <Definitions>
        <Definition>
          <Body><![CDATA[<p>The design of building plumbing systems iterates through multiple steps, involving the provision of data by multiple parties and the repeated refinement of the design as it moves from generalized concepts and equipment types to detailed construction documents with the required equipment specified.</p>

<p>This model view is specific to domestic water distribution and drainage in buildings. It does not include piping for other substances such as gas, refrigerants, or other chemicals.  Nor does it include site piping such as for rain water, storm water, or irrigation.</p>]]></Body>
          <Links />
        </Definition>
      </Definitions>
      <ExchangeRequirements>
        <ExchangeRequirement uuid="d4eda7e2-4011-459a-89d7-c651cde1965d" name="Facility Criteria" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>This exchange includes high-level criteria specific to the building to be constructed, but without regard for particular disciplines.</p>

<p>The facility occupancy model describes the site location, owner's project requirements, and building requirements.</p>

<p>The site location indicates the geographic location for determining climate information, and the legal address for determining the jurisdiction and applicable building codes.</p>
]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="191ee380-ad71-4d5f-aaa3-fe13080d7550" name="Discipline Specifications" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[
<p>Domestic water requirements are based on occupancy load requirements and performance data for equipment.</p>

<p>The following information is captured for each class of fixture:</p>
<ul>
<li>Flow rate</li>
<li>Flow test</li>
<li>Volume Per Visit</li>
<li>Visits per Person per Period</li>
<li>Minutes in Use</li>
<li>Numbers of Users</li>
<li>Efficiency Label</li>
<li>Volume Per Day</li>
<li>Input / Output Ratio</li>
<li>Water Input Grade</li>
<li>Water Output Grade</li>
<li>Operating Pressure</li>
<li>Distance to Source – Civil Plans</li>
<li>Water Supply Fixture Unit (WSFU)</li>
<li>Pressure Drop</li>
</ul>

<p>The following information is captured for available systems that may provide the energy source for water heating:</p>
<ul>
<li>Gas</li>
<li>Oil</li>
<li>Electrical</li>
</ul>

<p>The following information is captured for water distribution systems:</p>
<ul>
<li>Cost of system based on project type</li>
<li>Cost of system based on anticipated water input</li>
</ul>

<p>The following information is captured for project cost control:</p>
<ul>
<li>System budget</li>
<li>Available utilities and rate Structures</li>
</ul>]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="58cbfe87-0d23-4ae2-abf4-23002fe63369" name="Project Definition" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>This exchange includes initial project information to describe a project and its contents.</p>



<p>The owner's project requirements consist of a facility type and a set of space types, each indicating occupancy loads, hours of occupancy, design priorities, and required plumbing fixtures per occupant.</p>



]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" name="Space Program" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[
<p>This exchange requires spatial information for areas containing plumbing fixtures and equipment to determine allocated space.</p>
]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="9fe8db61-b9a0-4520-95ef-1060f313af62" name="Product Program" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[
<p>Plumbing equipment is determined according to water quality and flow properties of allocated sanitary terminals. </p>
<p>Valves are determined according to system transitions (such as from Domestic Cold Water to Irrigation) where backflow preventers or release valves may be required.
While not every valve must be elaborated at this stage, those that significantly impact pressure (such as backflow preventers) are required such that pumps may be sized appropriately.</p>
<p>Pumps are determined according to required pressure at fixtures, placement elevations, and pressure drop throughout downstream piping, valves, filters, and pumps.</p>
<p>Water heaters and holding tanks are determined according to required temperature and consumption based on occupancy patterns, and heat loss throughout downstream piping.</p>
<p>Water filtration equipment is determined according to required water quality at fixtures and incoming water quality from the water source (such as utility, community well, or private well).</p>
</p>

<p>Equipment rooms may be sized according to clearance volumes of boilers, pumps, filters, and appliances. 
While the final sizes are not yet known at this stage (piping layout and thermodynamic analysis has not yet been done), 
space allocation is only accurate according to the general equipment requirements.

This includes physical representation as well as clearance volumes, which may take into account handicap accessibility requirements.
</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="d733605a-964d-460c-946b-d2634b770d46" name="Design Early" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>A preliminary schedule of plumbing fixture types may be indicated:</p>
<ul>
<li>Bath</li>
<li>Toilet</li>
<li>Shower</li>
<li>Sink</li>
<li>Drinking Fountain</li>
<li>Urinal</li>
</ul>

<p>For each fixture type, system connections must be indicated including:</p>


<ul>
<li>Cold Water</li>
<li>Hot Water</li>
<li>Grey Water</li>
<li>Black Water</li>
<li>Rainwater Harvesting</li>
<li>Waste</li>
<li>Specialty Waste</li>
<li>Pure water</li>
<li>Other liquid, gas, or fuel services</li>
<li>Hot water fuel source</i>
</ul>]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" name="System Layout" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[
<p>This exchange indicates required quantities and sizes of plumbing equipment (pumps, valves, boilers, filters) based on system performance. 
It does not account for particular piping layout, therefore calculated pressure drop is approximated based on elevation and nominal horizontal routing.
</p>

<p>This exchange enables an architect to revise the facility spatial configuration plans based on the results of the coordination at the end of Design Schematic. 
Required information includes:
</p>
<ul>
<li>Spatial Elements (Buildings, Levels, Spaces, etc.)</li>
<li>Building Elements (Walls, Slabs, Doors, Windows, etc.)</li>
<li>Distribution Elements (Electrical, HVAC, Plumbing, etc.)</li>
<li>Spatial Zones</li>
<li>Systems & Circuits</li>
<li>Connectivity (Space Boundaries, Ports, Connections, Interferences)</li>
<li>Actors & Assignments</li>
</ul>

<p>This exchange provides detailed information for connectivity and placement of pipes, including the following:

<ul>
<li>Sanitary Terminal: Location, Load, Controls</li>
<li>Valve: Location, Load</li>
<li>Pipe Segment: Location, Connections, Load, Length, Material (copper, PEX, PVC, etc.)</li>
</ul>

]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" name="Design Schematic" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[
<p>The plumbing design schematic indicates system connectivity among fixtures and indicates pipe sizes, but does not indicate particular paths of pipes.</p>



]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" name="Product Type Template" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[
<p>Document process model, constraints, formulas, and tables used for making decisions on plumbing design.</p>

<ul>
<li>Water calculations showing required and designed flow rate, pressure, and temperature</li>
<li>Estimated water heater loading</li>
<li>Estimated water treatment loading</li>
<li>Estimated water pump loading</li>
<li>A projection/summation of the pump loads to justify the sizing of the pumps</li>
<li>Estimated water source loading</li>
<li>An economic analysis to justify the selection of utility water, community well, or private well (if in rural areas)</li>
</ul>

]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" name="Product Template" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>This exchange includes product type information for specific product models provided by manufacturers.</p>

]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="10b3b101-581f-496a-9778-0416363b8694" name="Product Type Selection" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[
<p>For this exchange, the engineer selects specific plumbing equipment models (or an approved list from several manufacturers).</p>



<p>Based on final allocation of pipe routing, pipes and equipment sizes may be adjusted.</p>




<p>All products may have defined types indicating manufacturer, model, and specifications. Such types may also have assigned tasks and resources for procurement, 
where resource types indicate supplier, location, and cost.</p>




]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="4a027b0c-a15a-4985-a052-7487457b5519" name="System Operation" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Performance requirements are elaborated for every water terminal, which may be used to size the plumbing system.</p>

<p>Each element requires the following at incoming water connections:</p>
<ul>
<li>Pressure range</li>
<li>Volumetric flow range</li>
<li>Pipe diameter</li>
<li>Water quality</li>
<li>Temperature range</li>
<li>Environmental temperature range (such as exterior for freeze protection)</li>
</ul>

<p>Each element requires the following at outgoing drainage connections:</p>
<ul>
<li>Volumetric flow range</li>
<li>Pipe diameter</li>
</ul>

</p>


<p>Calculations are performed to determine the potential demand and supply of grey water in a facility based on usage by all disciplines. 
Water Supply Requirements are updated to reflect a revised listing of plumbing equipment types, sizes and locations, if needed.</p>

<ul>
<li>Flowrate for fixtures (e.g. GPM gallons per minute)</li>
<li>Volume Per Visit</li>
<li>Visits per Person per Period</li>
<li>Minutes in Use</li>
<li>Numbers of Users</li>
<li>Efficiency Label</li>
<li>Volume Per Day</li>
<li>Input / Output Ratio</li>
<li>Water Input Grade</li>
<li>Water Output Grade</li>
<li>Operating Pressure</li>
<li>Distance to Source</li>
<li>Water Supply Fixture Unit (WSFU)</li>
</ul>
</p>

<p>A plumbing engineer uses the product type templates, updated plans, and other discipline information to determine total water supply requirements.
For each plumbing fixture, compatible product types are selected for each product occurrence [or if required by contract arrangement, multiple compatible product types are selected that are suitable]. 
The project delivery method may require the owner's approval for final product selection.
The total water supply requirements are calculated on each branch according to concurrent design load.
</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
        <ExchangeRequirement uuid="c025e661-4684-4759-8fe0-338dfadaac5b" name="Design Coordinated" applicability="default">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>The coordinated design contains full detail for all plumbing devices and their placement and interaction with other services within the building.</p>




<p>
For coordination with other building systems, plans are created showing equipment locations as well as pipe routing and connectivity.
Plumbing schedules for equipment, fixtures, and pipes are derived.
</p>




<p>Slabs, walls, coverings, openings, and system furnishings are included for coordination, as most fixtures and piping is anchored or embedded within such elements, 
where dimensions must be known for proper sizing and locating of pipes and/or sizing of enclosing furnishings. 
The anchoring of elements is significant, as it indicates construction precedence: 
for example, a sink embedded within a counter anchored to a wall implies the counter must be installed prior to the sink installation, whereas direct connection to a wall implies otherwise.
</p>



<p>Ports are indicated on all plumbing fixtures and equipment with full location, geometry, and connectivity information. Unlike electrical ports that may simply not have a connection, an open pipe port indicates a leak in the system which must be terminated by a pipe fitting cap or other equipment.
</p>
]]></Body>
              <Links />
            </Definition>
          </Definitions>
        </ExchangeRequirement>
      </ExchangeRequirements>
      <Roots>
        <ConceptRoot uuid="576ff7d6-1863-442d-9943-4eea6c33e602" applicableRootEntity="IfcProject">
          <Definitions />
          <Concepts>
            <Concept uuid="4707478c-1f6a-4b9e-ac33-a7f1bc673738" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="80cb3906-6330-4bc6-97ac-911af8558306" name="Revision Control">
              <Definitions />
              <Template ref="b441c773-3fdc-42b6-a323-ad268dcd85f2" />
              <Requirements>
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a10f8caa-b201-4056-ad9f-aebf7604045b" name="Descriptions">
              <Definitions />
              <Template ref="6fbed597-69bb-43c0-a837-1006f2d3dac3" />
              <Requirements>
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="bbec3b10-28e3-4c1f-9bd5-c9ff68879949" name="Spatial Decomposition">
              <Definitions />
              <Template ref="667f8443-ecce-4a8d-a63f-931fab0453e0" />
              <Requirements>
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
              </Requirements>
              <Rules>
                <TemplateRule Description="One or more sites within scope of the project." Parameters="Spatial Parts=IfcSite;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="bf9092ac-233d-4efb-b20e-94d9342612a6" name="Project Units">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>If units are omitted, SI base units are implicit.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="58df55ef-a765-4c49-992d-55483a25e0b8" />
              <Requirements>
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="NamedUnitType=LENGTHUNIT;" />
                <TemplateRule Parameters="NamedUnitType=TIMEUNIT;" />
                <TemplateRule Parameters="NamedUnitType=FREQUENCYUNIT;" />
                <TemplateRule Parameters="NamedUnitType=AREAUNIT;" />
                <TemplateRule Parameters="NamedUnitType=THERMODYNAMICTEMPERATUREUNIT;" />
                <TemplateRule Parameters="NamedUnitType=PRESSUREUNIT;" />
                <TemplateRule Parameters="NamedUnitType=VOLUMEUNIT;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="4069cdc3-d26d-4ed2-8257-c0b3b28e0fda" name="Project Context">
              <Definitions />
              <Template ref="38dac6f0-997c-4544-9bca-b6326b9a3e4b" />
              <Requirements>
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Context for 2D representations such as FootPrint and Annotation." Parameters="ContextIdentifier=Plan;ContextType=2D;" />
                <TemplateRule Description="Context for 3D representations such as Axis, Body and Clearance." Parameters="ContextIdentifier=Model;ContextType=3D;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a581582a-9a59-47c8-8e78-52a7f9130550" name="Project Declaration">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Objects are declared within a project (or project library) to indicate top-level positioning within the project hierarchy and to indicate the relevent context for units and geometry. 
</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="ab1e2cfd-9f21-4f4a-b6af-cc26d84e45ac" />
              <Requirements>
                <Requirement applicability="import" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Space types may be defined to indicate templates of common space requirements." Parameters="Type=IfcSpaceType;" />
                <TemplateRule Description="Each occupant indicates a population of people occupying spaces within buildings at various times." Parameters="Type=IfcOccupant;" />
                <TemplateRule Description="Each actor indicates a project participant such as an electrical utility company." Parameters="Type=IfcActor;" />
                <TemplateRule Description="Each space indicates a planned area and volume to be allocated within a physical building, before such building spatial hierarchy is defined." Parameters="Type=IfcSpace;" />
                <TemplateRule Description="Each work plan indicates an alternate scenario which may be considered within the project such as an analysis of different electrical systems." Parameters="Type=IfcWorkPlan;" />
                <TemplateRule Description="Plumbing device types may be defined to indicate product models or templates that may have multiple occurrences." Parameters="Type=IfcDistributionElementType;" />
                <TemplateRule Description="Each system indicates a top-level electrical system, typically provided by a utility, which is then aggregated into subsystems." Parameters="Type=IfcDistributionSystem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="ea945889-0524-49a3-b410-1cc7ae076d97" applicableRootEntity="IfcSite">
          <Definitions />
          <Concepts>
            <Concept uuid="bae0d54a-e9de-41ab-bcb0-a9a61bcc8854" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="65aab304-1475-4b16-802f-e6575258f687" name="Site Location">
              <Definitions />
              <Template ref="bc6d5fa7-4e01-4595-b8eb-4f1fada00221" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="9542c7b8-8fe7-4458-b8ef-15c19484665f" name="Spatial Decomposition">
              <Definitions />
              <Template ref="667f8443-ecce-4a8d-a63f-931fab0453e0" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Spatial Parts=IfcBuilding;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e6485195-a7c9-41c6-88dd-1689c88566b0" name="Footprint Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The foot print representation of <em>IfcSite</em> is given by
either a single 2D curve (such as <em>IfcPolyline</em> or
<em>IfcCompositeCurve</em>), or by a list of 2D curves (in case of
inner boundaries).</p>
<p>The representation identifier and type of this geometric
representation of <em>IfcSite</em> is:</p>
<ul>
<li><em>IfcShapeRepresentation.RepresentationIdentifier</em> =
'FootPrint'</li>
<li><em>IfcShapeRepresentation.RepresentationType</em> =
'GeometricCurveSet', or 'Annotation2D'</li>
</ul>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="4f5777d7-68e9-459c-aa2c-46adf3e88d31" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=GeometricCurveSet;Geometry=IfcGeometricCurveSet;" />
                <TemplateRule Parameters="RepresentationType=Annotation2D;Geometry=IfcAnnotationFillArea;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="aca6a7f6-076e-4e33-b856-4f72ec2a5b83" applicableRootEntity="IfcBuilding">
          <Definitions />
          <Concepts>
            <Concept uuid="7512f78a-04df-49e7-947c-6f5a9a1f9de3" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="306cce2e-712c-4c47-9bd2-db68f03576b7" name="Classification">
              <Definitions>
                <Definition>
                  <Body><![CDATA[Classification is required to determine the required plumbing fixtures per occupant.]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Construction Entities By Function" Parameters="Source=CSI;Name=OmniClass;Tokens=11-00 00 00;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="9c922f59-b83f-4147-953f-ae34f1b38b6e">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_BuildingCommon;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="9f73afb8-ed6a-4c15-bdec-debba2c950ff" name="Product Assignment">
              <Definitions />
              <Template ref="ec9cfb04-adfe-4868-8168-d78fe995a913" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Tasks assigned to building in early design indicating occupancy considerations, where tasks may have assigned product resources to indicate required plumbing fixtures." Parameters="Type=IfcTask;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="da91a8bd-8a3e-432f-9a60-5555db2b2d53" name="Spatial Decomposition">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="667f8443-ecce-4a8d-a63f-931fab0453e0" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Spatial Parts=IfcBuildingStorey;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="b6ef2c1b-9458-4ed3-992f-911c03269180" name="Building Location">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The building elevation must be known to determine pressure requirements for connected utilities.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="e84772bb-fa2e-43a9-8764-2caede0bc1bc" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="2a9c69a4-0a09-4eac-b863-10c64427fdcf" applicableRootEntity="IfcTask">
          <Definitions />
          <Concepts>
            <Concept uuid="e2663898-8932-4cbb-9433-9830125c9922" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="ed2239a0-cd03-405c-ac48-86943199243b" name="Process Assignment">
              <Definitions />
              <Template ref="e841d02b-ccfd-4d1f-9433-da4084658468" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Indicates cost of a contracted service or product procurement." Parameters="Type=IfcSubContractResource;" />
                <TemplateRule Description="Indicates provisioned product resource corresponding to an arbitrary quantity of products needed for a building in early design, such as plumbing fixtures." Parameters="Type=IfcConstructionProductResource;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="341096fb-1ff4-4df9-bdf5-4834fd59f6c8" applicableRootEntity="IfcConstructionProductResource">
          <Definitions />
          <Concepts>
            <Concept uuid="32857ede-6326-4402-ac65-66a7d1d2979b" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e5f1c418-1920-41ea-94d6-2c2c1b90d139" name="Resource Cost">
              <Definitions />
              <Template ref="678111f9-565e-4c1d-b8c3-d218c4ccd056" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Product cost." Parameters="CostType=IfcCostValue;CostName=Product;ValueType=IfcMonetaryMeasure;" />
                <TemplateRule Description="Shipping cost to project site." Parameters="CostType=IfcCostValue;CostName=Shipping;ValueType=IfcMonetaryMeasure;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e891a07d-4ae1-4ca1-a0c8-3e4fc93cee58" name="Resource Quantity">
              <Definitions />
              <Template ref="a057d708-23d4-47d2-a84d-89ffc93d8fe8" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Number of required fixtures of assigned type according to projected occupancy." Parameters="QuantityType=IfcQuantityCount;QuantityName=Count;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="c0fdf1c7-6a4d-4249-b0f1-2a4b69f95e20" name="Resource Assignment">
              <Definitions />
              <Template ref="26529b88-e45d-4818-a1ce-02ba12901b7e" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Indicate required quantities of plumbing fixtures (of various predefined types) according to projected occupancy." Parameters="Type=IfcSanitaryTerminal;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="f911abdf-e1e5-402d-a9ef-fc5dff9dcf73" applicableRootEntity="IfcOccupant">
          <Definitions />
          <Concepts>
            <Concept uuid="e0dfdda9-e98e-4eb9-a86f-217b7fc36e4d" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="55db0937-f46b-4f12-a3f5-8f7e72a9c715" name="Actor Assignment">
              <Definitions>
                <Definition>
                  <Body><![CDATA[
 
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="048079c1-74dd-4bd9-b330-479a148d238f" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Indicates the property to be occupied from a contract perspective but does not imply particular times of occupancy. Particular details of the agreement relating to the occupancy of a property are dealt within the &lt;em&gt;Pset_PropertyAgreement&lt;/em&gt; that is defined for the instance of &lt;em&gt;IfcSpatialStructureElement&lt;/em&gt;. This means that an occupant may be related to a site, building, building storey or space through the &lt;em&gt;IfcSpatialStructureElement.ElementComposition&lt;/em&gt; attribute. For instance, if the property concerned is several office spaces on a building storey, it might be appropriate to reference &lt;em&gt;IfcBuildingStorey.ElementComposition=PARTIAL&lt;/em&gt;.  Occupants of a property may be considered to be the parties to an agreement. The roles that the occupant may play in respect to an agreement are defined in the &lt;em&gt;IfcOccupantTypeEnum&lt;/em&gt; enumeration. If the role is not specified by the predefined contents of this enumeration, the value &lt;em&gt;USERDEFINED&lt;/em&gt; may be set and the &lt;em&gt;ObjectType&lt;/em&gt; attribute asserted." Parameters="Type=IfcSpatialStructureElement;" />
                <TemplateRule Description="Indicates a particular calendar for occupying assigned spaces, where such calendar has assigned spaces." Parameters="Type=IfcWorkCalendar;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="20803698-102a-4fe0-8ec8-247c5c8149fe" name="Property Sets">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements />
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="f1840088-4e45-424d-a1a5-2a1b4f48d083" name="Contact">
              <Definitions />
              <Template ref="121650c9-a1f4-4559-a1a2-e189c400cdfe" />
              <Requirements />
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="90738a9d-82a9-4176-b3ed-867d0b363ac1" applicableRootEntity="IfcActor">
          <Definitions />
          <Concepts>
            <Concept uuid="c7030e28-4eb0-4f0e-987a-e862156c3431" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="3b369773-6291-4d5b-b0f2-81f0aaf7ee12">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_ActorCommon;TemplateType=PSET_OCCURRENCEDRIVEN;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="3dd255e8-34b8-4ca9-9327-da0b19e8a984" name="Contact">
              <Definitions />
              <Template ref="121650c9-a1f4-4559-a1a2-e189c400cdfe" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules>
                <TemplateRule Description="A utility company offering electrical service." Parameters="Role=USERDEFINED;UserDefinedRole=ElectricalUtility;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="dcf6c467-0250-43c0-bbab-0d9f028927e7" name="Actor Assignment">
              <Definitions />
              <Template ref="048079c1-74dd-4bd9-b330-479a148d238f" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Utility providers may establish work plans indicating available service plans, which contain applicable calendars, rate structures, and have assigned water and sewer distribution systems." Parameters="Type=IfcWorkPlan;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="8ca7d61e-7556-490e-b229-cb5b2e388b43" applicableRootEntity="IfcSanitaryTerminal">
          <Definitions />
          <Concepts>
            <Concept uuid="cb91d9df-c365-41b1-ac8c-6495a3fbb847" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="ff3cf9df-0e46-495a-bf70-be27ea707f71" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="1951da69-04d4-4f20-bd8d-8495a953cc59">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=BATH;Name=Pset_SanitaryTerminalTypeBath;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=BIDET;Name=Pset_SanitaryTerminalTypeBidet;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=CISTERN;Name=Pset_SanitaryTerminalTypeCistern;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_SanitaryTerminalTypeCommon;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=SANITARYFOUNTAIN;Name=Pset_SanitaryTerminalTypeSanitaryFountain;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=SHOWER;Name=Pset_SanitaryTerminalTypeShower;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=SINK;Name=Pset_SanitaryTerminalTypeSink;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=TOILETPAN;Name=Pset_SanitaryTerminalTypeToiletPan;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=URINAL;Name=Pset_SanitaryTerminalTypeUrinal;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=WASHHANDBASIN;Name=Pset_SanitaryTerminalTypeWashHandBasin;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="48956cbe-6ca7-4ff2-9940-525515071f33">
              <Definitions />
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcElementQuantity" Parameters="Name=Qto_SanitaryTerminalBaseQuantities;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="b5810597-98f2-47a6-b6a5-a113b9b05d7e" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Cold water supply." Parameters="PredefinedType=BATH;Name=ColdWater;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Hot water supply." Parameters="PredefinedType=BATH;Name=HotWater;Type=DOMESTICHOTWATER;Flow=SINK" />
                <TemplateRule Description="Drainage." Parameters="PredefinedType=BATH;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Cold water supply." Parameters="PredefinedType=BIDET;Name=ColdWater;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Hot water supply." Parameters="PredefinedType=BIDET;Name=HotWater;Type=DOMESTICHOTWATER;Flow=SINK" />
                <TemplateRule Description="Drainage." Parameters="PredefinedType=BIDET;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Cold water supply." Parameters="PredefinedType=CISTERN;Name=ColdWater;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Hot water supply." Parameters="PredefinedType=CISTERN;Name=HotWater;Type=DOMESTICHOTWATER;Flow=SINK" />
                <TemplateRule Description="Drainage." Parameters="PredefinedType=CISTERN;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Cold water supply." Parameters="PredefinedType=SANITARYFOUNTAIN;Name=ColdWater;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Hot water supply." Parameters="PredefinedType=SANITARYFOUNTAIN;Name=HotWater;Type=DOMESTICHOTWATER;Flow=SINK" />
                <TemplateRule Description="Drainage." Parameters="PredefinedType=SANITARYFOUNTAIN;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Cold water supply." Parameters="PredefinedType=SHOWER;Name=ColdWater;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Hot water supply." Parameters="PredefinedType=SHOWER;Name=HotWater;Type=DOMESTICHOTWATER;Flow=SINK" />
                <TemplateRule Description="Drainage." Parameters="PredefinedType=SHOWER;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Cold water supply." Parameters="PredefinedType=SINK;Name=ColdWater;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Hot water supply." Parameters="PredefinedType=SINK;Name=HotWater;Type=DOMESTICHOTWATER;Flow=SINK" />
                <TemplateRule Description="Drainage." Parameters="PredefinedType=SINK;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Cold water supply." Parameters="PredefinedType=TOILETPAN;Name=ColdWater;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Drainage." Parameters="PredefinedType=TOILETPAN;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Cold water supply." Parameters="PredefinedType=URINAL;Name=ColdWater;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Drainage." Parameters="PredefinedType=URINAL;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Cold water supply." Parameters="PredefinedType=WASHHANDBASIN;Name=ColdWater;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Hot water supply." Parameters="PredefinedType=WASHHANDBASIN;Name=HotWater;Type=DOMESTICHOTWATER;Flow=SINK" />
                <TemplateRule Description="Drainage." Parameters="PredefinedType=WASHHANDBASIN;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="c0968703-906e-44f5-9336-b044a05db64c" name="Product Placement">
              <Definitions />
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcLocalPlacement;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="71584ace-87a0-40e8-bf41-05453221bc78" name="Footprint Geometry">
              <Definitions />
              <Template ref="4f5777d7-68e9-459c-aa2c-46adf3e88d31" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=GeometricCurveSet;Geometry=IfcGeometricCurveSet;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="0dcffd4b-9a9d-4605-ab78-6363a862289a" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="b97c9726-eb13-495d-84bd-56c549bbcd63" name="Clearance Geometry">
              <Definitions />
              <Template ref="0fdc2380-9ef0-41e9-b0dc-f01fd2f77e6c" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="7a2d5348-06b1-445f-b85b-8f473257cec7" name="Element Connectivity">
              <Definitions />
              <Template ref="17e42301-4a59-4945-b62b-2c64f6ca6c12" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Fixtures that are mounted on a base floor slab (without any flooring)." Parameters="Type=IfcSlab;" />
                <TemplateRule Description="Fixtures that are embedded or mounted within a wall or mounted above a floor covering." Parameters="Type=IfcCovering;" />
                <TemplateRule Description="Fixtures that are embedded within furnishings such as within a countertop." Parameters="Type=IfcSystemFurnitureElement;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="8e5be25b-de95-4322-a75b-f7e69e71738e" applicableRootEntity="IfcSanitaryTerminalType">
          <Definitions />
          <Concepts>
            <Concept uuid="1a17140a-cded-4399-bef7-830e1c11df9c" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="99f837c5-300d-460f-b692-9bf3e3ec1cd3" name="Property Sets for Types">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Name=Pset_SanitaryTerminalCommon;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a53fcb6b-bfb8-4507-ac61-7b63f2c960ab" name="Type-Based Ports">
              <Definitions />
              <Template ref="47b7b020-e010-40c8-b9e3-8234f1b5f563" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="611bec13-6055-4d5f-ad1d-85b18cd68aa3" name="Body Geometry">
              <Definitions />
              <Template ref="3aec2d00-b4bb-476a-a821-fc22b895b531" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=Brep;Geometry=IfcFacetedBrep;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="b8b4420b-280f-4c46-8416-5b57359b1d72" name="Clearance Geometry">
              <Definitions />
              <Template ref="f1ebb0f3-96c9-4912-a475-d012a23f8179" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=SurfaceModel;Geometry=IfcFaceBasedSurfaceModel;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a5c58b7a-f829-4243-98fa-74f7c9354def">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="73ce6379-291e-4158-b735-d5ad13c5ca6b" applicableRootEntity="IfcWasteTerminal">
          <Definitions />
          <Concepts>
            <Concept uuid="2940a4ec-d5ae-4905-8e55-96e8b11504ca" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="05badec6-540b-448a-be18-acb9a36db015" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcWasteTerminalType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="75650956-f6ab-4758-9f7f-0d7a45b1582a">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_WasteTerminalTypeCommon;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=FLOORTRAP;Name=Pset_WasteTerminalTypeFloorTrap;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=FLOORWASTE;Name=Pset_WasteTerminalTypeFloorWaste;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=GULLYSUMP;Name=Pset_WasteTerminalTypeGullySump;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=GULLYTRAP;Name=Pset_WasteTerminalTypeGullyTrap;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=ROOFDRAIN;Name=Pset_WasteTerminalTypeRoofDrain;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=WASTEDISPOSALUNIT;Name=Pset_WasteTerminalTypeWasteDisposalUnit;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=WASTETRAP;Name=Pset_WasteTerminalTypeWasteTrap;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="8cfb8f34-dec6-4f5f-9427-4032c2e48578">
              <Definitions />
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcElementQuantity" Parameters="Name=Qto_WasteTerminalBaseQuantities;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="618909bd-d20b-42db-b448-55b21e7f944d" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Drainage inlet." Parameters="PredefinedType=FLOORTRAP;Name=Inlet;Type=DRAINAGE;Flow=SINK" />
                <TemplateRule Description="Drainage outlet." Parameters="PredefinedType=FLOORTRAP;Name=Outlet;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Waste inlet." Parameters="PredefinedType=FLOORWASTE;Name=Inlet;Type=WASTE;Flow=SINK" />
                <TemplateRule Description="Waste outlet." Parameters="PredefinedType=FLOORWASTE;Name=Outlet;Type=WASTE;Flow=SOURCE" />
                <TemplateRule Description="Inlet." Parameters="PredefinedType=GULLYSUMP;Name=Inlet;Type=WASTE;Flow=SINK" />
                <TemplateRule Description="Outlet." Parameters="PredefinedType=GULLYSUMP;Name=Inlet;Type=WASTE;Flow=SOURCE" />
                <TemplateRule Description="Inlet." Parameters="PredefinedType=GULLYTRAP;Name=Inlet;Type=WASTE;Flow=SINK" />
                <TemplateRule Description="Outlet." Parameters="PredefinedType=GULLYTRAP;Name=Inlet;Type=WASTE;Flow=SOURCE" />
                <TemplateRule Description="Rainwater." Parameters="PredefinedType=ROOFDRAIN;Name=Outlet;Type=RAINWATER;Flow=SOURCE" />
                <TemplateRule Description="Inlet." Parameters="PredefinedType=WASTEDISPOSALUNIT;Name=Inlet;Type=WASTE;Flow=SINK" />
                <TemplateRule Description="Outlet." Parameters="PredefinedType=WASTEDISPOSALUNIT;Name=Outlet;Type=WASTE;Flow=SOURCE" />
                <TemplateRule Description="Inlet." Parameters="PredefinedType=WASTETRAP;Name=Inlet;Type=WASTE;Flow=SINK" />
                <TemplateRule Description="Outlet." Parameters="PredefinedType=WASTETRAP;Name=Outlet;Type=WASTE;Flow=SOURCE" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e1b71dc4-3425-44b2-ae97-c1082f078152" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="88b0e6f4-b406-4167-b309-a35699ee7935" name="Clearance Geometry">
              <Definitions />
              <Template ref="0fdc2380-9ef0-41e9-b0dc-f01fd2f77e6c" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="e6534855-e176-4d5a-bde5-8673ba218b67" applicableRootEntity="IfcPipeFitting">
          <Definitions />
          <Concepts>
            <Concept uuid="7720ce3c-7db3-428c-b417-d448665d3603" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="30c0ee3b-8923-4312-bc10-3ba71f876f67" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcPipeFittingType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="4e837592-0785-4df2-8777-4dc1e19f221a">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_PipeFittingOccurrence;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_PipeFittingPHistory;TemplateType=PSET_PERFORMANCEDRIVEN;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=BEND;Name=Pset_PipeFittingTypeBend;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_PipeFittingTypeCommon;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=JUNCTION;Name=Pset_PipeFittingTypeJunction;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="5ac385cc-883a-412b-b6ba-f06107489a88">
              <Definitions />
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcElementQuantity" Parameters="Name=Qto_PipeFittingBaseQuantities;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e1d626bd-88e4-4c66-9b5f-9335c1dc85ad" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="The flow inlet." Parameters="PredefinedType=BEND;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="The flow outlet." Parameters="PredefinedType=BEND;Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="The flow inlet." Parameters="PredefinedType=CONNECTOR;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="The flow outlet." Parameters="PredefinedType=CONNECTOR;Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="The flow outlet." Parameters="PredefinedType=ENTRY;Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="The flow inlet." Parameters="PredefinedType=EXIT;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="The flow inlet." Parameters="PredefinedType=JUNCTION;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="The left flow outlet." Parameters="PredefinedType=JUNCTION;Name=Outlet#1;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="The right flow outlet." Parameters="PredefinedType=JUNCTION;Name=Outlet#2;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="The flow inlet." Parameters="PredefinedType=OBSTRUCTION;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="The flow outlet." Parameters="PredefinedType=OBSTRUCTION;Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="9072e89b-e3ea-4e4b-91f1-532a060078ca" applicableRootEntity="IfcPipeFittingType">
          <Definitions />
          <Concepts>
            <Concept uuid="657e7b51-ea6f-4d93-ab6b-27bdfb43576e" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="6ee3bd42-07e8-41ca-a370-689e337a14b8" name="Property Sets for Types">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="d8ebd8b4-7c27-4896-9314-e9be5ffb4eeb">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="105738d6-84f0-483e-9761-34a208fe34dd" applicableRootEntity="IfcPipeSegment">
          <Definitions />
          <Concepts>
            <Concept uuid="deea7fef-1d62-4f32-ab8b-1cfc49b0e7ce" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a0326e52-1634-440c-a4c6-6ee52e4bd743" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcPipeSegmentType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="de64b79d-ae7e-4f53-9686-c4fcb326e7f6">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_PipeConnectionFlanged;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_PipeSegmentOccurrence;TemplateType=PSET_OCCURRENCEDRIVEN;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_PipeSegmentPHistory;TemplateType=PSET_PERFORMANCEDRIVEN;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_PipeSegmentTypeCommon;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=CULVERT;Name=Pset_PipeSegmentTypeCulvert;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=GUTTER;Name=Pset_PipeSegmentTypeGutter;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="83174017-9c62-4c17-8f76-624dd4a8713c">
              <Definitions />
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcElementQuantity" Parameters="Name=Qto_PipeSegmentBaseQuantities;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="088ca7a9-aa84-4e9d-8c9b-84323d22b4e3" name="Material">
              <Definitions />
              <Template ref="6aa01429-b566-4b36-875a-3162088a9831" />
              <Requirements>
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Material from which the casing is constructed." Parameters="Name=Casing;" />
                <TemplateRule Description="The outer coating, if applicable." Parameters="Name=Coating;" />
                <TemplateRule Description="The insulating wrapping, if applicable." Parameters="Name=Insulation;" />
                <TemplateRule Description="The inner lining, if applicable." Parameters="Name=Lining;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="006ad5be-bd51-4f0e-b4d0-87caf01b86b1" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Description="The flow inlet." Parameters="Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="The flow outlet." Parameters="Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="ae273d8d-d826-4452-a813-97fd10901873" name="Interference">
              <Definitions />
              <Template ref="300e62e0-5ecd-464c-9d12-0eb24671f8c7" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="0b3c7ed1-d742-42f6-987d-2d7cd04ed8f1" name="Axis Geometry">
              <Definitions />
              <Template ref="3bf716df-3990-4bfc-8045-9e4011c9b622" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Polylines must be used for all pipe segment paths." Parameters="RepresentationType=Curve3D;Geometry=IfcPolyline;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="77c6ef96-1987-46ab-9395-c37f27ffbba1" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Mapped representations must be used for when a pipe type is defined." Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
                <TemplateRule Description="Extruded solids may be used for when a pipe type is not defined." Parameters="RepresentationType=SweptSolid;Geometry=IfcExtrudedAreaSolid;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="5515488f-1c13-488e-a275-120aaabc7bce" applicableRootEntity="IfcPipeSegmentType">
          <Definitions />
          <Concepts>
            <Concept uuid="36b28570-c9d8-4c0c-85c5-d4283d8d2850" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="81fcdb5e-221c-4415-8a57-2628bd6c7429" name="Property Sets for Types">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="c821bc52-7b68-4d11-a227-a1af92faf216" name="Material Profile Set">
              <Definitions />
              <Template ref="427ac055-2a71-42c2-a423-71689fa75c59" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a0e6798d-3a38-4274-b940-d2046768b4bb">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="e8279631-19c0-4b39-8323-0e3f763d6e20" applicableRootEntity="IfcPump">
          <Definitions />
          <Concepts>
            <Concept uuid="d75adee2-af1d-4108-b57f-5c3d5b52eec3" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="2c1c3e72-4bd6-4ade-b75c-a30371ff8305" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcPumpType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a2984f04-81e5-4c25-a0c3-a0e2e78b1026" name="Property Sets">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="2136cfde-9b4d-428c-9c75-c4f8f2135599">
              <Definitions />
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcElementQuantity" Parameters="Name=Qto_PumpBaseQuantities;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="c8581ce5-1c53-4240-8449-7fd7756eb510" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Receives electrical power." Parameters="Name=Power;Type=ELECTRICAL;Flow=SINK" />
                <TemplateRule Description="Fluid entering pump." Parameters="Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Fluid leaving pump." Parameters="Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="0f92fd43-882e-40eb-800c-0fd2729cb697" name="Spatial Containment">
              <Definitions />
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="3f5dba90-32f8-48a8-9164-4ec97449d1b4" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="04d4f6ec-5f02-4559-aeb6-48f5faa81dca" applicableRootEntity="IfcPumpType">
          <Definitions />
          <Concepts>
            <Concept uuid="b857931e-661b-47bf-bd6b-c7451b1c393c" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="89c12f45-3bae-415d-951f-a097daca5dae" name="Property Sets for Types">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="4e819e6f-0888-4f43-9368-7b9daef3a3f0" name="Type-Based Ports">
              <Definitions />
              <Template ref="47b7b020-e010-40c8-b9e3-8234f1b5f563" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="ee90be0b-9a9d-40f4-84ab-561a43882348">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="6115dd15-44cf-4a66-ba89-bdb83a7193da" applicableRootEntity="IfcDistributionPort">
          <Definitions />
          <Concepts>
            <Concept uuid="f40d259f-cab4-4e34-83a3-26b610c3b351" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="1e602dc8-f176-4d7c-bed7-98d0baf6a796" name="Property Sets">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="PredefinedType=PIPE;Name=Pset_DistributionPortTypePipe;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="f6976abb-ad5b-451f-9299-d2b879c53901" name="Material Profile Set Usage">
              <Definitions />
              <Template ref="6aa01429-b566-4b36-875a-3162088a9831" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="The material and shape of the pipe connection." Parameters="Name=Pipe;Profile=IfcCircleHollowProfileDef;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="5d48b7e7-08a3-4a15-8518-78c306ae4b7d" name="Port Connectivity">
              <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 <i>IfcUnitaryEquipment</i> for an example.</li>



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

</li>
</ul>



<p>Figure 123 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 123 &mdash; Distribution port connectivity</p></td></tr>
</table>
 
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="714f0835-dcee-44a6-a2f2-230004ce3d1d" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="67160b1a-61ad-4464-91c7-8c8eb6a6d41a" name="Placement">
              <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>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e82a4e3a-709c-4bea-8c0b-d6d48ca99cdf">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="aceea76b-8b96-4f30-8652-ecb83f927666" applicableRootEntity="IfcDistributionSystem">
          <Definitions />
          <Concepts>
            <Concept uuid="ba48f430-889d-4c39-a7a9-e838168ce87e" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="7acc4c08-cd27-411a-832f-b1a0c7d89af6" name="Property Sets">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="PredefinedType=;Name=Pset_DistributionSystemCommon;" />
                <TemplateRule Parameters="PredefinedType=DOMESTICCOLDWATER;Name=Pset_DistributionSystemTypePlumbing;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="5f594b95-776f-49db-acad-57e001042259" name="Object Aggregation">
              <Definitions>
                <Definition>
                  <Body><![CDATA[Domestic water distribution systems may be subdivided into circuits indicating subsets with the same pressure requirements, such as within a range of building storeys.]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="02eefcc6-b26c-4f20-9c7c-c30ae74eb9a9" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="PredefinedType=;RelatedObjects=IfcDistributionCircuit;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="76e2b8c9-8e9c-49a7-9c11-73a7a690439a" name="Group Assignment">
              <Definitions />
              <Template ref="f567967f-5493-44d9-ac51-937c09ac2583" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Fixtures such as sinks, toilets, and urinals." Parameters="Type=IfcSanitaryTerminal;" />
                <TemplateRule Description="Pumps to regulate water pressure." Parameters="Type=IfcPump;" />
                <TemplateRule Description="Valves to adjust water flowrate or prevent backflow." Parameters="Type=IfcValve;" />
                <TemplateRule Description="Hot water heaters." Parameters="Type=IfcBoiler;" />
                <TemplateRule Description="Drains such as in floors or on site exterior." Parameters="Type=IfcWasteTerminal;" />
                <TemplateRule Description="Water filtration devices such as softeners or carbon filters." Parameters="Type=IfcFilter;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="4de29a06-a6b0-49c0-bbc8-044078b09402" applicableRootEntity="IfcBoiler">
          <Definitions />
          <Concepts>
            <Concept uuid="27e280d8-0cbf-4a77-8b6b-4c0079373e9a" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="cf0c716f-2424-4011-8c0d-8021c4bc2218" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcBoilerType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="9c11904f-0082-41aa-bcb9-9ab4a1c1ae40">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_BoilerPHistory;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_BoilerTypeCommon;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=STEAM;Name=Pset_BoilerTypeSteam;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=WATER;Name=Pset_BoilerTypeWater;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e631114e-0896-4845-9e6c-62d3642a3b54">
              <Definitions />
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcElementQuantity" Parameters="Name=Qto_BoilerBaseQuantities;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="79232444-33bc-4c3e-b079-7d783d2db2ac" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Gas inlet for burner." Parameters="PredefinedType=WATER;Name=Gas;Flow=SINK;Type=GAS;" />
                <TemplateRule Description="Exhaust sent to outside." Parameters="PredefinedType=WATER;Name=Exhaust;Type=EXHAUST;Flow=SOURCE" />
                <TemplateRule Description="Cold water to be heated." Parameters="PredefinedType=WATER;Name=ColdWater;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Hot water heated." Parameters="PredefinedType=WATER;Name=HotWater;Type=DOMESTICHOTWATER;Flow=SOURCE" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="82e8ac0d-22e7-48e5-b8c6-df63bbce7ece" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="7cd12c11-ad32-4f09-850c-bb445ba853c2" name="Clearance Geometry">
              <Definitions />
              <Template ref="0fdc2380-9ef0-41e9-b0dc-f01fd2f77e6c" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="354ce079-61b7-4c63-8844-a36f5edda98a" applicableRootEntity="IfcBoilerType">
          <Definitions />
          <Concepts>
            <Concept uuid="86592989-c5c6-4a65-a2ef-1810b56b9e7b" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="fec5e674-f43c-4ab4-8a3e-c0f495751993" name="Properties for Types">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="02345490-59e9-4c8e-87e1-59ea67a46b4a" name="Type-Based Ports">
              <Definitions />
              <Template ref="47b7b020-e010-40c8-b9e3-8234f1b5f563" />
              <Requirements>
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="83e019ee-ea55-4fc0-8034-ca6317719d21">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="f60b7258-ecb2-40bd-9ddb-83d33248ed13" applicableRootEntity="IfcFlowMeter">
          <Definitions />
          <Concepts>
            <Concept uuid="fe218c75-c185-4661-ab35-9ef68f12c40b" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="54b2e18c-0a69-4749-9910-d66b85c2896c" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcFlowMeterType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="7a6172b8-dc99-43c2-b129-40fe8a27e3ba">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_FlowMeterOccurrence;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_FlowMeterTypeCommon;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=ENERGYMETER;Name=Pset_FlowMeterTypeEnergyMeter;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="578cc0aa-0b72-4c47-8f90-9d53b94ee647" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Inlet from utility." Parameters="PredefinedType=GASMETER;Name=Inlet;Flow=SINK;Type=GAS;" />
                <TemplateRule Description="Measured use." Parameters="PredefinedType=GASMETER;Name=Outlet;Type=GAS;Flow=SOURCE" />
                <TemplateRule Description="Inlet from utility." Parameters="PredefinedType=WATERMETER;Name=Inlet;Flow=SINK;Type=DOMESTICCOLDWATER;" />
                <TemplateRule Description="Measured use." Parameters="PredefinedType=WATERMETER;Name=Outlet;Type=DOMESTICCOLDWATER;Flow=SOURCE" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="aceda0b4-b349-4f77-bc50-ca7aac10ed0f" name="Product Placement">
              <Definitions />
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <Requirements />
              <Rules>
                <TemplateRule Parameters="Type=IfcLocalPlacement;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="be153185-2761-42ea-abdb-8aec4b7517c2" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a48a3c6b-15cc-495d-b201-710e4e442a66" name="Spatial Containment">
              <Definitions />
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Electrical meters are typically placed next to a building on the exterior." Parameters="Structure=IfcSite;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="52c4d362-f23a-4d53-8eb3-3572badd2edf" applicableRootEntity="IfcFlowMeterType">
          <Definitions />
          <Concepts>
            <Concept uuid="e9097df5-9486-443b-9021-cbacf0a82d67" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="3919fed5-dc47-4004-8085-d63a9b6af1a7" name="Property Sets for Types">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="c9de8f3a-129e-4ecd-a94d-2dfa736e5ab0" name="Type-Based Ports">
              <Definitions />
              <Template ref="47b7b020-e010-40c8-b9e3-8234f1b5f563" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="b439a7f1-754c-4662-b8cb-6b5713fb0e1c">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="3ed24307-a7e1-47fe-ab4e-0610f988e973" applicableRootEntity="IfcValve">
          <Definitions />
          <Concepts>
            <Concept uuid="5f26baa2-ca16-4856-87b6-cf26a57b2624" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e9d5dfd9-a83e-4592-8dd3-81c109681fb3" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcValveType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="7adf30b6-09af-4da0-94b2-b561bcfd7381">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_ValvePHistory;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=AIRRELEASE;Name=Pset_ValveTypeAirRelease;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_ValveTypeCommon;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=DRAWOFFCOCK;Name=Pset_ValveTypeDrawOffCock;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=FAUCET;Name=Pset_ValveTypeFaucet;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=FLUSHING;Name=Pset_ValveTypeFlushing;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=GASTAP;Name=Pset_ValveTypeGasTap;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=ISOLATING;Name=Pset_ValveTypeIsolating;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=MIXING;Name=Pset_ValveTypeMixing;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=PRESSUREREDUCING;Name=Pset_ValveTypePressureReducing;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=PRESSURERELIEF;Name=Pset_ValveTypePressureRelief;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="f440a52e-60b6-4d91-bfb2-86b272242de4">
              <Definitions />
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcElementQuantity" Parameters="Name=Qto_ValveBaseQuantities;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="ed4655b8-b8c1-4b0d-9955-aec5ea54f601" name="Material">
              <Definitions />
              <Template ref="d96f7f7d-e742-4db8-9b5d-18a36a6df884" />
              <Requirements />
              <Rules>
                <TemplateRule Description="Material from which the casing is constructed." Parameters="Name=Casing;" />
                <TemplateRule Description="Material from which the operating mechanism (such as gate, globe, plug, needle, or clack) of the valve is constructed." Parameters="Name=Operation;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="19a527f5-4a2a-4da2-925a-0c7e72cb0d55" name="Connection">
              <Definitions />
              <Template ref="252a5fa6-cc5b-4d30-bd0c-35e22e336499" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Indicates an actuator operating on the valve." Parameters="Type=IfcActuator;Relation=IfcRelFlowControlElements;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e065e350-5f33-4101-95c3-6d106c2bcde9" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=AIRHANDLER;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=ANTIVACUUM;Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=CHANGEOVER;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Switched outgoing fluid." Parameters="PredefinedType=CHANGEOVER;Name=Outlet#1;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Switched outgoing fluid." Parameters="PredefinedType=CHANGEOVER;Name=Outlet#2;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=CHECK;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=CHECK;Name=Outlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=COMMISSIONING;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=COMMISSIONING;Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=DIVERTING;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=DIVERTING;Name=Outlet#1;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=DIVERTING;Name=Outlet#2;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=DOUBLECHECK;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=DOUBLECHECK;Name=Outlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=DOUBLEREGULATING;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=DOUBLEREGULATING;Name=Outlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=DRAWOFFCOCK;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=FAUCET;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=FLUSHING;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=FLUSHING;Name=Outlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=GASCOCK;Name=Inlet;Type=GAS;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=GASTAP;Name=Inlet;Type=GAS;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=ISOLATING;Name=Inlet;Type=GAS;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=ISOLATING;Name=Outlet;Type=GAS;Flow=SOURCE" />
                <TemplateRule Description="Incoming fluid to be mixed." Parameters="PredefinedType=MIXING;Name=Inlet#1;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Incoming fluid to be mixed." Parameters="PredefinedType=MIXING;Name=Inlet#2;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=MIXING;Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=PRESSUREREDUCING;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=PRESSUREREDUCING;Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=PRESSURERELIEF;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=REGULATING;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=REGULATING;Name=Inlet;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=SAFETYCUTOFF;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=SAFETYCUTOFF;Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=STEAMTRAP;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=STEAMTRAP;Name=Outlet;Type=NOTDEFINED;Flow=SOURCE" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=STOPCOCK;Name=Inlet;Type=NOTDEFINED;Flow=SINK" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="ea184271-f0cb-4dda-a7b1-f7b6a56b67ae" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="cb39f2cd-edaa-46df-8932-d9ea10264618" applicableRootEntity="IfcValveType">
          <Definitions />
          <Concepts>
            <Concept uuid="1bdf5286-4a80-45fb-acae-3613f1be814d" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="3e3175d2-4285-4cb5-9ebc-f539e1497509" name="Property Sets for Types">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="526e0094-6168-4fcb-b642-ba48fe8c41de" name="Type-Based Ports">
              <Definitions />
              <Template ref="47b7b020-e010-40c8-b9e3-8234f1b5f563" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="3b61be05-7c62-405a-9933-8cee1fedcd5d">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="159e04fd-f42f-46e1-8324-d03931b6c16e" applicableRootEntity="IfcWorkCalendar">
          <Definitions />
          <Concepts>
            <Concept uuid="3386cbd1-55de-45f4-88b5-96554afc23ec" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="ee506fb0-747d-4be5-8577-f1e3cfc9ba69" name="Object Nesting">
              <Definitions />
              <Template ref="38ca8788-5e47-411c-8294-d56f9e9a5691" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Utility providers may establish rate structures applicable at recurring periods defined within calendars." Parameters="Type=IfcCostSchedule;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="6503b9fc-1a92-4075-a9a9-59d9f14d509f" name="Calendar">
              <Definitions />
              <Template ref="2550551e-bf70-4c09-a0c7-9d838380ebfe" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="22d73ac2-0a65-488d-8fef-3d15aaea9ff9" name="Control Assignment">
              <Definitions />
              <Template ref="813e73fe-5641-4648-a680-8887cf4359f1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Indicates occupancy of a site, building, storey, or space.  The calendar is assigned to the occupant using IfcRelAssignsToActor." Parameters="Type=IfcSpatialStructureElement;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="404644bf-0a19-4b16-a06e-0d5f18d61386" applicableRootEntity="IfcSubContractResourceType">
          <Definitions />
          <Concepts>
            <Concept uuid="df461dcb-25e3-400d-ae9e-cc27d242a803" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="6e160ee4-a207-4443-8a75-919523306ec8" name="Resource Cost Rate">
              <Definitions />
              <Template ref="ff176f32-6953-48e7-8893-697ef422ab96" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="143d3230-f520-4851-8c53-aadae316b03c" applicableRootEntity="IfcSubContractResource">
          <Definitions />
          <Concepts>
            <Concept uuid="860d30fa-b010-4991-b0e2-9dbcb85b90dc" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="ef5634bb-5fcc-4d97-af0a-d5a157a66bff" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements />
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="cd19b996-971a-4eed-9628-6679b7c17865" name="Resource Cost">
              <Definitions />
              <Template ref="678111f9-565e-4c1d-b8c3-d218c4ccd056" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a49cd9d5-0868-47ac-80b5-4a99b7bd38c8" name="Resource Quantity">
              <Definitions />
              <Template ref="a057d708-23d4-47d2-a84d-89ffc93d8fe8" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="d38722b8-a5a1-46f2-b2f1-066313366d81" name="Resource Assignment">
              <Definitions />
              <Template ref="26529b88-e45d-4818-a1ce-02ba12901b7e" />
              <Requirements />
              <Rules>
                <TemplateRule Description="Indicates the particular vendor fulfilling a contract." Parameters="Type=IfcActor;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="90a15394-e63c-41a2-923b-ed9e014af86a" applicableRootEntity="IfcBuildingStorey">
          <Definitions />
          <Concepts>
            <Concept uuid="76e4d029-b8a7-491f-90b3-8d39a43af4f2" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="5cbd89de-1377-4e24-ae5a-069c55350a69">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_BuildingStoreyCommon;TemplateType=PSET_OCCURRENCEDRIVEN;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="cac15b2f-a3d6-406f-9508-9d0a059d0e72" name="Building Storey Elevation">
              <Definitions />
              <Template ref="433df61b-bc59-4afe-a358-9f366b3f5f27" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="4e4f3ce8-de11-40a8-ac5a-dfe3c6c6c298" name="Spatial Decomposition">
              <Definitions />
              <Template ref="667f8443-ecce-4a8d-a63f-931fab0453e0" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Spatial Parts=IfcSpace;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="087dda92-f2ee-4e3e-b7e9-bf17f2f24c87" applicableRootEntity="IfcSpace">
          <Definitions />
          <Concepts>
            <Concept uuid="b01e0705-e4e8-4120-921a-f0b50cb06898" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="20399f22-2daa-46d2-b9f7-0e94d32994b5" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcSpaceType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="0ea23c83-bc79-468b-80dc-4d5c19fd7214" name="Classification">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d4eda7e2-4011-459a-89d7-c651cde1965d" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="58cbfe87-0d23-4ae2-abf4-23002fe63369" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Spaces By Function" Parameters="Source=CSI;Name=OmniClass;Tokens=13-00 00 00;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="2d78b30c-d17d-4116-85dc-b4fc2c67718f" name="Property Sets">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="PredefinedType=;Name=Pset_SpaceOccupancyRequirements;" />
                <TemplateRule Parameters="PredefinedType=;Name=Pset_SpaceCommon;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="336f5627-fde6-4eda-98a8-bc411daf0655">
              <Definitions />
              <Template ref="6652398e-6579-4460-8cb4-26295acfacc7" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcElementQuantity" Parameters="Name=Qto_SpaceBaseQuantities;TemplateType=QTO_OCCURRENCEDRIVEN;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e3b0bf7f-8a02-4501-8e3c-dec0f0158dc7" name="Space Boundaries">
              <Definitions />
              <Template ref="6ae2d514-e2bd-4a24-b984-9b11725fc7db" />
              <Requirements />
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="143e8c48-86aa-45db-b048-11ffadb87aaa" name="Product Placement">
              <Definitions />
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcLocalPlacement;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="8fb87767-9a25-4b77-a641-620fa9d0b8ab" name="Footprint Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The 2D geometric representation of <em>IfcSpace</em> is defined
using the 'Curve2D' or 'GeometricCurveSet' geometry. The following
attribute values should be inserted</p>
<ul>
<li><em>IfcShapeRepresentation.RepresentationIdentifier</em> =
'FootPrint'.</li>
<li><em>IfcShapeRepresentation.RepresentationType</em> = 'Curve2D' or
'GeometricCurveSet' .</li>
</ul>
<p>The following constraints apply to the 2D representation:</p>
<ul>
<li><u>Profile</u>: <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>Figure 98 shows a two-dimensional bounded curve representing the
foot print of <em>IfcSpace</em>.</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></tr>
<tr><td><p class="figure">Figure 98 &mdash; Space footprint</p></td></tr>
</table>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="4f5777d7-68e9-459c-aa2c-46adf3e88d31" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=GeometricCurveSet;Geometry=IfcGeometricCurveSet;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="5f81ab84-9166-4c61-8df7-d3bd50a1f278" name="Body Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The standard geometric representation of <em>IfcSpace</em> is
defined using the swept area solid geometry. The following
 attribute values should be inserted</p>
<ul>
<li><em>IfcShapeRepresentation.RepresentationIdentifier</em> =
'Body'.</li>
<li><em>IfcShapeRepresentation.RepresentationType</em> =
'SweptSolid'.</li>
</ul>
<p>The following constraints apply to the standard
representation:</p>
<ul>
<li><u>Solid</u>: <em>IfcExtrudedAreaSolid</em> is required,</li>
<li><u>Profile</u>: <em>IfcArbitraryClosedProfileDef</em> is
required, <em>IfcArbitraryProfileDefWithVoids</em> shall be
supported.</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 99 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 99 &mdash; Space body swept solid</p></td></tr>

</table>



<p>The advanced geometric representation of <em>IfcSpace</em> is
defined using the swept area solid geometry that can be subjected
to a Boolean expression. The following attribute values should be
inserted.</p>
<ul>
<li><em>IfcShapeRepresentation.RepresentationIdentifier</em> =
'Body'.</li>
<li><em>IfcShapeRepresentation.RepresentationType</em> =
'Clipping'.</li>
</ul>
<p>The following additional constraints apply to the advanced
representation:</p>
<ul>
<li><u>Solid</u>: see standard geometric representation,</li>
<li><u>Profile</u>: see standard geometric representation,</li>
<li><u>Extrusion</u>: see standard geometric representation,</li>
<li><u>Boolean result</u>: The difference operation with the second 
operand being of type <em>IfcHalfSpaceSolid</em> (or one of its 
subtypes) shall be supported.</li>
</ul>



<p>Figure 100 shows an extrusion of an arbitrary profile definition into the swept area solid. The solid and an half space solid are operands of the Boolean result of <em>IfcSpace</em>.</p>

<table cellpadding="2" cellspacing="2">
  
<tr valign="top"><td align="left" valign="top"><img src="../../../figures/IfcSpace_Advanced-Layout1.gif" alt="fig2" border="0" height="300" width="400" /></td></tr>

  <tr><td><p class="figure">Figure 100 &mdash; Space body clipping</p></td></tr>

</table>



<p>The fallback advanced geometric representation of
<em>IfcSpace</em> is defined using the Brep solid geometry. It may 
be represented as a single or multiple instances of
<em>IfcFacetedBrep</em> or <em>IfcFacetedBrepWithVoids</em>. The Brep
representation allows for the representation of complex element
shape. 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> :
'Brep'</li>

</ul>



<blockquote class="note">NOTE&nbsp; In cases of inconsistency between the
geometric representation of the <em>IfcSpace</em> and the combined
geometric representations of the surrounding
<em>IfcRelSpaceBoundary</em>, the geometric representation of the
space should take priority over the geometric representation of the
surrounding space boundaries.</blockquote>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=SweptSolid;Geometry=IfcExtrudedAreaSolid;" />
                <TemplateRule Parameters="RepresentationType=Clipping;Geometry=IfcBooleanClippingResult;" />
                <TemplateRule Parameters="RepresentationType=Brep;Geometry=IfcFacetedBrep;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="2fba0ac4-c1a0-4cc0-b4b4-9f193cc321fe" applicableRootEntity="IfcElectricAppliance">
          <Definitions />
          <Concepts>
            <Concept uuid="7fd57402-5f61-4543-9b65-35720fe6d828" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="2b82fb28-00e2-4c71-98cd-e04ccf5b45f1" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcElectricApplianceType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="c3f5c036-351a-47d7-bc9f-fec17c208d74">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_ElectricAppliancePHistory;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_ElectricApplianceTypeCommon;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=DISHWASHER;Name=Pset_ElectricApplianceTypeDishwasher;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="1cdd3165-752a-42fa-8e14-27c495b85760" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Hot water used for washing dishes." Parameters="PredefinedType=DISHWASHER;Name=HotWater;Flow=SINK;Type=DOMESTICHOTWATER;" />
                <TemplateRule Description="Drainage from used water." Parameters="PredefinedType=DISHWASHER;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Cold water used for icemaking and/or drinking water." Parameters="PredefinedType=FRIDGE_FREEZER;Name=ColdWater;Flow=SINK;Type=DOMESTICCOLDWATER;" />
                <TemplateRule Description="Cold water used for washing." Parameters="PredefinedType=WASHINGMACHINE;Name=ColdWater;Flow=SINK;Type=DOMESTICCOLDWATER;" />
                <TemplateRule Description="Hot water used for washing." Parameters="PredefinedType=WASHINGMACHINE;Name=HotWater;Type=DOMESTICHOTWATER;Flow=SINK" />
                <TemplateRule Description="Drainage from used water." Parameters="PredefinedType=WASHINGMACHINE;Name=Drainage;Type=DRAINAGE;Flow=SOURCE" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="435c76fb-8cdd-47ca-b146-299861ead36b" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="7510b080-4e27-436c-bee2-7f11036ef0c8" applicableRootEntity="IfcElectricApplianceType">
          <Definitions />
          <Concepts>
            <Concept uuid="1545d5df-3a9c-49e7-a15a-3ae253b3a3fd" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="89bc1ffd-bd87-48c8-958c-f1d743aded18" name="Property Sets for Types">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="b10cf858-d377-4f4a-90b0-5d542a545834" name="Type-Based Ports">
              <Definitions />
              <Template ref="47b7b020-e010-40c8-b9e3-8234f1b5f563" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="73342789-eedb-4d7b-a445-4d71afd80349">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="a961e9bd-2824-4ccc-97d4-bf754d689e49" applicableRootEntity="IfcSolarDevice">
          <Definitions />
          <Concepts>
            <Concept uuid="236ee3a0-f26e-4810-9844-7284f1f34cf4" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="5d714e4e-0b10-42fe-b5bd-ffc0705adf21" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcSolarDeviceType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="68012abb-b74a-4cb2-88fa-d6c9b29ec074">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_SolarDeviceTypeCommon;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="271c59b2-76ab-4034-bcc4-21d1ce9302bb" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Incoming water." Parameters="PredefinedType=SOLARCOLLECTOR;Name=Inlet;Flow=SOURCE;Type=HEATING;" />
                <TemplateRule Description="Outgoing heated water." Parameters="PredefinedType=SOLARCOLLECTOR;Name=Outlet;Flow=SINK;Type=HEATING;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="d279ebe3-bc81-4a08-adf3-390ccffd89b5" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="43b9f790-af5f-4768-ab92-e872c77a17b7" applicableRootEntity="IfcFilterType">
          <Definitions />
          <Concepts>
            <Concept uuid="c40d9f78-97d7-4f34-867e-7d72f392c937" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="0e493cd1-e600-4cd2-8330-64e09c52ab91" name="Property Sets for Types">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="c22db873-b572-4e5b-a086-ad6ce7c05a4e" name="Type-Based Ports">
              <Definitions />
              <Template ref="47b7b020-e010-40c8-b9e3-8234f1b5f563" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="f8aa8325-6ce5-4556-91d8-e48fa5ddb7ce">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="82c629f1-588f-4562-b1a3-327c93d03bdc" applicableRootEntity="IfcFilter">
          <Definitions />
          <Concepts>
            <Concept uuid="e9cc6fa5-03bf-428f-8825-219dbfe0703a" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="471e6040-18a1-421d-ad53-5ab1a6058c5e" name="Object Typing">
              <Definitions />
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcFilterType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="7d81ee1e-ea2f-43a2-bdc1-27f3ed36a08f">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_FilterPHistory;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_FilterTypeCommon;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=WATERFILTER;Name=Pset_FilterTypeWaterFilter;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="688b0ef3-fc92-44cb-9081-d14cffeddde0" name="Port">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="bafc93b7-d0e2-42d8-84cf-5da20ee1480a" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d733605a-964d-460c-946b-d2634b770d46" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4663fdd6-8a02-4d4a-a462-8cc2dcc3f114" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=ODORFILTER;Name=Inlet;Flow=SINK;Type=EXHAUST;" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=ODORFILTER;Name=Outlet;Type=EXHAUST;Flow=SOURCE" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=STRAINER;Name=Inlet;Flow=SINK;Type=DRAINAGE;" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=STRAINER;Name=Outlet;Type=DRAINAGE;Flow=SOURCE" />
                <TemplateRule Description="Incoming fluid." Parameters="PredefinedType=WATERFILTER;Name=Inlet;Type=DOMESTICCOLDWATER;Flow=SINK" />
                <TemplateRule Description="Outgoing fluid." Parameters="PredefinedType=WATERFILTER;Name=Outlet;Type=DOMESTICCOLDWATER;Flow=SOURCE" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="6452c68b-4015-4cff-8507-f8a3f14226e1" name="Spatial Containment">
              <Definitions />
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="90f054ea-0159-4abc-ab9f-6c7c79aa9b42" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="343de6cf-8630-499b-be9a-4112f103ea8d" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="ff148758-fdd2-4939-ae5a-b7fcba2cafc3" applicableRootEntity="IfcWasteTerminalType">
          <Definitions />
          <Concepts>
            <Concept uuid="ac99289f-05a5-4a6a-9756-d8af4858efa6" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="5b1a9b1e-fe5b-4685-b54c-bcd2a1b93868" name="Type-Based Ports">
              <Definitions />
              <Template ref="47b7b020-e010-40c8-b9e3-8234f1b5f563" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="d5bb428d-30ef-4c0e-900a-c1d669a55a80" name="Body Geometry">
              <Definitions />
              <Template ref="3aec2d00-b4bb-476a-a821-fc22b895b531" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="77d82fb1-0942-4e24-ab26-37a3f569a450" name="Clearance Geometry">
              <Definitions />
              <Template ref="f1ebb0f3-96c9-4912-a475-d012a23f8179" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=SurfaceModel;Geometry=IfcFaceBasedSurfaceModel;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="7b51edfe-997e-4617-8fd0-fd2650d88749">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="6a520f1c-3a92-4290-bb41-c797e2ebd24a">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="4196a27b-5655-4151-86ae-83c9b280f1f5" applicableRootEntity="IfcPerformanceHistory">
          <Definitions />
          <Concepts>
            <Concept uuid="2ab5e816-a9cc-4177-8402-78aa4909b962" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements />
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="fd900bb7-8c87-4301-aaee-206cefeb920a" name="Property Sets for Performance">
              <Definitions />
              <Template ref="c32cc55b-afc7-439e-b821-e646e1b1dd1a" />
              <Requirements />
              <Rules>
                <TemplateRule Parameters="Name=Pset_DistributionPortPHistoryPipe;" />
                <TemplateRule Parameters="Name=Pset_UtilityConsumptionPHistory;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="8a8adc3a-fdf3-4bcd-b3b6-9d5ff4635a98" name="Control Assignment">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="813e73fe-5641-4648-a680-8887cf4359f1" />
              <Requirements />
              <Rules>
                <TemplateRule Description="A system or zone for which time-based system information is provided, such as overall usage of a water distribution system." Parameters="Type=IfcGroup;" />
                <TemplateRule Description="A building space, physical device, or port for which time-based information is provided, such as water usage at a meter along a piping network." Parameters="Type=IfcProduct;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="588fbc41-22df-477f-baab-0d6c4147da7c" applicableRootEntity="IfcSystemFurnitureElement">
          <Definitions />
          <Concepts>
            <Concept uuid="cf75862e-20dc-483c-9887-66f2b2229099" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="7aeeee5c-4818-4dc4-bfda-11b4c0fad156" name="Object Typing">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcSystemFurnitureElementType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e98e3a0b-7a0b-49b2-afb5-797f3ec23f3c">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="9fe8db61-b9a0-4520-95ef-1060f313af62" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=;Name=Pset_SystemFurnitureElementTypeCommon;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=PANEL;Name=Pset_SystemFurnitureElementTypePanel;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
                <TemplateRule RuleID="IfcPropertySet" Parameters="PredefinedType=WORKSURFACE;Name=Pset_SystemFurnitureElementTypeWorkSurface;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="5aaeddf2-141d-43cc-98d8-5bebf53fad28" name="Material Constituents">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Material constituents are necessary to determine the mounting or cutting method of plumbing fixtures.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="d96f7f7d-e742-4db8-9b5d-18a36a6df884" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="The finish, typically at visible aspects of the furniture." Parameters="Name=Finish;" />
                <TemplateRule Description="The frame from which the object is constructed." Parameters="Name=Frame;" />
                <TemplateRule Description="Finish hardware such as knobs or handles." Parameters="Name=Hardware;" />
                <TemplateRule Description="Padding such as cushions." Parameters="Name=Padding;" />
                <TemplateRule Description="Panels such as glass." Parameters="Name=Panel;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="f0bfc2ca-6f03-450f-ab30-f2935e4918ab" name="Product Placement">
              <Definitions />
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="dc2c22bf-ccb3-407f-9ad0-b648d0f3ad85" name="Body Geometry">
              <Definitions />
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="import" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="7a797802-ef75-47fe-9fbd-f823e3b56f9f" name="System furniture element types">
              <Definitions />
              <Template ref="02177093-f6a8-4d2f-9000-796c3b21b68c" />
              <Requirements>
                <Requirement applicability="import" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="a3dce995-5db8-4d28-acb3-692b138379dd" applicableRootEntity="IfcSystemFurnitureElementType">
          <Definitions />
          <Concepts>
            <Concept uuid="273ad4ac-b4c4-4c3d-ad95-c1000283869f" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e3b24857-a270-4d35-9581-617ee3459a51">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a81d7d27-a980-4ead-a073-cceb4c865316">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="5ac4e655-5b3f-43f4-a315-378c3a71a7f0" applicableRootEntity="IfcCostSchedule">
          <Definitions />
          <Concepts>
            <Concept uuid="3d1d6b94-83ca-470c-8fc4-94d7f245b00c" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="c18d6063-3be2-4600-95a5-d45d78372173" name="Object Nesting">
              <Definitions />
              <Template ref="38ca8788-5e47-411c-8294-d56f9e9a5691" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="191ee380-ad71-4d5f-aaa3-fe13080d7550" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcCostItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="6dac3938-9efd-48d5-b7bd-f19518d6223f" applicableRootEntity="IfcSolarDeviceType">
          <Definitions />
          <Concepts>
            <Concept uuid="1f5ffdae-731d-47cd-846f-1d0aef0b53e2" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="4a749837-14da-463a-a980-d047ebad6e55" name="Property Sets for Types">
              <Definitions />
              <Template ref="4be3312a-3199-492e-b204-cac2229a9ade" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="152f66ba-e7e5-4774-a6bf-8cd2eaf24ade" name="Type-Based Ports">
              <Definitions />
              <Template ref="47b7b020-e010-40c8-b9e3-8234f1b5f563" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="100853d7-35d1-4ea6-8672-063aea05cd76" name="Body Geometry">
              <Definitions />
              <Template ref="3aec2d00-b4bb-476a-a821-fc22b895b531" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=Brep;Geometry=IfcFacetedBrep;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="31604fe1-b381-4bd2-b7a8-a1307b2bdb8e" name="Clearance Geometry">
              <Definitions />
              <Template ref="f1ebb0f3-96c9-4912-a475-d012a23f8179" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=SurfaceModel;Geometry=IfcFaceBasedSurfaceModel;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="c8bc9f3c-c8ae-4b6c-a27a-7b9f32e3599b">
              <Definitions />
              <Template ref="4a224609-6578-4c75-afcf-8affa86e5ef2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7ce49269-77cb-4ebb-ad31-abb57cb4b30b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="d5eb5815-0a1c-4b93-9c18-1b2ee30af067" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="58263c80-e2bb-449a-9996-cd728d5bd98a" applicableRootEntity="IfcWallElementedCase">
          <Definitions />
          <Concepts>
            <Concept uuid="d55a0851-52a3-45d8-9395-66459249db1f" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="5bc87cb3-50f2-4992-8464-b6e79a94ca2e" name="Aggregation">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="02eefcc6-b26c-4f20-9c7c-c30ae74eb9a9" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Studs, sole plates, top plates." Parameters="PredefinedType=;RelatedObjects=IfcMember;" />
                <TemplateRule Description="Sheathing, panels, drywall." Parameters="PredefinedType=;RelatedObjects=IfcPlate;" />
                <TemplateRule Description="Insulation, other elements." Parameters="PredefinedType=;RelatedObjects=IfcBuildingElementPart;" />
                <TemplateRule Description="Lintels over doors or windows." Parameters="PredefinedType=;RelatedObjects=IfcBeam;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="3e4ef135-631d-4863-9ca5-5122b5184d36" name="Product Placement">
              <Definitions />
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="0cf5d041-1db2-41a2-ad24-67b9611fdd08" name="Axis Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="3bf716df-3990-4bfc-8045-9e4011c9b622" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=Curve2D;Geometry=IfcBoundedCurve;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="e2e2c7e4-b462-4172-ab1f-ab14f69e31be" name="Surface Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The surfacic geometric representation of
<em>IfcWallElementedCase</em> is defined using the 'Surface'
representation.</p>
<ul>
<li><em>RepresentationIdentifier</em> : 'Surface'</li>
<li><em>RepresentationType</em> : 'Surface3D'</li>
</ul>

<blockquote class="note">NOTE&nbsp; The 'Surface' can be used to define a
surfacic model of the building (e.g. for analytical purposes, or
for reduced Level of Detail representation). It could suppress
the geometric details of the parts in the
decomposition.</blockquote>

<blockquote class="note">NOTE&nbsp; It is invalid to exchange a 'Body' shape representation of an <em>IfcWallElementedCase</em>. The body geometry is defined by the parts within the decomposition.</blockquote>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="2e99de70-fb73-478f-9bca-4fedfdeb4ea5" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=Surface3D;Geometry=IfcBoundedSurface;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="d36ab266-e6e2-4fd6-9166-9d94fb0c44f4" name="Spatial Containment">
              <Definitions />
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Walls exterior to a building are contained within a site." Parameters="Structure=IfcSite;" />
                <TemplateRule Description="All walls within a building are contained within a building storey." Parameters="Structure=IfcBuildingStorey;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="73cf9e89-2958-44ba-98e2-36eab76c270d" applicableRootEntity="IfcSlabElementedCase">
          <Definitions />
          <Concepts>
            <Concept uuid="b5ee88f7-4f46-4b04-b6d4-f9f563089eed" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="8affb867-eb4b-46b8-90ba-2324f48e9018" name="Aggregation">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="02eefcc6-b26c-4f20-9c7c-c30ae74eb9a9" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Slabs may be aggregated into beams for joists." Parameters="PredefinedType=;RelatedObjects=IfcBeam;" />
                <TemplateRule Description="Slabs may be aggregated into plates for decking." Parameters="PredefinedType=;RelatedObjects=IfcPlate;" />
                <TemplateRule Description="Slabs may be aggregated into parts for other elements." Parameters="PredefinedType=;RelatedObjects=IfcBuildingElementPart;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="37e04e44-cef5-4c6a-86bf-21e20c9cfea7" name="Product Placement">
              <Definitions />
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="8d79deed-be5b-4c84-a6df-36e073047cb9" name="Surface Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The standard geometric representation of
<em>IfcSlabElementedCase</em> is defined using the following
multiple shape representations for its definition:</p>
<ul>
<li><u>Surface</u>: A three-dimensional surface being a subtype
of <em>IfcBoundedSurface</em> defining the reference surface for
the elemented slab. It maybe used as a simplified representation
directly at the elemented slab.</li>
</ul>
<blockquote class="note">NOTE&nbsp; It is invalid to exhange a 'Body' shape
representation of an <em>IfcSlabElementedCase</em>. The body
geometry is defined by the parts within the
decomposition.</blockquote>

<p>The surfacic geometric representation of
<em>IfcSlabElementedCase</em> is defined using the 'Surface'
representation.</p>
<ul>
<li><em>RepresentationIdentifier</em> : 'Surface'</li>
<li><em>RepresentationType</em> : 'Surface3D'</li>
</ul>
<blockquote class="note">NOTE&nbsp; The 'Surface' can be used to define a
surfacic model of the building (e.g. for analytical purposes, or
for reduced Level of Detail representation). It should suppress
the geometric details of the parts in the
decomposition.</blockquote>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="2e99de70-fb73-478f-9bca-4fedfdeb4ea5" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=Surface3D;Geometry=IfcBoundedSurface;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="29a83391-712d-4b47-9162-50cce3824f5b" name="Spatial Containment">
              <Definitions />
              <Template ref="d9a3f822-0014-4bc2-8d94-9d9067759045" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Elemented slabs are contained within the building storey supported by the slab." Parameters="Structure=IfcBuildingStorey;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="c7485822-c2ce-4dd1-9be0-55a0722c2dc4" applicableRootEntity="IfcMember">
          <Definitions />
          <Concepts>
            <Concept uuid="853effca-be2a-4422-9be8-554e7694535c" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="2374e635-da88-474e-a5f3-83f4997eb61c" name="Object Typing">
              <Definitions>
                <Definition>
                  <Body><![CDATA[]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcMemberType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="54107566-aac9-4ea2-b76e-d3910d4caf6a">
              <Definitions />
              <Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule RuleID="IfcPropertySet" Parameters="Name=Pset_MemberCommon;TemplateType=PSET_TYPEDRIVENOVERRIDE;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="78ae924c-c247-4a44-b99d-b9dd643b1cac" name="Material Profile Set">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The material of the <em>IfcMember</em> is defined by the
<em>IfcMaterialProfileSet</em> or as fallback by <em>IfcMaterial</em>, and it is attached either directly or at the <em>IfcMemberType</em>.</p>



<blockquote class="note">NOTE&nbsp; It is illegal to assign an
<em>IfcMaterialProfileSetUsage</em> to an <em>IfcMember</em>. Only 
the subtype <em>IfcMemberStandardCase</em> supports this 
concept.</blockquote>

]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="427ac055-2a71-42c2-a423-71689fa75c59" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="8b706f04-eddf-4909-bf40-a00c911709d0" name="Placement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The local placement for <em>IfcMember</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 given) to the local
placement of the same <em>IfcSpatialStructureElement</em>, which is
used in the <em>ContainedInStructure</em> inverse attribute, or to
a spatial structure element at a higher level, referenced by
that.</li>
<li>If the relative placement is not used, the absolute placement
is defined within the world coordinate system.</li>
</ul>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="6cf2324a-3a37-40ef-bdc5-02f1b769ddaf" name="Axis Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[
<p>The axis representation can be used to represent the system
length of a member that may extent the body length of the
member.</p>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="3bf716df-3990-4bfc-8045-9e4011c9b622" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Rep Identifier=Axis;Identifier=;RepresentationType=Curve3D;Type=;Geometry=IfcBoundedCurve;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="1406589a-a031-42fa-8bed-526ce3e37f86" name="Body Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The body representation of <em>IfcBeam</em> can be represented
using the representation types 'SweptSolid', 'Clipping',
'AdvancedSweptSolid', 'MappedRepresentation', 'SurfaceModel', and
'Brep'. The representation types 'SurfaceModel' and 'Brep' are
explained at <em>IfcBuildingElement</em>.</p>
<p><em>SweptSolid Representation Type</em></p>
<p>The following attribute values for the
<em>IfcShapeRepresentation</em> holding this geometric
representation shall be used:</p>
<ul>
<li><em>RepresentationIdentifier</em> : 'Body'</li>
<li><em>RepresentationType</em> : 'SweptSolid'</li>
</ul>
<p>The following additional constraints apply to the 'SweptSolid'
representation:</p>
<ul>
<li><u>Solid</u>: <em>IfcExtrudedAreaSolid</em>,
<em>IfcRevolvedAreaSolid</em> shall be supported</li>
<li><u>Profile</u>: all subtypes of <em>IfcProfileDef</em> (with
exception of <em>IfcArbitraryOpenProfileDef</em>) </li>
<li><u>Extrusion</u>: All extrusion directions shall be
supported.</li>
</ul>

<p>Figure 103 illustrates a 'SweptSolid' geometric representation.  There are no restrictions or conventions on
how to use the local placement (black), solid of extrusion placement (red) and profile placement (green).</p>

<table cellpadding="2" cellspacing="2">
<tr valign="top"><td align="left" valign="top"><img src="../../../figures/IfcMember_SweptSolid-01.png" alt="standard member" border="1" height="300" width="400"></td></tr>
<tr><td><p class="figure">Figure 103 &mdash; Member swept solid</p></td></tr>
</table>

<p><em>Clipping Representation Type</em></p>
<p>The following attribute values for the
<em>IfcShapeRepresentation</em> holding this geometric
representation shall be used:</p>
<ul>
<li><em>RepresentationIdentifier</em> : 'Body'</li>
<li><em>RepresentationType</em> : 'Clipping'</li>
</ul>
<p>The following constraints apply to the advanced
representation:</p>
<ul>
<li><u>Solid</u>: see 'SweptSolid' geometric representation</li>
<li><u>Profile</u>: see 'SweptSolid' geometric
representation</li>
<li><u>Extrusion</u>: see 'SweptSolid' geometric
representation</li>
<li><u>Boolean result</u>: The <em>IfcBooleanClippingResult</em>
shall be supported, allowing for Boolean differences between the
swept solid (here <em>IfcExtrudedAreaSolid</em>) and one or several
<em>IfcHalfSpaceSolid</em> (or its subtypes).</li>
</ul>

<p>Figure 104 illustrates a 'Clipping' geometric representation with use of <em>IfcBooleanClippingResult</em> between an <em>IfcExtrudedAreaSolid</em> and an <em>IfcHalfSpaceSolid</em> to create a clipped body.</p>

<table cellpadding="2" cellspacing="2">
<tr valign="top"><td align="left" valign="top"><img src="../../../figures/IfcMember_Clipping-01.png" alt="clipped member" border="0" height="300" width="400"></td></tr>
<tr><td><p class="figure">Figure 104 &mdash; Member clipping</p></td></tr>
</table>

<p><em>AdvancedSweptSolid Representation Type</em></p>
<p>The following attribute values for the
<em>IfcShapeRepresentation</em> holding this geometric
representation shall be used:</p>
<ul>
<li><em>RepresentationIdentifier</em> : 'Body'</li>
<li><em>RepresentationType</em> : 'AdvancedSweptSolid'</li>
</ul>
<p>The following additional constraints apply to the
'AdvancedSweptSolid' representation type:</p>
<ul>
<li><u>Solid</u>: <em>IfcSurfaceCurveSweptAreaSolid</em>,
<em>IfcFixedReferenceSweptAreaSolid</em>,
<em>IfcExtrudedAreaSolidTapered</em>,
<em>IfcRevolvedAreaSolidTapered</em> shall be supported.
<blockquote class="note">NOTE&nbsp; View definitions and implementer
agreements can further constrain the allowed swept solid
types.</blockquote>
</li>
<li><u>Profile</u>: see 'SweptSolid' geometric
representation</li>
<li><u>Extrusion</u>: not applicable</li>
</ul>
<p><em>MappedRepresentation Representation Type</em></p>
<p>The 'MappedRepresentation' representation type is supported as
it allows for reusing the geometry definition of the beam type at
all occurrences of the same type. The following attribute values
for the <em>IfcShapeRepresentation</em> holding this geometric
representation shall be used:</p>
<ul>
<li><em>RepresentationIdentifier</em> : 'Body'</li>
<li><em>RepresentationType</em> : 'MappedRepresentation'</li>
</ul>
<p>The same constraints, as given for the  'SweptSolid',
'Clipping', 'AdvancedSweptSolid', 'SurfaceModel' and 'Bre'
geometric representation, shall apply to the
<em>MappedRepresentation</em> of the
<em>IfcRepresentationMap</em>.</p>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=SweptSolid;Geometry=IfcExtrudedAreaSolid;" />
                <TemplateRule Parameters="RepresentationType=Clipping;Geometry=IfcBooleanClippingResult;" />
                <TemplateRule Parameters="RepresentationType=AdvancedSweptSolid;Geometry=IfcSweptAreaSolid;" />
                <TemplateRule Parameters="RepresentationType=SurfaceModel;Geometry=IfcFaceBasedSurfaceModel;" />
                <TemplateRule Parameters="RepresentationType=Brep;Geometry=IfcFacetedBrep;" />
                <TemplateRule Parameters="RepresentationType=MappedRepresentation;Geometry=IfcMappedItem;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="b3e501c9-26ea-4a8a-a20a-9290708b0811" applicableRootEntity="IfcSlabStandardCase">
          <Definitions />
          <Concepts>
            <Concept uuid="592115e4-112d-4e62-a289-5ab6687ef485" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="a4fbd90b-c398-4ec0-8a9c-b0730b2e88f6" name="Object Typing">
              <Definitions>
                <Definition>
                  <Body><![CDATA[
<p>The <em>IfcSlabStandardCase</em> defines in addition that the
<em>IfcSlabType</em> should have a unique <em>IfcMaterialLayerSet</em>,
that is referenced by the&nbsp;<em>IfcMaterialLayerSetUsage</em>
assigned to all occurrences of this <em>IfcSlabType</em>.</p>


<p>Figure 109 illustrates assignment of <em>IfcMaterialLayerSetUsage</em> and <em>IfcMaterialLayerSet</em> to the <em>IfcSlabStandardCase</em> as the slab occurrence and to the <em>IfcSlabType</em>. The same <em>IfcMaterialLayerSet</em> shall be shared by many occurrences of <em>IfcMaterialLayerSetUsage</em>. This relationship shall be consistent to the relationship between the <em>IfcSlabType</em> and the <em>IfcSlabStandardCase</em>.</p>


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

<tr><td width="610" align="left" valign="top"><img alt="Material layer set and usage" src=
"../../../figures/IfcSlab_MaterialUsage-01.png" height="220" width="501"></td></tr>
<tr><td><p class="figure">Figure 109 &mdash; Slab type definition</p></td></tr>

</table>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcSlabType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="775b3988-580c-4a0a-bea8-6b91a8239841" name="Material Layer Set Usage">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The material of the <em>IfcSlabStandardCase</em> is defined by
<em>IfcMaterialLayerSetUsage</em> and attached by the
<em>IfcRelAssociatesMaterial</em><em>.RelatingMaterial</em>. It is
accessible by the inverse <em>HasAssociations</em> relationship.
Multi-layer slabs can be represented by refering to several
<em>IfcMaterialLayer</em>'s within the <em>IfcMaterialLayerSet</em>
that is referenced from the
<em>IfcMaterialLayerSetUsage</em>.&nbsp;</p>
<p>Material information can also be given at the
<em>IfcSlabType</em>, defining the common attribute data for all
occurrences of the same type.&nbsp;It is then accessible by the
inverse <em>IsDefinedBy</em> relationship pointing to
<em>IfcSlabType.HasAssociations</em> and via
<em>IfcRelAssociatesMaterial.RelatingMaterial</em>. See <b>Type Use
Definition</b> for additional agreements for standard slabs.</p>

<p>Figure 110 illustrates slab material usage, where the following conventions shall be met:</p>
<ul>
<li>The reference coordinate system is the coordinate system established by the <em>IfcExtrudedAreaSolid.Position</em>.</small></li>
<li><small>The reference plane is the plane defined by the extruded profile of <em>IfcExtrudedAreaSolid.SweptSolid</em>. The <em>IfcMaterialLayerSetUsage.OffsetFromReferenceLine</em> is given as a distance from this plane.</li>
<li>The <em>IfcMaterialLayerSetUsage.DirectionSense</em> defines how the <em>IfcMaterialLayer</em>'s are assigned to the reference plane. POSITIVE means in direction to the positive z-axis of the reference coordinate system.</li>
<li>The <em>IfcMaterialLayerSetUsage.OffsetFromReferenceLine</em> is the distance parallel to the reference plane and always perpendicular to the base (XY) plane of the reference coordinate system. This is independent of a potential non-perpendicular extrusion given by <em>IfcExtrudedAreaSolid.ExtrudedDirection</em> &lt;&gt; 0.,0.,1. A positive value of <em>IfcMaterialLayerSetUsage.OffsetFromReferenceLine</em> would then point into the positive z-axis of the reference coordinate system.</li>
<li>The <em>Thickness</em> of each <em>IfcMaterialLayer</em> shall be the parallel distance (measured perpendicular to the base plane). The <em>TotalThickness</em> of the <em>IfcMaterialLayerSet</em> is the sum of all layer thicknesses and in case of a perpendicular extrusion identical with <em>IfcExtrudedAreaSolid.Depth</em></li>
<li>The <em>IfcMaterialLayerSetUsage.LayerSetDirection</em> is always AXIS3.</li>
</ul>

<table summary="material use definition for standard slabs" border="0" cellpadding="2" cellspacing="2">
<tr><td align="left" valign="top" width="610">
<img src="../../../figures/IfcMaterialLayerSetUsage_Slab-01.png" alt=
"slab material layer set" width="601" height="321" border="0">
</td></tr>
<tr><td align="left" valign="top" width="610">
<img src="../../../figures/IfcMaterialLayerSetUsage_RoofSlab-01.png" alt=
"roof slab material layer set" width="600" height="400" border=
"0"></td></tr>
<tr><td><p class="figure">Figure 110 &mdash; Slab material layers</p></td></tr>
</table>

]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="6d5fb86f-3f2d-49fb-9528-077855ddcc47" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="21a520a5-79d5-498e-870b-56d99d9034b2" name="Body Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Currently, the use of 'SweptSolid' and 'Clipping'
representations is supported. In addition the general
representation type 'BoundingBox' is allowed. The geometry use
definitions for 'BoundingBox', is explained at
<em>IfcBuildingElement</em>.</p>

<blockquote class="note">NOTE&nbsp; If the <em>IfcSlabStandardCase</em> is of type Landing
and is used within an <em>IfcStair</em> or <em>IfcRamp</em>, the
special agreements to handle stair and ramp geometry will also
affect the geometric representation of the
<em>IfcSlabStandardCase</em>.</blockquote>

<p><b>SweptSolid Representation</b></p>
<p>The following attribute values for the
<em>IfcShapeRepresentation</em> holding this geometric representation
shall be used for the 'SweptSolid' representation:</p>
<ul>
<li><em>RepresentationIdentifier</em> : 'Body'</li>
<li><em>RepresentationType</em> : 'SweptSolid'</li>
</ul>
<p>The following additional constraints apply to the swept solid
representation:</p>
<ul>
<li><u>Solid</u>: <em>IfcExtrudedAreaSolid</em> is required,</li>
<li><u>Profile</u>: <em>IfcArbitraryClosedProfileDef,
IfcRectangleProfileDef, IfcCircleProfileDef,
IfcEllipseProfileDef</em> shall be supported.</li>
<li><u>Extrusion</u>: The profile can be extruded perpendicularly
or non-perpendicularly to the plane of the swept profile.</li>
<li><u>Material</u>: The definition of the
<em>IfcMaterialLayerSetUsage</em>, particularly of the
<em>OffsetFromReferenceLine</em> and the
<em>ForLayerSet.TotalThickness</em>, has to be consistent to the
'SweptSolid' representation.</li>
</ul>

<p>Figure 111 illustrates a 'SweptSolid' geometric representation.</p>
<blockquote class="note">NOTE&nbsp; The following interpretation of dimension parameter applies for polygonal slabs (in ground floor view):
<ul>
<li><em>IfcArbitraryClosedProfileDef.OuterCurve</em>: closed bounded curve interpreted as area (or foot print) of the slab.</li>
</ul>
</blockquote>

<table cellpadding="2" cellspacing="2">
<tr valign="top"><td align="left" valign="top" width="420"><img src="../../../figures/IfcSlab_Standard-Layout1.gif" alt="standard slab" border="0" height="274" width="399"></td></tr>
<tr><td><p class="figure">Figure 111 &mdash; Slab body extrusion</p></td></tr>
</table>

<p><b>Clipping representation</b></p>
<p>The 'Clipping' geometric representation of
<em>IfcSlabStandardCase</em> is defined using the swept area geometry
with additional clippings applied. The following attribute values
for the <em>IfcShapeRepresentation</em> holding this geometric
representation shall be used:</p>
<ul>
<li><em>RepresentationIdentifier</em> : 'Body'</li>
<li><em>RepresentationType</em> : 'Clipping'</li>
</ul>
<p>The following constraints apply to the 'Clipping'
representation:</p>
<ul>
<li><u>Solid</u>: see 'SweptSolid' shape representation,</li>
<li><u>Profile</u>:&nbsp;see 'SweptSolid' shape
representation,</li>
<li><u>Extrusion</u>:&nbsp;see 'SweptSolid' shape
representation,</li>
<li><u>Material</u>:&nbsp;see 'SweptSolid' shape
representation,</li>
<li><u>Boolean result</u>: The <em>IfcBooleanClippingResult</em>
shall be supported, allowing for Boolean differences between the
swept solid (here <em>IfcExtrudedAreaSolid</em>) and one or several
<em>IfcHalfSpaceSolid</em>.</li>
</ul>

<p>Figure 112 illustrates a 'Clipping' geometric representation with definition of a roof slab using advanced geometric representation. The profile is extruded non-perpendicular and the slab body is clipped at the eave.</p>

<table cellpadding="2" cellspacing="2">
<tr valign="top"><td align="left" valign="top" width="420"><img src=
"../../../figures/IfcSlab_Advanced-Layout1.gif" alt="advanced slab" border=
"0" height="274" width="399"></td></tr>
<tr><td><p class="figure">Figure 112 &mdash; Slab body clipping</p></td></tr>
</table>

]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=SweptSolid;Geometry=IfcExtrudedAreaSolid;" />
                <TemplateRule Parameters="RepresentationType=Clipping;Geometry=IfcBooleanClippingResult;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="1940ca85-0683-471d-8e8d-065847121d75" applicableRootEntity="IfcWall">
          <Definitions />
          <Concepts>
            <Concept uuid="e8a6964d-b024-445e-a81c-1660fc0d8731" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="aa5ca9c3-403e-41a7-bbd4-4502b413dea8" name="Path Connectivity">
              <Definitions />
              <Template ref="50170395-87c6-492e-a6fc-9f5f840b114f" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Walls with equal or lower priority are connected at RelatedElement." Parameters="RelatedElement=IfcWall;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="7fc61825-c36b-43ab-ac72-3bf90650ced6" name="Voiding">
              <Definitions />
              <Template ref="b9005e79-b5c5-4c0b-9d86-046c21ad420d" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
              </Requirements>
              <Rules>
                <TemplateRule Description="Indicates a partial recess or full opening, which may or may not be filled by another element." Parameters="RelatedOpening=IfcOpeningElement;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="5039881d-b97f-49fd-8eb7-05b7ffdc2a5a" applicableRootEntity="IfcOpeningElement">
          <Definitions>
            <Definition>
              <Body><![CDATA[<p>Openings are required for plumbing design to determine placement of fixtures and piping.</p>]]></Body>
              <Links />
            </Definition>
          </Definitions>
          <Concepts>
            <Concept uuid="a57ede4c-713c-4df8-8f33-f65737fbb283" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="0ebd2185-df39-4b00-925b-b476b7cdea15" name="Placement">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Opening locations must be known for layout of plumbing fixtures and piping.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="cbe85b5f-7912-4a43-8bb7-1e63bf40b26d" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="f3daec31-2ebe-49b8-98b9-aae9d90aa1c7" name="Body Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>Opening geometry must be known for layout of plumbing fixtures and piping.</p>]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=SweptSolid;Geometry=IfcExtrudedAreaSolid;" />
                <TemplateRule Parameters="RepresentationType=Brep;Geometry=IfcFacetedBrep;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="cf52dc9d-2d60-4330-a34a-2218f0e84b5d" applicableRootEntity="IfcOpeningStandardCase">
          <Definitions />
          <Concepts />
        </ConceptRoot>
        <ConceptRoot uuid="8563a959-fd45-45e3-8f85-de28e74d1a31" applicableRootEntity="IfcWallStandardCase">
          <Definitions />
          <Concepts>
            <Concept uuid="2cdd9274-b94a-4bda-b80a-41bfbc95d63c" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="10268db8-146d-4f72-924e-16dd4cd8e682" name="Object Typing">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The <em>IfcWallType</em> should have a unique
 <em>IfcMaterialLayerSet</em>, that is referenced by
the <em>IfcMaterialLayerSetUsage</em> assigned to all
occurrences of this <em>IfcWallType</em>.</p>


<p>Figure 114 illustrates assignment of <em>IfcMaterialLayerSetUsage</em> and <em>IfcMaterialLayerSet</em> to the wall type and the wall occurrence.</p>


<table border="0" cellpadding="2" cellspacing="2">
<tr><td align="left" valign="top"><img alt="Material layer set and usage" src="../../../figures/IfcWallStandardCase_MaterialUsage-01.png" height="220" width="501"></td></tr>
<tr><td>
<p class="figure">Figure 114 &mdash; Wall Standard Object Typing</p></td></tr>
</table>

]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="35a2e10e-20df-40f4-ab2f-dacf0a6744f4" />
              <Requirements>
                <Requirement applicability="export" requirement="optional" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="optional" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="Type=IfcWallType;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="6e681750-70b1-49b1-b012-e8afb1ecef38" name="Material Layer Set Usage">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The material of the <em>IfcWallStandardCase</em> is defined by
<em>IfcMaterialLayerSetUsage</em> and attached by the
<em>IfcRelAssociatesMaterial</em><em>.RelatingMaterial</em>. It is
accessible by the inverse <em>HasAssociations</em> relationship.
Multi-layer walls can be represented by refering to several
<em>IfcMaterialLayer</em>'s within the <em>IfcMaterialLayerSet</em>
that is referenced from the
<em>IfcMaterialLayerSetUsage</em>.&nbsp;</p>
<p>Material information can also be given at the
<em>IfcWallType</em>, defining the common attribute data for all
occurrences of the same type.&nbsp;It is then accessible by the
inverse <em>IsDefinedBy</em> relationship pointing to
<em>IfcSlabType.HasAssociations</em> and via
<em>IfcRelAssociatesMaterial.RelatingMaterial</em>. See <b>Type Use
Definition</b> for additional agreements for standard slabs.</p>

<p>Figure 115 illustrates material layer usage, where the following conventions shall be met:</p>
<ul>
<li>The reference coordinate system is the local coordinate system established by the <em>ObjectPlacement</em> of the <em>IfcWallStandardCase</em>.</li>
<li>The reference axis is the axis defined by the <em>IfcShapeRepresentation</em> with <em>RepresentationType</em>='Axis' as one of the
<em>Representation.Representations</em> of the <em>IfcWallStandardCase</em>.</li>
<li>The <em>IfcMaterialLayerSetUsage.OffsetFromReferenceLine</em> is given as a distance from this axis.</li>
<li>The <em>IfcMaterialLayerSetUsage.OffsetFromReferenceLine</em> is the distance parallel to the reference axis and always within the base
(XY) plane of the reference coordinate system. A positve value of <em>IfcMaterialLayerSetUsage.OffsetFromReferenceLine</em> would
then point into the positive y-axis of the reference coordinate system.</li>
<li>The <em>IfcMaterialLayerSetUsage.DirectionSense</em> defines how the <em>IfcMaterialLayer</em>'s are assigned to the reference axis. POSITIVE means in direction to the positive y-axis of the reference coordinate system.</li>
<li>The <em>Thickness</em> of each <em>IfcMaterialLayer</em> is provided starting from the <em>OffsetFromReferenceLine</em> and in the direction given by <em>DirectionSense</em>. It is applied without any gap or overlap between two consecutive layers. The <em>TotalThickness</em> of the <em>IfcMaterialLayerSet</em> is the sum of all layer thicknesses.</li>
<li>The <em>IfcMaterialLayerSetUsage.LayerSetDirection</em> is always AXIS2.</li>
</ul>

<table border="0" cellpadding="2" cellspacing="2" summary="material use definition for wall slabs">
<tr><td align="left" valign="top" width="610"><img src="../../../figures/IfcMaterialLayerSetUsage_Wall-01.png" alt="roof slab material layer set" width="601" height="351" border="0"></td></tr>
<tr><td><p class="figure">Figure 115 &mdash; Wall material layers</p></td></tr>
</table>

]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="6d5fb86f-3f2d-49fb-9528-077855ddcc47" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="4309c819-b00d-4a37-8724-d2ee81362d3c" name="Axis Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The wall axis is represented by a two-dimensional open curve
within a particular shape representation. The wall axis is used to 
apply the material layer set usage parameter to the wall geometry.
</p>
<p>Figure 116 illustrates an axis representation for a straight wall. In case of a straight wall, the set of items shall
include a single geometric representation item of type <em>IfcPolyline</em> or <em>IfcTrimmedCurve</em> with the <em>BasisCurve</em> being an <em>IfcLine</em>. The <em>IfcPolyline</em> or <em>IfcTrimmedCurve</em> shall be parallel (here in a special case co-linear) to the x-axis
of the object coordinate system. The direction shall be identical to the direction of the x-axis.</p>


<p>Figure 117 illustrates an axis representation for a curved wall. In case of a curved wall, the set of items shall include
a single geometric representation item of type <em>IfcTrimmedCurve</em>. The curve shall have a <em>BasisCurve</em> of type <em>IfcCircle</em>. The tangent of the <em>IfcTrimmedCurve</em> shall be parallel at start to the x-axis of the object coordinate system. The direction shall be identical to the direction of the x-axis.</p>


<table cellpadding="2" cellspacing="2">
<tr>
<td align="left" valign="top"><img src="../../../figures/IfcWallStandard_StraigthWall_01-Layout1.gif" alt="straight wall axis" border="0" height="299" width="393"></td>
<td align="left" valign="top"><img src="../../../figures/IfcWallStandard_CurvedWall_01-Layout1.gif" alt="curved wall axis" border="0" height="299" width="393"></td>
</tr>
<tr>
<td width="393"><p class="figure">Figure 116 &mdash; Wall axis straight</p></td>
<td width="393"><p class="figure">Figure 117 &mdash; Wall axis curved</p></td>
</tr>
</table>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="3bf716df-3990-4bfc-8045-9e4011c9b622" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=Curve2D;Geometry=IfcBoundedCurve;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="6783f4f7-f3b1-458e-b384-a874cae5d3f7" name="Body Geometry">
              <Definitions>
                <Definition>
                  <Body><![CDATA[<p>The body representation of <em>IfcWallStandardCase</em> is
defined by using 'SweptSolid' representation for walls without
clippings or 'Clipping' representation for walls with clippings
(e.g. under sloped roof slabs).</p>
<p><em>SweptSolid Representation Type</em></p>
<p>The following attribute values for the
<em>IfcShapeRepresentation</em> holding this geometric
representation shall be used:</p>
<ul>
<li>RepresentationIdentifier : 'Body'</li>
<li>RepresentationType : 'SweptSolid'</li>
</ul>
<p>The following additional constraints apply to the 'SweptSolid'
representation:</p>
<ul>
<li><u>Solid</u>: <em>IfcExtrudedAreaSolid</em> is required,</li>
<li><u>Profile</u>: <em>IfcArbitraryClosedProfileDef</em> and
<em>IfcRectangleProfileDef</em> shall be supported.</li>
<li><u>Extrusion</u>: The profile shall be extruded vertically,
i.e., in the direction of the z-axis of the co-ordinate system of
the referred spatial structure element. It might be further
constraint to be in the direction of the global z-axis in
implementers agreements. The extrusion axis shall be perpendicular
to the swept profile, i.e. pointing into the direction of the
z-axis of the Position of the <em>IfcExtrudedAreaSolid</em>.</li>
</ul>

<p>The profile of a wall is described in the ground view and extruded vertically. The profile (also identical with the foot print of the wall) is defined by the <em>IfcArbitraryClosedProfileDef</em> (excluding its subtypes). The profile is given with all wall connections already resolved.</p>

<p>Figure 118 illustrates a body representation for a straight wall. In case of a straight wall, the two sides of the profile shall be parallel to the wall axis, that is, the wall has a single unchanged thickness.</p>

<p>Figure 119 illustrates a body representation for a curved wall. In case of a curved wall, the two sides of the profile shall be parallel (with defined offset) to the wall axis, that is, the wall has a single unchanged thickness.</p>

<table cellpadding="2" cellspacing="2">
<tr>
<td align="left" valign="top"><img src="../../../figures/IfcWallStandard_StraigthWall_02-Layout1.gif" alt="straight wall body" border="0" height="299" width="393"></td>
<td align="left" valign="top"><img src="../../../figures/IfcWallStandard_CurvedWall_02-Layout1.gif" alt="curved wall body" border="0" height="299" width="393"></td>
</tr>
<tr>
<td width="393"><p class="figure">Figure 118 &mdash; Wall body extrusion straight</p></td>
<td width="393"><p class="figure">Figure 119 &mdash; Wall body extrusion curved</p></td>
</tr>
</table>

<p><em>Clipping Representation Type</em></p>
<p>The following attribute values for the
<em>IfcShapeRepresentation</em> holding this geometric
representation shall be used:</p>
<ul>
<li><em>RepresentationIdentifier</em> : 'Body'</li>
<li><em>RepresentationType</em> : 'Clipping'</li>
</ul>
<p>The following constraints apply to the 'Clipping'
representation:</p>
<ul>
<li><u>Solid</u>: see standard geometric representation</li>
<li><u>Profile</u>: see standard geometric representation</li>
<li><u>Extrusion</u>: see standard geometric representation</li>
<li><u>Boolean result</u>: The <em>IfcBooleanClippingResult</em>
shall be supported, allowing for Boolean differences between the
swept solid (here <em>IfcExtrudedAreaSolid</em>) and one or several
<em>IfcHalfSpaceSolid</em> (or subtypes).</li>
</ul>

<p>Figure 120 illustrates a clipping for a straight wall using an <em>IfcPolygonalBoundedHalfSpace</em> as <em>SecondOperand</em> in
the <em>IfcBooleanClippingResult</em>.</p>

<p>Figure 121 illustrates a clipping for a curved wall using an <em>IfcHalfSpaceSolid</em> as <em>SecondOperand</em> in the
<em>IfcBooleanClippingResult</em>.</p>

<table cellpadding="2" cellspacing="2">
<tr>
<td><img src="../../../figures/IfcWallStandard_StraigthWall_03-Layout1.gif" alt="straight wall clipping" border="0" height="299" width="397"></td>
<td><img src="../../../figures/IfcWallStandard_CurvedWall_03-Layout1.gif" alt="curved wall clipping" border="0" height="300" width="400"></td>
</tr>
<tr>
<td width="397"><p class="figure">Figure 120 &mdash; Wall body clipping straight</p></td>
<td width="400"><p class="figure">Figure 121 &mdash; Wall body clipping curved</p></td>
</tr>
</table>
]]></Body>
                  <Links />
                </Definition>
              </Definitions>
              <Template ref="c446bd16-2de3-4b97-b34f-4446ac0badc2" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
              </Requirements>
              <Rules>
                <TemplateRule Parameters="RepresentationType=SweptSolid;Geometry=IfcExtrudedAreaSolid;" />
                <TemplateRule Parameters="RepresentationType=Clipping;Geometry=IfcBooleanClippingResult;" />
              </Rules>
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
        <ConceptRoot uuid="11de6e8e-164b-4662-8ac9-c6e48e917b82" applicableRootEntity="IfcSlab">
          <Definitions />
          <Concepts>
            <Concept uuid="4c04d51f-dad8-48ae-9f94-721af0a21abf" name="Identity">
              <Definitions />
              <Template ref="f7cb0a08-fee7-4cc0-85fe-43f6a6a0bce1" />
              <Requirements>
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="import" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
            <Concept uuid="c9a4bfe5-99bf-4038-8170-714fa8734c74" name="Voiding">
              <Definitions />
              <Template ref="b9005e79-b5c5-4c0b-9d86-046c21ad420d" />
              <Requirements>
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="7622cb30-2e1f-4d5c-9c6b-c27652e4f5e6" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="4a027b0c-a15a-4985-a052-7487457b5519" />
                <Requirement applicability="export" requirement="not relevant" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
                <Requirement applicability="export" requirement="mandatory" exchangeRequirement="c025e661-4684-4759-8fe0-338dfadaac5b" />
                <Requirement applicability="import" requirement="not relevant" exchangeRequirement="10b3b101-581f-496a-9778-0416363b8694" />
              </Requirements>
              <Rules />
              <SubConcepts />
              <Override>false</Override>
            </Concept>
          </Concepts>
        </ConceptRoot>
      </Roots>
    </ModelView>
  </Views>
</mvdXML>