Ich muss mit XML-Daten arbeiten, die ein Element namens enthalten. Dieses Element ist entweder leer () oder enthält einen Integer-Wert (10).
Wie bekomme ich für dieses Element eine passende XML Schema-Definition (XSD) hin? Ich habe folgendes ausprobiert:
Dies schlägt jedoch fehl, wenn das quantity-Element leer ist, da ein Leerstring kein Interger-Wert sein kann.
Hat jemand einen Hinweis, wie ich die XSD definieren muss? Oder bleibt mir hier nur die „Notlösung“ mit xs:string zu arbeiten?
nachdem ich deine Frage nochmal durchgelesen habe erscheint mir dein Problem etwas anders: du hast vorgegebene XML Dateien und musst ein Schema definieren, das dazu passt?
In dem Fall hilft dir meine Antwort natürlich nicht weiter, da das leere quantitiy Element in beiden Fällen nicht valide ist. In dem Fall würde ich dann auf String umsteigen, jedoch ein Pattern definieren, das nur Zahlen zulässt:
danke für die Antwort. Du hast das Problem genau richtig erkannt.
Ich bin mittlerweile bereits auf xs:string ausgewichen. Das mit der Restriktion auf Zahlen ist eine gute Idee und ich werde es in meiner XSD noch ergänzen.