So fügen Sie eine bedingte Validierung in XSD hinzu:

Vorhandenes XSD-Snippet:

<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>

...

RequestType: Aufzählung von 2 Werten R1 und R2

FieldNameType: Aufzählung von 2 Werten F1 und F2

Jetzt möchte ich diese XSD ändern, um eine Validierung bereitzustellen, die:

Wenn RequestType = R1 ist, lauten die Namen der zulässigen Felder F1 und F2Wenn Anfragetyp = R2, dann sind die Feldnamen F1, F3 und F4 zulässig. (Möglicherweise ist eine neue Aufzählung erforderlich)

Wie kann ich solche Validierungen hinzufügen? Vielen Dank.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage