Jak dodać walidację warunkową w XSD:

Istniejący fragment kodu XSD:

<xs:element name="searchcriteria">
   <xs:complexType>
     <xs:sequence>  
       <xs:element ref="filter" 
                   minOccurs="0" 
                   maxOccurs="unbounded" />
     </xs:sequence>
     <xs:attribute name="Request" 
                   type="RequestType" />
   </xs:complexType>
 </xs:element>  


<xs:element name="filter">
   <xs:complexType>
     <xs:sequence>
       <xs:element ref="filter" 
                   minOccurs="0" 
                   maxOccurs="unbounded" />
     </xs:sequence>
     <xs:attribute name="FieldName" 
                   type="FieldNameType" />
    </xs:complexType>
 </xs:element>

...

Typ żądania: wyliczenie 2 wartości R1 i R2

FieldNameType: Wyliczenie 2 wartości F1 i F2

Teraz chcę zmodyfikować ten XSD, aby zapewnić walidację, która:

Gdy RequestType = R1, nazwy pól Alowed Field to F1 i F2Gdy typ żądania = R2, to dozwolone są nazwy pól F1, F3 i F4. (Może być wymagane nowe wyliczenie)

Jak mogę dodać takie walidacje? Dzięki.

questionAnswers(1)

yourAnswerToTheQuestion