0

仍在学习如何在 SQL Server 2008 中使用 XML。我看到的许多演示如何使用 XML Schema Collection 验证 XML 数据的示例似乎都在验证已知大小的 XML。我的问题是我正在使用的 XML 数据可以有“X”个 Kit 元素。

如果只有一个工具包,验证工作正常,但如果<xsd:element name="Kit">XML 中有多个元素,则会出现错误:

XML 验证:意外元素:工具包。位置:/ :KitStatus[1]/ :Kits[1]/ :Kit[2]*

我的代码:

CREATE XML SCHEMA COLLECTION [dbo].[KitStatusSchema] AS 
N'<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="KitStatus" >
  <xsd:complexType>
    <xsd:sequence>
       <xsd:element name="ClientID"/>
       <xsd:element name="Kits">
          <xsd:complexType>
             <xsd:sequence>
                <xsd:element name="NumberofKits"/>
                <xsd:element name="Kit">
                   <xsd:complexType>
                      <xsd:sequence>
                 <xsd:element name="PackageNumber"/>
                 <xsd:element name="KitNumber"/>
                         <xsd:element name="LocationNumber"/>
                         <xsd:element name="Status"/>
                      </xsd:sequence>
                   </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
     </xsd:sequence>            
   </xsd:complexType>
</xsd:element>
</xsd:schema>

验证是否可以验证 1 个或多个套件?

4

0 回答 0