私のプロジェクトの 1 つでは、XML を使用したデータ入力をサポートしています。XML はユーザー入力ファイルであるため、有効な XML である可能性が高くなりますが、セマンティック エラー (文字列の長さが許容制限を超えるなど) があります。
現在、javax.xml.validation.Validator を使用して指定されたドキュメントを検証していますが、1 つの要素にセマンティック エラーがある場合でも失敗します。私が望むのは、XML 全体をスキップするのではなく、そのような要素をスキップできるようにすることです。このようなエラーをスキップできる Validator のエラー ハンドラーを設定できることは理解していますが、これは、アプリケーション コードでセマンティック チェックを実行する必要があることを意味します。
私が考えることができる 1 つの解決策は、XSD を解析して一連の制限 (タイムスタンプ形式、長さチェックなど) を取得し、XML の解析中にこれらの制限をチェックすることです。この問題を解決するエレガントで明確な方法はありますか?