IfcDerivedUnit

Natural language names
Abgeleitete Einheit
Derived Unit
Unité dérivée
Semantic definitions at the entity
Entity definition
NOTE  Definition according to ISO/CD 10303-41:1992
A derived unit is an expression of units.
EXAMPLE  Newton per square millimetre is a derived unit.
NOTE  Corresponding ISO 10303 name: derived_unit, please refer to ISO/IS 10303-41 for the final definition of the formal standard.
HISTORY  New entity in IFC1.5.1.
Attribute definitions
#AttributeTypeCardinalityDescription G
1ElementsIfcDerivedUnitElementS[1:?] The group of units and their exponents that define the derived unit.X
2UnitTypeIfcDerivedUnitEnum Name of the derived unit chosen from an enumeration of derived unit types for use in IFC models.X
3UserDefinedTypeIfcLabel? X
Dimensions
:=IfcDeriveDimensionalExponents(Elements)
IfcDimensionalExponentsDimensional exponents derived using the function IfcDerivedDimensionalExponents using (SELF) as the input value. X
Formal Propositions
RuleDescription
WR1Units as such shall not be re-defined as derived units.
WR2When attribute UnitType has enumeration value USERDEFINED then attribute UserDefinedType shall also have a value.
Inherited definitions from supertypes
Entity inheritance
Attribute inheritance
#AttributeTypeCardinalityDescriptionG
IfcDerivedUnit
1ElementsIfcDerivedUnitElementS[1:?] The group of units and their exponents that define the derived unit.X
2UnitTypeIfcDerivedUnitEnum Name of the derived unit chosen from an enumeration of derived unit types for use in IFC models.X
3UserDefinedTypeIfcLabel? X
Dimensions
:=IfcDeriveDimensionalExponents(Elements)
IfcDimensionalExponentsDimensional exponents derived using the function IfcDerivedDimensionalExponents using (SELF) as the input value. X
Formal representations
XML Specification
 <xs:element name="IfcDerivedUnit" type="ifc:IfcDerivedUnit" substitutionGroup="ifc:Entity" nillable="true"/>
 <xs:complexType name="IfcDerivedUnit">
  <xs:complexContent>
   <xs:extension base="ifc:Entity">
    <xs:sequence>
     <xs:element name="Elements">
      <xs:complexType>
       <xs:sequence>
        <xs:element ref="ifc:IfcDerivedUnitElement" maxOccurs="unbounded"/>
       </xs:sequence>
       <xs:attribute ref="ifc:itemType" fixed="ifc:IfcDerivedUnitElement"/>
       <xs:attribute ref="ifc:cType" fixed="set"/>
       <xs:attribute ref="ifc:arraySize" use="optional"/>
      </xs:complexType>
     </xs:element>
    </xs:sequence>
    <xs:attribute name="UnitType" type="ifc:IfcDerivedUnitEnum" use="optional"/>
    <xs:attribute name="UserDefinedType" type="ifc:IfcLabel" use="optional"/>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcDerivedUnit;
  Elements : SET [1:?] OF IfcDerivedUnitElement;
  UnitType : IfcDerivedUnitEnum;
  UserDefinedType : OPTIONAL IfcLabel;
 DERIVE
  Dimensions : IfcDimensionalExponents := IfcDeriveDimensionalExponents(Elements);
 WHERE
  WR1 : (SIZEOF (Elements) > 1) OR ((SIZEOF (Elements) = 1) AND (Elements[1].Exponent <> 1 ));
  WR2 : (UnitType <> IfcDerivedUnitEnum.USERDEFINED) OR
((UnitType = IfcDerivedUnitEnum.USERDEFINED) AND
(EXISTS(SELF.UserDefinedType)));
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

References  References: IfcUnit

Link to this page  Link to this page