Definition from IAI: The open profile IfcArbitraryOpenProfileDef defines an arbitrary two-dimensional open profile for the use within the swept surface geometry. It is given by an open boundary from with the surface can be constructed.
HISTORY: New entity in IFC Release 2x.
Informal proposition:
Illustration:
Table: Definition of arbitrary open profile definition
| # | Attribute | Type | Cardinality | Description | A | 
|---|---|---|---|---|---|
| 3 | Curve | IfcBoundedCurve | [1:1] | Open bounded curve defining the profile. | X | 
| Rule | Description | 
|---|---|
| WR11 | 
The profile type is a .CURVE., an open profile can only be used to define a swept surface.
Note6nbsp; This does not apply to the subtype IfcCentreLineProfileDef.  | 
| WR12 | The dimensionality of the curve shall be 2. | 
| # | Attribute | Type | Cardinality | Description | A | 
|---|---|---|---|---|---|
| IfcProfileDef | |||||
| 1 | ProfileType | IfcProfileTypeEnum | [1:1] | Defines the type of geometry into which this profile definition shall be resolved, either a curve or a surface area. In case of curve the profile should be referenced by a swept surface, in case of area the profile should be referenced by a swept area solid. | X | 
| 2 | ProfileName | - | This attribute is out of scope for this model view definition and shall not be set. | ||
| IfcArbitraryOpenProfileDef | |||||
| 3 | Curve | IfcBoundedCurve | [1:1] | Open bounded curve defining the profile. | X | 
 <xs:element name="IfcArbitraryOpenProfileDef" type="ifc:IfcArbitraryOpenProfileDef" substitutionGroup="ifc:IfcProfileDef" nillable="true"/>
 <xs:complexType name="IfcArbitraryOpenProfileDef">
  <xs:complexContent>
   <xs:extension base="ifc:IfcProfileDef">
    <xs:sequence>
     <xs:element name="Curve" type="ifc:IfcBoundedCurve" nillable="true"/>
    </xs:sequence>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
ENTITY IfcArbitraryOpenProfileDef
 SUPERTYPE OF(IfcCenterLineProfileDef)
 SUBTYPE OF (IfcProfileDef);
  Curve : IfcBoundedCurve;
 WHERE
  WR11 : ('IFCPROFILERESOURCE.IFCCENTERLINEPROFILEDEF' IN TYPEOF(SELF)) OR 
 (SELF\IfcProfileDef.ProfileType = IfcProfileTypeEnum.CURVE);
  WR12 : Curve.Dim = 2;
END_ENTITY;