XMLについての私の理解はそれほど素晴らしいものではありませんが、アノテーション/ appinfoのコンテンツの理解は、整形式のXMLを許可されていることです。ゆるやかな検証の私の理解は、関連するスキーマ情報が得られれば要素と属性が検証されることです。XMLスキーマアノテーション/ appinfoのXMLコンテンツの検証
私の状況は、このセクションで検証が必要な内容のXMLスキーマがあります。私は、コンテンツを検証するための関連スキーマを持っています。
以下に示すように、完全に単純なXMLスキーマを作成し、appinfo要素を追加しました。 appinfoの内容は別の要素宣言であり、純粋に他のスキーマを参照しないためです。検証しようとしているスキーマは、明らかに異なるものを参照しています。
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.demo.org"
xmlns="http://www.demo.org"
elementFormDefault="qualified">
<xsd:annotation>
<xsd:appinfo>
<xsd:element name="Demo">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="A" type="xsd:iteger"/>
<xsd:element name="B" type="xsd:integer"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:appinfo>
</xsd:annotation>
<xsd:element name="Demo">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="A" type="xsd:integer"/>
<xsd:element name="B" type="xsd:integer"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
注意APPINFOセクションで、私は、スキーマの本体でこれを行う場合は、素子Aに故意にスペルミス「整数」をしました、その後XmlSchemaSet.Compile()
は私にこのスキーマを教えてくれます有効ではありません。
しかし、上記のようにスキーマを使用すると、問題はないことがわかります。私が始めた、より複雑なファイルでは、私は、私もhttp://www.w3.org/2001/XMLSchema.xsdからXMLスキーマをロードし、XmlDocument
に検証するスキーマをロードしXmlDocument.Validate()
が、無喜びを実行しようとしましたXmlSchemaSet.Add()
を経由してXmlSchemaSetへの外部スキーマを供給しました。
私はこれに時間を費やして完全に何かを完全に失っているように感じます。任意のポインタが評価!