The project provides a directory of object types and property templates contained within using declaration relationships.
NOTE The actual object occurrences used within the context of a project, such as walls, beams, air outlets, are assigned to a spatial hierarchy that is linked to the project using the aggregation hierarchy. See concept Spatial Decomposition for linking a spatial structure to the project.
HISTORY New concept template enabled by schema enhancements in IFC4.
Figure 276 illustrates an instance diagram.
Figure 276 — Project Declaration |
<?xml version="1.0" encoding="utf-8"?>
<ConceptTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" uuid="ab1e2cfd-9f21-4f4a-b6af-cc26d84e45ac" name="Project Declaration" applicableSchema="IFC4" applicableEntity="IfcContext">
<Rules>
<AttributeRule AttributeName="Declares">
<EntityRules>
<EntityRule EntityName="IfcRelDeclares">
<AttributeRules>
<AttributeRule RuleID="Type" AttributeName="RelatedDefinitions" />
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Phase">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="ObjectType">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="LongName">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</Rules>
<SubTemplates>
<ConceptTemplate uuid="d6eddceb-c102-4247-8ec0-24e7d4c5da9b" name="Project Template Definitions" applicableSchema="IFC4" applicableEntity="IfcContext">
<Rules>
<AttributeRule AttributeName="Declares">
<EntityRules>
<EntityRule EntityName="IfcRelDeclares">
<AttributeRules>
<AttributeRule RuleID="Type" AttributeName="RelatedDefinitions">
<EntityRules>
<EntityRule EntityName="IfcPropertySetTemplate">
<AttributeRules>
<AttributeRule AttributeName="TemplateType">
<EntityRules>
<EntityRule EntityName="IfcPropertySetTemplateTypeEnum" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="ApplicableEntity">
<EntityRules>
<EntityRule EntityName="IfcIdentifier" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="HasPropertyTemplates">
<EntityRules>
<EntityRule EntityName="IfcSimplePropertyTemplate">
<AttributeRules>
<AttributeRule AttributeName="TemplateType">
<EntityRules>
<EntityRule EntityName="IfcSimplePropertyTemplateTypeEnum" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="PrimaryMeasureType">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="SecondaryMeasureType">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Enumerators">
<EntityRules>
<EntityRule EntityName="IfcPropertyEnumeration">
<AttributeRules>
<AttributeRule AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="EnumerationValues">
<EntityRules>
<EntityRule EntityName="IfcValue" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="AccessState">
<EntityRules>
<EntityRule EntityName="IfcStateEnum" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="PrimaryUnit">
<EntityRules>
<EntityRule EntityName="IfcUnit" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="SecondaryUnit">
<EntityRules>
<EntityRule EntityName="IfcUnit" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Expression">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Phase">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="ObjectType">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="LongName">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
<ConceptTemplate uuid="634e27f7-7edb-4e22-b8cc-25f1cdc765ce" name="Project Type Definitions" applicableSchema="IFC4" applicableEntity="IfcContext">
<Rules>
<AttributeRule AttributeName="Declares">
<EntityRules>
<EntityRule EntityName="IfcRelDeclares">
<AttributeRules>
<AttributeRule RuleID="RelatedTypes" AttributeName="RelatedDefinitions">
<EntityRules>
<EntityRule EntityName="IfcTypeObject" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Phase">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="ObjectType">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="LongName">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>
</SubTemplates>
</ConceptTemplate>