私はいつもスキーマに対する妥当性検査がthinkosに対して非常に重要であると判断しており、XMLファイルを手書きで書く必要のあるプロジェクトの一部として検証チェックを組み込むことを望みます長さが100ライン。私のテキストエディタにはかなり良いCLI統合機能があるので、私はコマンドラインバリデーターを探しています。Windows用のコマンドラインXMLバリデータ
私はグーグル経由で任意の明確な勝者を見つけられませんでしたとき、私はここの周りの突きとsimilar questionを見つけましたが、ツールのどれもが非常に私のニーズが合うよう提案しません:
- libxml(cygwinの経由) - ん行番号を報告しない。私には分かりませんここでエラーがあります。
- msxml - コマンドラインから実行できません。
- xerces-c - Visual Cのコピーが必要ですか?
- - コマンドラインから実行できません。
- xmlstarlet - 不適切、それはプロジェクトの外部ですので、私はそれを変更することはできません - - 不十分なXSDのサポート*
(*スキーマは、私が置換グループを使用してに対して有効だ窒息するxmlstarlet
を引き起こします有効なファイルでさえも)
これは、既存のソリューションを探してPythonのハンマーに達することをあきらめてしまう問題を解決するポイントですが、PythonのXMLサポートはよく知られています。実際には、それを「悪名高い」に任せておきましょう。
私は元のツールを探しています。私の要件は非常に単純です:Win32で
- 実行する(Windows XP SP3は、具体的に)
- コマンドライン;私のエディタはstdin/-out/-err、引数、一時ファイルなどのあらゆる組み合わせで動作します。
- XSDのサポート(特に名前空間と置換グループ)
- はエラーが発生した行番号を報告します!
このようなツールはありますか?私はVisual Studioや友達(あまりにも肥満、IMO)をインストールする必要はありませんが、私はすでにCygwinとPythonの両方をインストールしている。
興味深い!私が使っているバージョンは20703で、これは "Element 'c'を生成します:この要素は期待されていません。(b)。"(ほとんど同じですが行番号がありません)私が掘り起こすことができるかどうか、そして古いバージョンを見なければならないでしょう。 –
後ろのステップと思われる...ライン番号が含まれているかどうかのオプションを追加したのだろうか?ドキュメントをチェックする価値があるかもしれません(多分--verbose)。または...それはおそらく、コンパイルされたものと関係があるでしょうか?私はそれを含んでいませんでしたが、私はそれを追加します(私はLinuxでも動いていますが、違いはありません):スレッドツリー出力プッシュリーダーパターンライターSAXv1 FTP HTTP DTDValid HTML Legacy C14NカタログXPath XPointer XインクルードIconv ISO8859X Unicode Regexps Automata ExprスキーマSchematronモジュールDebug Zlib – 13ren
Cygwinの 'libxml'のバージョンが同じオプションでコンパイルされているように見え、' --verbose'のようなオプションはないようです。私は公式サイトから2.6.27のWin32バイナリを入手してしまった。うまくいく。確かに後ろのステップ。 :-) –