IfcComplexPropertyTemplate

Natural language names
deKomplexes Merkmal - Vorlage
enComplex Property Template
frModèle de propriété complexe
Change log
ItemSPFXMLChangeDescription
IFC2x3 to IFC4
    IfcComplexPropertyTemplateADDED
Semantic definitions at the entity
Entity definition

The IfcComplexPropertyTemplate defines the template for all complex properties, either the IfcComplexProperty's, or the IfcPhysicalComplexQuantity's. The individual complex property templates are interpreted according to their Name attribute and and optional UsageName attribute.

HISTORY  New entity in IFC4.
Attribute definitions
#AttributeTypeCardinalityDescription C
5UsageNameIfcLabel[0:1] X
6TemplateTypeIfcComplexPropertyTemplateTypeEnum[0:1] X
7HasPropertyTemplatesIfcPropertyTemplateS[1:?] Reference to a set of property templates. It should only be provided, if the PropertyType is set to COMPLEX.X
Formal Propositions
RuleDescription
UniquePropertyNamesEvery individual IfcPropertyTemplate within the complex property template shall have a unique Name attribute value.
NoSelfReference
Inherited definitions from supertypes
Entity inheritance IfcPropertyTemplate IfcPropertyTemplateDefinition IfcPropertyDefinition IfcRoot
Attribute inheritance
#AttributeTypeCardinalityDescriptionC
IfcRoot
1GlobalIdIfcGloballyUniqueId[1:1] Assignment of a globally unique identifier within the entire software world. X
2OwnerHistoryIfcOwnerHistory[0:1] Assignment of the information about the current ownership of that object, including owning actor, application, local identification and information captured about the recent changes of the object,
NOTE  only the last modification in stored - either as addition, deletion or modification.
X
3NameIfcLabel[0:1] Optional name for use by the participating software systems or users. For some subtypes of IfcRoot the insertion of the Name attribute may be required. This would be enforced by a where rule. X
4DescriptionIfcText[0:1] Optional description, provided for exchanging informative comments.X
IfcPropertyDefinition
HasContextIfcRelDeclares
@RelatedDefinitions
S[0:1]X
HasAssociationsIfcRelAssociates
@RelatedObjects
S[0:?]Reference to the relationship IfcRelAssociates and thus to those externally defined concepts, like classifications, documents, or library information, which are associated to the property definition.X
IfcPropertyTemplateDefinition
IfcPropertyTemplate
PartOfComplexTemplateIfcComplexPropertyTemplate
@HasPropertyTemplates
S[0:?]Reference to a complex property templates. It should only be provided, if the PropertyType of the referenced complex property template is set to COMPLEX.X
PartOfPsetTemplateIfcPropertySetTemplate
@HasPropertyTemplates
S[0:?]Reference to the IfcPropertySetTemplate that defines the scope for the IfcPropertyTemplate. A single IfcPropertyTemplate can be defined within the scope of zero, one or many IfcPropertySetTemplate'.X
IfcComplexPropertyTemplate
5UsageNameIfcLabel[0:1] X
6TemplateTypeIfcComplexPropertyTemplateTypeEnum[0:1] X
7HasPropertyTemplatesIfcPropertyTemplateS[1:?] Reference to a set of property templates. It should only be provided, if the PropertyType is set to COMPLEX.X
Definitions applying to Common Use Definitions

Concept inheritance

#ConceptModel View
IfcRoot
Software IdentityCommon Use Definitions
Revision ControlCommon Use Definitions
Formal representations
XSD Specification
 <xs:element name="IfcComplexPropertyTemplate" type="ifc:IfcComplexPropertyTemplate" substitutionGroup="ifc:IfcPropertyTemplate" nillable="true"/>
 <xs:complexType name="IfcComplexPropertyTemplate">
  <xs:complexContent>
   <xs:extension base="ifc:IfcPropertyTemplate">
    <xs:sequence>
     <xs:element name="HasPropertyTemplates" nillable="true" minOccurs="0">
      <xs:complexType>
       <xs:sequence>
        <xs:element ref="ifc:IfcPropertyTemplate" maxOccurs="unbounded"/>
       </xs:sequence>
       <xs:attribute ref="ifc:itemType" fixed="ifc:IfcPropertyTemplate"/>
       <xs:attribute ref="ifc:cType" fixed="set"/>
       <xs:attribute ref="ifc:arraySize" use="optional"/>
      </xs:complexType>
     </xs:element>
    </xs:sequence>
    <xs:attribute name="UsageName" type="ifc:IfcLabel" use="optional"/>
    <xs:attribute name="TemplateType" type="ifc:IfcComplexPropertyTemplateTypeEnum" use="optional"/>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcComplexPropertyTemplate
 SUBTYPE OF (IfcPropertyTemplate);
  UsageName : OPTIONAL IfcLabel;
  TemplateType : OPTIONAL IfcComplexPropertyTemplateTypeEnum;
  HasPropertyTemplates : OPTIONAL SET [1:?] OF IfcPropertyTemplate;
 WHERE
  UniquePropertyNames : IfcUniquePropertyTemplateNames(HasPropertyTemplates);
  NoSelfReference : SIZEOF(QUERY(temp <* HasPropertyTemplates | SELF :=: temp)) = 0;
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

Link to this page  Link to this page