0

サードパーティによって作成された複数のファイルをDTDに対して検証する必要があります。ファイルにdtd宣言がなく、所有者ではないためこれを変更できません。DTDを個別に提供することにより、dom4jを使用してファイルを検証する方法はありますか?

ありがとう

4

1 に答える 1

0

いつでも DTD をスキーマに変換し (たとえば、trangを使用)、各ドキュメントのスキーマに対してメモリ内検証を実行できます。

そのためには、変換されたスキーマを使用してスキーマを作成javax.xml.validation.ValidationHandlerし、それを DOM4J にフィードしますSAXWriter

別のオプションはもちろん

  1. 各ドキュメントを検証せずに DOM4J に解析するDocument
  2. DefaultDocumentType解析されたドキュメントにDOM4j を追加します
  3. ドキュメントを一時文字列バッファに書き込みます
  4. もう一度解析しますが、今度は検証を行いますSAXReader
于 2012-10-01T16:41:55.473 に答える