XSD に対して XML ドキュメントを検証していますが、ドキュメントの失敗の原因となっているノードを削除したいと考えています。
SaxParseException には、プログラムでノードを削除するために使用できる障害に関する情報が含まれていないように見えるという問題に直面しています。
SaxParseException から要素を削除するために使用できる要素への参照を取得する方法はありますか?
ここで回答を参照してください: xsd 検証に失敗した無効な xml ファイルの要素を取得する方法
あなたがやろうとしていることは、一般的なケースでは安全ではないことに注意してください。簡単な反例として、X
親で少なくとも 1 回出現する必要がある整数型の要素を取り上げます。文字列値を入れると、検証に失敗するようになりました。これを削除すると、ドキュメントは minOccurs 制約に違反します。
要素を削除して最初から検証をやり直すこともできますが、非常に長いループに陥り、良い結果が得られない可能性があります。