xsv 検証するファイル [スキーマのファイル...]
xsv -o 結果出力ファイル 検証するファイル [スキーマのファイル...]
結果の出力がXML形式なので、上記のように結果をファイルに出力させてブラウザで見るのが見やすいでしょう。
スキーマのファイルの指定は、検証するXML文書内に schemaLocation または noNamespaceSchemaLocation の指定があれば必要ありません(指定しても問題はありません)。
xsv letter.xml
xsv -o result.xml letter.xml
xsv -s "C:\Program Files\XSV\xsv.xsl" -o result.xml letter.xml
HTMLに変換する際、若干情報量が減っているので注意しましょう。 HTMLのメッセージでよくわからない場合には、元のtreeを読んでみることをお勧めします。
XSVで、何も表示されずに終了したり、以下のエラーが出たりする場合があります。
UnicodeError: ASCII decoding error: ordinal not in range(128)
このような場合、検証しようとしているファイルが日本語の名前のフォルダ (あるいはその下位のフォルダ)に入っていないか確認してみてください。 該当する場合、 D:\XML といった半角英数字だけの場所に移してから再度実行してみてください (Thanks 澤くん)。
XSVは、与えられたXML文書が妥当な文書、つまり、スキーマに違反していない文書かどうかを検証するものです。 スキーマ自体にエラーがある場合には、スキーマとして指定されている文書がスキーマでない(notASchema)というエラーになります。 このとき、最終的に「スキーマファイルが開けない」というエラーになりますが、 ファイル自体が見つけられないわけではありませんので注意してください。
検証しているXML文書と、スキーマの記述に矛盾があります。 XML文書でスキーマに書かれていない要素を使っていないか、 elementがsequence,allなどの子要素になっているか、 確認してみてください。