<xs:element name="Pipe">
<xs:annotation>
<xs:documentation>Each Pipe within a Pipes collection element will have a unique "name" attribute.</xs:documentation>
<xs:documentation>The pipe type is determined by the existance of one of the following elements: CircPipe, ElliPipe or RectPipe.</xs:documentation>
<xs:documentation>The "startRef and "endRef" attributes reference Struct "name" values.</xs:documentation>
<xs:documentation>The start and end invert elevations for the pipe are defined in the Invert elements of referenced structures.</xs:documentation>
<xs:documentation>Since a struct may have more than one Invert element, the Invert "pipeRef" attribute is used to select the correct invert element.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:choice>
<xs:element ref="CircPipe" />
<xs:element ref="EggPipe" />
<xs:element ref="ElliPipe" />
<xs:element ref="RectPipe" />
<xs:element ref="Channel" />
</xs:choice>
<xs:element ref="PipeFlow" minOccurs="0" />
<xs:element ref="Center" minOccurs="0" />
<xs:element ref="Feature" minOccurs="0" maxOccurs="unbounded" />
<!-- <Center> point of the Pipe is the point of center on the curved pipe arc. If this optional element is specified, then the pipe starts at refStart, passes through the <Center> point, and end at refEnd. -->
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="refEnd" type="structNameRef" use="required" />
<xs:attribute name="refStart" type="structNameRef" use="required" />
<xs:attribute name="desc" type="xs:string" />
<xs:attribute name="length" type="xs:double" />
<xs:attribute name="oID" type="xs:string" />
<xs:attribute name="slope" type="xs:double" />
<xs:attribute name="state" type="stateType" />
</xs:complexType>
</xs:element>
|