5.1.3.46 IfcSimplePropertyTemplate

Modèle de propriété simple
Einfaches Merkmal - Vorlage

The IfcSimplePropertyTemplate defines the template for all dynamically extensible properties, either the subtypes of IfcSimpleProperty, or the subtypes of IfcPhysicalSimpleQuantity. The individual property templates are interpreted according to their Name attribute and may have a predefined template type, property units, and property measure types. The correct interpretation of the attributes:

is determined by the TemplateType. The attributes Enumerators and Expression only apply to instances of IfcSimplePropertyTemplate having a particular TemplateType. The TemplateType also controls, which subtype of either IfcSimpleProperty or IfcPhysicalSimpleQuantity shall be used for property occurrences corresponding to this template.

HISTORY  New entity in IFC4.

Relationship use definition

The IfcSimplePropertyTemplate is part of the set of templates included in the IfcPropertySetTemplate. The template can be accessed throught the inverse attribute PartOfPsetTemplate The IfcPropertySetTemplate may define one or several instances of IfcPropertySet (or IfcElementQuantity). The definition assignment is established by the objectified relationship IfcRelDefinesByTemplate as shown in Figure 100.

There is no direct link between an IfcSimplePropertyTemplate and a subtype of either IfcSimpleProperty or IfcPhysicalSimpleQuantity. The definition relationship between the template and the individual properties (or quantities) is established by the Name attributes.

NOTE  Constraints at IfcPropertySetTemplate and IfcPropertySet (and IfcElementQuantity) guarantee that the Name attributes of included property templates and individual properties are unique.
IfcSimplePropertyTemplate figure 1

Figure 100 — Property template relationships


XSD Specification:

 <xs:element name="IfcSimplePropertyTemplate" type="ifc:IfcSimplePropertyTemplate" substitutionGroup="ifc:IfcPropertyTemplate" nillable="true"/>
 <xs:complexType name="IfcSimplePropertyTemplate">
  <xs:complexContent>
   <xs:extension base="ifc:IfcPropertyTemplate">
    <xs:sequence>
     <xs:element name="Enumerators" type="ifc:IfcPropertyEnumeration" nillable="true" minOccurs="0"/>
     <xs:element name="PrimaryUnit" nillable="true" minOccurs="0">
      <xs:complexType>
       <xs:group ref="ifc:IfcUnit"/>
      </xs:complexType>
     </xs:element>
     <xs:element name="SecondaryUnit" nillable="true" minOccurs="0">
      <xs:complexType>
       <xs:group ref="ifc:IfcUnit"/>
      </xs:complexType>
     </xs:element>
    </xs:sequence>
    <xs:attribute name="TemplateType" type="ifc:IfcSimplePropertyTemplateTypeEnum" use="optional"/>
    <xs:attribute name="PrimaryMeasureType" type="ifc:IfcLabel" use="optional"/>
    <xs:attribute name="SecondaryMeasureType" type="ifc:IfcLabel" use="optional"/>
    <xs:attribute name="Expression" type="ifc:IfcLabel" use="optional"/>
    <xs:attribute name="AccessState" type="ifc:IfcStateEnum" use="optional"/>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>

EXPRESS Specification:

ENTITY IfcSimplePropertyTemplate
SUBTYPE OF IfcPropertyTemplate;
TemplateType : OPTIONAL IfcSimplePropertyTemplateTypeEnum;
PrimaryMeasureType : OPTIONAL IfcLabel;
SecondaryMeasureType : OPTIONAL IfcLabel;
Enumerators : OPTIONAL IfcPropertyEnumeration;
PrimaryUnit : OPTIONAL IfcUnit;
SecondaryUnit : OPTIONAL IfcUnit;
Expression : OPTIONAL IfcLabel;
AccessState : OPTIONAL IfcStateEnum;
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

Attribute Definitions:

TemplateType : Property type defining whether the property template defines a property with a single value, a bounded value, a list value, a table value, an enumerated value, or a reference value. Or the quantity type defining whether the template defines a quantity with a length, area, volume, weight or time value.
NOTE  the value of this property determines the correct use of the PrimaryUnit, SecondaryUnit, PrimaryDataType, SecondaryDataType, and Expression attributes.
PrimaryMeasureType : Primary measure type assigned to the definition of the property. It should be provided, if the PropertyType is set to:
  • P_SINGLEVALUE: determining the measure type of IfcPropertySingleValue.NominalValue
  • P_ENUMERATEDVALUE: determining the measure type of IfcPropertyEnumeratedValue.EnumerationValues
  • P_BOUNDEDVALUE: determining the measure type of IfcPropertyBoundedValue.LowerBoundValue
  • P_LISTVALUE: determining the measure type of IfcPropertyListValue.ListValues
  • P_TABLEVALUE: determining the measure type of IfcPropertyTableValue.DefiningValues
  • P_REFERENCEVALUE: determining the measure type of IfcPropertyTableValue.PropertyReference
