問題タブ [xmlschemaset]
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.
xml - カスタム子ノードを含む XML ファイル
私は実際に、彼の構成ファイルに XSD スキーマを実装する Magento 2 フレームワークを使用しています。開発者が XML マッピングといくつかの構成を記述し
たファイルがあります。
私の目標は、2 つのノードを必須にし、開発者が任意の XML 構造を記述できるようにすることです。 flow.xml
mapping
options
これが私の実際のファイルです:
私のXSDファイルは次のようになります:
mixed
値、、xs:all
さまざまな要素の種類 を試しましたが、結果はありませんでした。
これは簡単なことかもしれませんが、私は XSD スキーマが初めてで、2 つのノードにすべてが存在する可能性があるソリューションを見つけるのに苦労しています。
ありがとう、
マテオ。
xml - XML、XSL、XML スキーマ
XSL と XML スキーマのヘルプが必要です。
これは XML ファイルです。
これは XML スキーマです。
これは XSL です:
問題は、XSL ファイルを適用すると、XML がまったく表示されなくなることです。また、XML スキーマも正しく機能していないと思います。私の制限も無視されます。
私は何をしますか?
xml - テキストを含み、属性を持つ要素のリストの XSD スキーマ?
次の XML があるとします。
そのための XSD スキーマを作成します。
<word>
何らかの理由で要素の定義を正しく取得できません。これまでに思いついたのは次のとおりです。
しかし、私が走るとき
私は得る
11号線は
したがって、最初の単語は期待どおりに機能するようですが、2番目の単語は機能しません...
xml - XML ドキュメントと XSL ドキュメントのリンクに関する問題
xpath検証以外に初めてXMLを使用しようとしました。XML と XSL ドキュメントをリンクして、firefox v25 以降のブラウザーで開いたときに XML が次のように表示されるようにする宿題があります。
山の名前: エベレスト
ピッグ ラテン名: ountMa verestEa
山
の名前: ラニエ
山 山の名前: セント ヘレンズ山
山名:
ワシントン山
ピッグ
ラテン名: ountMa ashingtonWa
豚のラテン名: ountMa esuviusVa
山の名前: エトナ山
豚のラテン名: ountMa tnaEa
ファイル Asg04XST.xml の XML コードは次のとおりです。これをデスクトップの Asg04 というフォルダーに保存しました。
次に、この XSL ファイルを Asg04.xsl という名前の同じフォルダーに作成しました。
それらを同じフォルダーに保存したので、match="/" で問題ないと思います。次に、for-each の選択ごとに山を選択し、value-of select の下で、要素である名前を選択します。山の下。しかし、XML ドキュメントを開いても、これがどこにも反映されていません。最初に山の名前を機能させたいので、豚のラテン語セクションには行きませんでした。これら 2 つのファイルを相互に表示するにはどうすればよいですか?
私が試したこと: ?xml-stylesheet type="text/xsl" href="Asg04.xml"? などの href 行を追加します。Asg04XST.xsl と同様
c# - 含まれている xsd ファイルを使用してスキーマをコンパイルする
XSDファイルに対してXMLファイルを検証するために使用する静的メソッドがあります。別の XSD ファイルを含む XSD ファイルが存在するまで、これは正常に機能します。
例、問題が発生した場所:
TYPES.XSD:
メイン.XSD:
検証コード:
どういうわけか、含まれている XSD ファイルのパスを指定する必要があるようですが、どこにあるのかわかりません。
エラーは で発生しsettings.Schemas.Compile();
、タイプ「MY_AMOUNT」が宣言されていないことが示されています。カスタム XmlResolvers について読みましたが、正直なところ、うまくいきませんでした。
これが回答にとって重要な場合: xsd ファイルは常に同じディレクトリにあります。
メソッドは次のように呼び出されます。
どんな助けでも大歓迎です - ありがとう!
2016 年 12 月 5 日更新:
舞台裏で何が起こっているかを確認するために、独自の XmlUrlResolver を作成しました。
そして、私はやろうとしています:
今何が起こるか (オンラインxset.Add
):
XmlUrlResolver.ResolveUri(null,"C:\\Temp\\MAIN.XSD")
-->{file:///C:/Temp/MAIN.xsd}
XmlUrlResolver.ResolveUri(null,"C:\\Temp\\MAIN.XSD")
-->{file:///C:/Temp/MAIN.xsd}
XmlUrlResolver.GetEntity({file:///C:/Temp/MAIN.xsd})
--> MAIN.xsd へのファイルストリームXmlUrlResolver.ResolveUri({file:///C:/Temp/MAIN.xsd},"TYPES.XSD")
-->{file:///C:/Temp/TYPES.xsd}
XmlUrlResolver.GetEntity({file:///C:/Temp/TYPES.xsd})
--> TYPES.xsd へのファイルストリーム
私には良さそうです (最初の 2 つの呼び出しが等しいことを除いて!?!) - TYPES.XSD へのパスは、必要に応じて解決されます。
それにもかかわらず、xset.Compile()
例外がスローされます:「タイプ MY_AMOUNT は宣言されていません」
そして、私には理由がわかりません:/
xml - C# - XSD 検証
XSD 検証を構築しようとしています。03 XSD があります。
.
.
.
XMLSchemaSet にロードしようとしました
しかし、私は各 XML に対してたくさんのエラーを持っています。
「http://www.w3.org/2001/XMLSchema:element」要素は、このコンテキストではサポートされていません。
私が持っている2番目
'base' 属性の値が無効です - 'x:byte' は 'base' 属性の無効な値です。
第三に私が持っている
「maxOccurs」属性は、このコンテキストではサポートされていません。
これを解決するために何時間も費やしました。Web で検索しましたが、修正方法が見つかりませんでした。誰でも私を助けることができますか?
ありがとう