質問
私はこれが可能であるとは思わないが、私はそこにそれを投げるだろうと思っていました。このXMLを考える:
<people count="3">
<person>Bill</person>
<person>Joe</person>
<person>Susan</person>
</people>
これは、(この場合は、person要素)定義された要素の正確な数であることを@count属性値を強制的にXSDには可能ですか?上記の例では、明らかに正しいものとなる例以下だろうない検証
<people count="5">
<person>Bill</person>
<person>Joe</person>
<person>Susan</person>
</people>
解決
私は、XSDはそれを行うことはできません確信しています。しかし、あなたのcount属性は、以下の要素の実際の数であることを保証する場合は、文書にXSLTスタイルシートを実行すると、値を設定することで、真されていることを確認することができます:
<xsl:template match="people">
<xsl:attribute name="count">
<xsl:value-of select="count(person)"/>
</xsl:attibute>
<xsl:apply-templates/>
</xsl:template>
<!-- insert your identity template here -->
他のヒント
パーサーXSD仕様1.1を実装する子の数に対するXMLコンテンツを検証するために使用することができるアサート機能を提供しなければならないノード
所属していません StackOverflow