web-dev-qa-db-ja.com

XSDスキーマを検証しますか?

パートナーがデータを送信するフォーマットを記述するために、XMLスキーマ(XSD)を書いています。

また、作成したXSDスキーマファイルを検証できるツールを見つけるのに苦労しています。

これまでに見つけた最良の方法は、最初に入力XMLファイルの例を記述してから、XSDでthatを検証することです。しかし、それはベストプラクティスの操作のようには感じられません。

では、XMLスキーマを検証するにはどうすればよいですか?

33

これが短期的なものである場合は、 Stylus Studio のようなツールの評価版を使用できます。

長期的なメンテナンスの場合は、スタイラス、または Oxygen または Altova などのXMLスキーマエディターの購入を検討してください。

ソース言語を指定しませんでしたが、Javaまたは.Netでスキーマバリデーターを記述するコードはほんの数行です。

12
lavinio

W3Cには http://www.w3.org/2001/03/webdata/xsv にXMLスキーマのオンライン検証ツールがあります。 W3CはXMLスキーマ仕様のソースであるため、そのバリデーターは信頼できるはずです。

13
Matt Lavin

Java SDKには、 xjc と呼ばれる標準ツールが付属しています。このツールは、スキーマを解析するクラスを生成します。このコードを使用して、パートナーの入力を検証できます。

参照: http://www.Java2s.com/Tutorial/Java/0440__XML/ThexjcTool.htm

7
Pierre
cd /the/dir/with/your/schema
curl -O https://www.w3.org/2012/04/XMLSchema.xsd
xmllint.exe --noout --schema XMLSchema.xsd <your schema>

* nix(Windowsのgit-bashまたは同様のものを含む)では、スキーマが有効であれば$? == 0 そうしないと $? == 1。同等のPowershellがいくつかあると確信しています...

これは、@AlexanderKjällのコメントと、他の場所にある@lavinioの回答に対するものです。私は自分のコメントを追加して、@AlexanderKjällがこれを回答として追加する必要があると述べました。ただし(少なくとも私にとっては)、リモートファイルURIを使用しても機能しないため、完全に正しくありませんでした。そして私の答え。あなたがこれに賛成票を投じるならば、あなたは彼らのコメントに賛成票を投じてください。

2
HankCa

では、XMLスキーマ(XSD)を検証するにはどうすればよいですか?

あなたが尋ねる質問は良いものです。 「羽ばたく」だけでは困ります。ウィキペディアの記事から XMLスキーマエディター(強調鉱山)

[W3C XMLスキーマ]標準は用途が広く、継承や型の作成などのプログラミング概念を可能にしますが複雑です規格自体は非常に技術的であり、3つの異なる部分で公開されているため、大量にコミットしないと理解しにくい時間

では、W3C XMLスキーマ標準の複雑さを考えると、作成したスキーマがその標準に準拠していることをどのようにして確認できますか?同じウィキペディアの記事から:

XSD標準で作業するときにユーザーが直面する問題は、グラフィカル編集ツールを使用することで軽減できます。 XMLスキーマの編集には任意のテキストベースのエディターを使用できますが、グラフィカルエディターには利点があります。ドキュメントの構造をグラフィカルに表示し、検証サポート、入力ヘルパー、その他の便利な機能を使用して編集できるようにします。

ウィキペディアの記事の下部には、「フリーソフトウェア」としてライセンスされているXMLスキーマエディターのリストがあります。

1
DavidRR