問題タブ [xml-validation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
12181 参照

xml - XSD を使用して XML を検証しています ... ただし、拡張性は維持できます

多分それは私ですが、XSDを持っている場合

このドキュメントのスキーマを定義する

EmailAddress などの別の要素を追加し、順序を混同すると、検証に失敗します。

ドキュメントに EmailAddress を追加して、オプションとしてマークしたくありません。

ドキュメントが満たす必要のある最低限の要件を検証する XSD が必要なだけです。

これを行う方法はありますか?

編集:

xs:anyより多くの要素を許可するために内部で使用できることを以下に指摘した marc_s はxs:sequence、残念ながら、要素の順序を維持する必要があります。

xs:allまたは、要素の順序を強制しない whichを使用できますが、残念ながら、xs:anyその中に配置することはできません。

0 投票する
1 に答える
2246 参照

xml - libxmlとXSDファイルを使用したPerlでのXMLの検証

perlスクリプトにオンラインからXxmlファイルを取得させ、XSDファイルに従って検証させようとしています。

これを行うためのコードは次のとおりです。

これを実行すると、「要素のcropdataコンテンツチェックに失敗しました」という不可解なエラーが発生します(cropdataは私の非ルートタグの最初のものです)。

私のXSDファイルでは、エントリは次のようになります。

<xs:element..../次に、「 >」の束、そして:

perlデバッガーに入ると、行"my $doc = $parser->parse_string($file);"を実行した後、$docはXML:: LibXML :: Document = SCALAR(0x6b99f0)として出力されることがわかります。

誰かが私が間違っていることに光を当てるのを手伝ってもらえますか?(警告:それはばかげた間違いかもしれません、私はそれを自分自身の前に置きません)。

0 投票する
2 に答える
28308 参照

xml - 検証に失敗しました: "EntityRef: ';' が必要です"

こんにちは、検証できない XML があります。問題をこのビットに絞り込みました。

私はそれをXMLバリデーターに入れましたが、吐き出しました:

このページには次のエラーが含まれています: 行 1、列 16 のエラー: EntityRef: ';' を予期しています。

不足している「;」の場所に関するアイデア 行くべきですか?別の問題はありますか?

0 投票する
2 に答える
11526 参照

javascript - XML検証:属性名の解析中にエラーが発生しました

XML検証の問題があります。このビット:

結果:

このページには、次のエラーが含まれています。列246の5行目のエラー:属性名の解析エラー

エラーが何であるかわかりません。この問題を修正する方法について何か提案はありますか?

ありがとうございました!

-ラクシュミディ

0 投票する
2 に答える
1852 参照

eclipse - Singling out web.xml errors in Eclipse

When Eclipse detects an invalid XML document, in my case a web.xml file, it dumps the content model of the DTD and tells me that the element is invalid. This is quite unhelpful, since it ends up telling me that:

The content of element type "web-app" must match "(icon?,display-name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,servlet-mapping*,session-config?,mime-mapping*,welcome-file-list?,error-page*,taglib*,resource-env-ref*,resource-ref*,security-constraint*,login-config?,security-role*,env-entry*,ejb-ref*,ejb-local-ref*)".

In a 900-line web.xml file, the error is not easy to find.

How can I single out the first element which causes the document to be invalid?

0 投票する
1 に答える
2515 参照

java - XMLReader を使用せずに SAXParser で XML ドキュメントを検証するにはどうすればよいですか?

検証する を作成したいのですが、 を作成して使用するか、 in にも を実装させるSAXParserしか方法がないようです。XMLReadersetErrorHandler()ContentHandlerSAXParser.parse()ErrorHandler

何か不足していますか?私がやりたいのは、次のSAXParserような検証を作成することだけです:

Xerces 2.9.1 を使用しています

ヒントをありがとう!

エリック

0 投票する
1 に答える
5598 参照

.net - .NETを使用してスキーマに対してXMLを検証する

任意のXMLファイルが特定のスキーマと一致するかどうかを(trueまたはfalseで)テストしたいと思います。

価値のあるものとして、スキーマはWord 2003 WordMLスキーマであり、Microsoftは約7つの*.xsdファイルのリストを使用して定義しています。

xml.xsdこれらのファイルの1つには、次のステートメントを含めることにより、W3Cファイルも含まれています。

検証を行うために、次のような.NETコードを使用しています。

私の問題は、インターネットに接続されていないマシンでこのコードを実行すると、XmlSchemaValidationException見つからないというエラーが発生することxml.xsdです。

これを修正するために、xml.xsdのコピーをダウンロードし、settings.Schemas.Addメソッドを使用して明示的に追加しました。マシンがインターネットに接続されていない場合でも、検証が正しく機能するようになりました。

ただし、マシンがインターネットに接続されていると、次のようなエラーが発生しThe global attribute 'http://www.w3.org/XML/1998/namespace:lang' has already been declared.ます。

したがって、マシンがインターネットからサイレントにダウンロードできるかどうか(または以前にダウンロードできてどこかにキャッシュされているかどうか)に応じて、明示的に追加する必要があるか、追加しないようです。

ですから、それは「私がそうするなら、そして私がそうしないなら、くそったれ」です。ある方法で試して、例外をキャッチしてから、別の方法で試す必要がありますか?または、よりエレガントなソリューションはありますか?

0 投票する
2 に答える
25627 参照

c# - XML ドキュメントを検証する方法は?

私の C#/.NET アプリケーションは、ユーザーが手動で編集した XML ファイルを読み取ります。許可される要素とタグは、アプリケーションのドキュメントに記載されています。LINQ を使用して XML ファイルからデータを抽出しています。

XML ファイルからデータを抽出する前に、期待どおりの構造になっているかどうかを検証したいと思います。そうでない場合は、ユーザーにフィードバックできるように、何が問題なのかについての情報を提供していただければ幸いです。

C# でこれを行う最も簡単な方法は何ですか?

0 投票する
1 に答える
327 参照

xml - 異なるプロジェクト モジュールにある異なる XML から XSD ファイルを参照しますか?

以下を使用して、異なるプロジェクト モジュールの 3 つの異なる XML ファイルで参照される XSD ファイルがあります。

XSD を必要とするすべてのモジュールに XSD を手動でコピーすることを避ける方法を見つけようとしてきたので、1 つではなく 3 つのファイルを維持する必要はありません。

モジュールの1つに1つのバージョンしか持たず、ビルド時にそれを他の2つにコピーする方法はmavenにありますか?

ありがとう!

0 投票する
2 に答える
4380 参照

java - Java の場合: サーバーの異なる場所にある複数のスキーマに対して XML を検証します。

私のプログラムでは、XML ファイルを生成しており、異なる URL にある複数のスキーマに対してその XML ファイルを検証する必要があります。その XML ファイルをすべてのスキーマに対して 1 回だけ検証する必要があります。

ソースフラグメント:

上記のコード フラグメントを実行すると、次のエラーが発生します。

org.xml.sax.SAXParseException: src-resolve: 名前 'xn:SubNetwork' を (n) '要素宣言' コンポーネントに解決できません。org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException (未知のソース) で org.apache.xerces.util.ErrorHandlerWrapper.error (未知のソース) で org.apache.xerces.impl.XMLErrorReporter.reportError (未知のソース) で org org.apache.xerces.impl.xs.traversers.XSDHandler.reportSchemaError (不明なソース) org.apache.xerces.impl.xs.traversers.XSDHandler.getGlobalDecl (不明なソース) org.apache.xerces.impl.xs.traversers で.XSDElementTraverser.traverseLocal (不明なソース) org.apache.xerces.impl.xs.traversers.XSDElementTraverser.traverseLocal (不明なソース) org.apache.xerces.impl.xs.traversers.XSDAbstractParticleTraverser.

コードの問題は何ですか?複数のスキーマに対して検証する他の方法はありますか?