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 IfcProjectLibrary).
The classification information can either be provided as an external classification reference, only refering to an IfcClassification, that holds the classification name, edition and a resource location, or to an IfcClassification containing the IfcClassificationReference's as the classification notations, and thereby allowing to include the classification system structure within the exchange structure.
Figure 122 illustrates an instance diagram.
Figure 122 — Project Classification Information |
<?xml version="1.0"?>
<ConceptTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" uuid="818ca5a3-4574-49b1-9951-ae7bad5c3341" name="Project Classification Information" applicableSchema="IFC4" applicableEntity="IfcContext">
<Rules>
<AttributeRule AttributeName="HasAssociations">
<EntityRules>
<EntityRule EntityName="IfcRelAssociatesClassification">
<AttributeRules>
<AttributeRule AttributeName="RelatingClassification">
<EntityRules>
<EntityRule EntityName="IfcClassification">
<AttributeRules>
<AttributeRule RuleID="ClassificationSource" AttributeName="Source">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule RuleID="ClassificationName" AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule RuleID="ReferenceTokens" AttributeName="ReferenceTokens">
<EntityRules>
<EntityRule EntityName="IfcIdentifier" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="HasReferences">
<EntityRules>
<EntityRule EntityName="IfcClassificationReference">
<AttributeRules>
<AttributeRule AttributeName="HasReferences">
<EntityRules>
<EntityRule EntityName="IfcClassificationReference" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Identification">
<EntityRules>
<EntityRule EntityName="IfcIdentifier" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Name">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Description">
<EntityRules>
<EntityRule EntityName="IfcText" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Sort">
<EntityRules>
<EntityRule EntityName="IfcIdentifier" />
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="Phase">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="ObjectType">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
<AttributeRule AttributeName="LongName">
<EntityRules>
<EntityRule EntityName="IfcLabel" />
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>