<xs:complexType name="IfcBSplineSurface" abstract="true">
<xs:complexContent>
<xs:extension base="ifc:IfcBoundedSurface">
<xs:sequence>
<xs:element name="ControlPointsList">
<xs:complexType>
<xs:sequence>
<xs:element ref="ifc:IfcCartesianPoint" minOccurs="4" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute ref="ifc:itemType" fixed="ifc:IfcCartesianPoint"/>
<xs:attribute ref="ifc:cType" fixed="list list"/>
<xs:attribute ref="ifc:arraySize" use="optional"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="UDegree" type="xs:long" use="optional"/>
<xs:attribute name="VDegree" type="xs:long" use="optional"/>
<xs:attribute name="SurfaceForm" type="ifc:IfcBSplineSurfaceForm" use="optional"/>
<xs:attribute name="UClosed" type="ifc:logical" use="optional"/>
<xs:attribute name="VClosed" type="ifc:logical" use="optional"/>
<xs:attribute name="SelfIntersect" type="ifc:logical" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> |