2016-05-02 18 views
0

Ich habe eine XSD, die ein Element "Passwort" definiert. Ich möchte dort jeden Charakter zulassen. Derzeit habe ich das Element als xs:string definiert, und der Benutzer muss entweder die Zeichenfolge (z. B. myP&amp;ssword) umgehen oder es in ein CDATA-Tag einschließen (z. B. <![CDATA[myP&ssword]]>).Wie definieren Sie einen CDATA-Typ in XSD, damit Benutzer keine Zeichen oder das Zeichen "<! [CDATA" verwenden müssen?

Gibt es eine Möglichkeit, ein XSD zu definieren, so dass es keinen dieser beiden erfordert, aber bei der Validierung nicht fehlschlägt?

XSD Element:

<xs:element name="password" type="xs:string" /> 

XML, die den Fehler wirft:

<password>myP&ssword</password> 

Ist das möglich?

Antwort

1

Nein, das ist nicht möglich. Das Schema kann Regeln spezifizieren, die definieren, ob ein XML-Dokument in Bezug auf diese Regeln gültig ist, aber es erfordert immer noch, dass das Dokument wohlgeformt ist.

Aus dem XML-Schema recommendation:

Any application that consumes well-formed XML can use the formalism defined here to express syntactic, structural and value constraints applicable to its document instances.