NOTE  The value range of the measure type is within the select type IfcValue for all PropertyType's with the exeption of P_REFERENCEVALUE. Here it is within the select type IfcObjectReferenceSelect.
SecondaryMeasureType : Secondary measure type assigned to the definition of the property. It should be provided, if the PropertyType is set to:
  • P_BOUNDEDVALUE: determining the measure type of IfcPropertyBoundedValue.UpperBoundValue
  • P_TABLEVALUE: determining the measure type of IfcPropertyTableValue.DefinedValues
The value range of the measure type is within the select type IfcValue for all PropertyType's with the exeption of P_ENUMERATEDVALUE. Here it is the comma delimited list of enumerators.
NOTE  The measure type of IfcPropertyEnumeration.EnumerationValues is provided as PrimaryDataType.
Enumerators : Name of the property enumeration, and list of all valid enumerators being selectable values, assigned to the definition of the property. This attribute shall only be provided, if the PropertyType is set to:
  • P_ENUMERATEDVALUE
PrimaryUnit : Primary unit assigned to the definition of the property. It should be provided, if the PropertyType is set to:
  • P_SINGLEVALUE: determining the IfcPropertySingleValue.Unit
  • P_ENUMERATEDVALUE: determining the IfcPropertyEnumeration.Unit
  • P_BOUNDEDVALUE: determining the IfcPropertyBoundedValue.Unit
  • P_LISTVALUE: determining the IfcPropertyListValue.Unit
  • P_TABLEVALUE: determining the IfcPropertyTableValue.DefiningUnit
SecondaryUnit : Secondary unit assigned to the definition of the property. It should be provided, if the PropertyType is set to:
  • P_TABLEVALUE: determining the IfcPropertyTableValue.DefinedUnit
Expression : The expression used to store additional information for the property template depending on the PropertyType. It should the following definitions, if the PropertyType is set to:
  • P_TABLEVALUE: the expression that could be evaluated to define the correlation between the defining values and the defined values.
  • Q_LENGTH, Q_AREA, Q_VOLUME, Q_COUNT, Q_WEIGTH, Q_TIME: the formula to be used to calculate the quantity
NOTE  No value shall be asserted if the PropertyType is not listed above.
AccessState : Information about the access state of the property. It determines whether a property be viewed and/or modified by any receiving application without specific knowledge of it.

Attribute use definition for IfcStateEnum
  • READWRITE: Properties of this template are readable and writable. They may be viewed and modified by users of any application. These are typical informational properties set by a user.
  • READONLY: Properties of this template are read-only. They may be viewed but not modified by users of any application. (Applications may generate such values). These are typical automatically generated properties that should be displayed only, but not written back.
  • LOCKED: Properties of this template are locked. They may only be accessed by the owning application (the publisher of the property set template). These are typically application depended, internal properties that should not be published.
  • READWRITELOCKED: Properties of this template are locked, readable, and writable. They may only be accessed by the owning application.
  • READONLYLOCKED: Properties of this template are locked and read-only. They may only be accessed by the owning application.

Inheritance Graph:

ENTITY IfcSimplePropertyTemplate
ENTITY IfcRoot
GlobalId : IfcGloballyUniqueId;
OwnerHistory : OPTIONAL IfcOwnerHistory;
Name : OPTIONAL IfcLabel;
Description : OPTIONAL IfcText;
ENTITY IfcPropertyDefinition
INVERSE
HasContext : SET [0:1] OF IfcRelDeclares FOR RelatedDefinitions;
HasAssociations : SET OF IfcRelAssociates FOR RelatedObjects;
ENTITY IfcPropertyTemplateDefinition
ENTITY IfcPropertyTemplate
INVERSE
PartOfComplexTemplate : SET OF IfcComplexPropertyTemplate FOR HasPropertyTemplates;
PartOfPsetTemplate : SET OF IfcPropertySetTemplate FOR HasPropertyTemplates;
ENTITY IfcSimplePropertyTemplate
TemplateType : OPTIONAL IfcSimplePropertyTemplateTypeEnum;
PrimaryMeasureType : OPTIONAL IfcLabel;
SecondaryMeasureType : OPTIONAL IfcLabel;
Enumerators : OPTIONAL IfcPropertyEnumeration;
PrimaryUnit : OPTIONAL IfcUnit;
SecondaryUnit : OPTIONAL IfcUnit;
Expression : OPTIONAL IfcLabel;
AccessState : OPTIONAL IfcStateEnum;
END_ENTITY;

Examples:

Link to this page  Link to this page