- - PR -
XML Schemaで属性に条件をつけるには
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-10-24 15:13
こんにちは。XML Schema定義について質問です。
<Test name="a1" /> <Test name="a1" val1="1" val2="2" > <Val /> <Val /> </Test> のような内容のXML文書(一部分)があったとします。 Testタグの属性は、 ・nameだけ ・name,val1,val2全て のどちらかのパターンになります。 で、val1,val2は、 ・val1 < val2 ・両方ともtype="xs:unsignedByte" の条件を満たさないといけません。 また、val1,val2が指定されている場合のTestタグ内の要素数(タグの数)は ・val1<= 要素数 <=val2 の範囲です。 このような場合、Schema定義はどう書けばよいか教えてください。 [ メッセージ編集済み 編集者: koji 編集日時 2008-10-28 10:27 ] |
|
投稿日時: 2008-10-24 21:14
XML Schemaはあまり詳しくありませんが、
XML Schema1.0ではできないだろうと思っています。 http://www.w3.org/TR/xmlschema11-1/#cAssertions をちょっと見た感じではXML Schema1.1だとできるのではないかと思います。 XML Schema1.0でやるなら、 できるところまでSchemaを作ってあとはプログラムでチェックするか、 あるいは、XSLTで変換したものをSchemaチェックするか になると思います。 |
|
投稿日時: 2008-10-27 09:54
ぱっと見ではわかりませんでしたので、熟読してみたいと思います。
英語だからきついですが。。。 >・val1 < val2 の部分は出来そうですね。 1.0でも可能みたいです。 ありがとうございました。 |
|
投稿日時: 2008-10-27 10:11
検索語では
XML validate あたりです。 XSLTを使う schematron は年季 入っています。(生き残ってる) XML Schema に検証用の スクリプトを埋め込んで拡張するのとかもアリ |
|
投稿日時: 2008-10-27 18:33
C#からXML文書をXML Schemaで検証するのですが、schematron.NET
というのがありますね。 ・Schematron を使用して XML ドキュメント検証を向上する http://msdn.microsoft.com/ja-jp/library/aa468554.aspx XML Schema1.1で実現出来ないようでしたら、ライブラリの使用も 考えてみたいと思います。 > 検証用の スクリプトを埋め込んで そんな事が出来るのですね。 ちょっと調べてみたのですが、やり方はわかりませんでした。。。 1冊、体系的に学べるXML Schemaの本がほしいですねぇ。 情報ありがとうございました! [ メッセージ編集済み 編集者: koji 編集日時 2008-10-28 10:28 ] |
1