CybOXProject / schemas

CybOX Schemas and Schema Development
42 stars 17 forks source link

Choice implemented in a non-standard way for NetworkFlowObj:NetflowV9DataRecordType #410

Open rpiazza opened 8 years ago

rpiazza commented 8 years ago

Why were the inner xs:sequences used?

<xs:complexType name="NetflowV9DataRecordType">
           <xs:annotation>
        <xs:documentation>A Data FlowSet is one or more records, of the same type, that are grouped together in an Export Packet. Each record is either a Flow Data Record or an Options Data Record previously defined by a Template Record or an Options Template Record. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
    </xs:annotation>
    <xs:choice minOccurs="0" maxOccurs="1">
        <xs:annotation>
            <xs:documentation/>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="Flow_Data_Record" type="NetFlowObj:FlowDataRecordType" minOccurs="0" maxOccurs="unbounded">
                <xs:annotation>
                    <xs:documentation>Specifies a Flow Data Record, which corresponds to a FieldType defined in the Template Record. Each one will have multiple values associated with it.</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
        <xs:sequence>
            <xs:element name="Options_Data_Record" type="NetFlowObj:OptionsDataRecordType" minOccurs="0" maxOccurs="unbounded">
                <xs:annotation>
                    <xs:documentation>Specifies an Options Data Record, which Corresponds to a previously defined Options Template Record.</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:choice>
</xs:complexType>