在复杂类型中使用 maxOccurs 和 minOccurs 的 XSD 架构

发布于 2024-12-01 11:58:55 字数 683 浏览 0 评论 0原文

我正在 Visual Studio 2010 中编写 XSD 架构文件。我想定义一个不需要的复杂类型,并且在 xml 中具有无限的整体。我使用了 minOccurs 和 maxOccurs 属性,但在编辑器中收到错误,指出不允许使用这些属性 (minOccurs / maxOccurs)。我可以将它们添加到简单类型,但不能添加到复杂类型。如何定义复杂类型可以出现 0 到多次?

这是我使用的 xsd:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="patient" minOccurs="0"  maxOccurs="unbounded">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="to" type="xs:string"/>
        <xs:element name="from" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

I am writing a XSD schema file in Visual Studio 2010. I want to define a complex type to not be required and have unlimited entires in the xml. I used the minOccurs and maxOccurs attributes but I am getting an error in the editor that these attributes (minOccurs / maxOccurs) are not allowed. I can add them to simple types but not complex types. How do you define that a complex type can have 0 to many occurances?

Here is the xsd I was using:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="patient" minOccurs="0"  maxOccurs="unbounded">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="to" type="xs:string"/>
        <xs:element name="from" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦太阳 2024-12-08 11:58:55

这应该仍然是有效的 XSD 语法。 VS编辑器只是突出显示并告诉你这是不允许的吗?它可能只是报告不正确。

编辑:哦,你需要一系列复杂类型!

<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="patients">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="patient" minOccurs="0"  maxOccurs="unbounded">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="to" type="xs:string"/>
              <xs:element name="from" type="xs:string"/>
            </xs:sequence>
          </xs:complexType>
        </xs:elemennt>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

That should still be valid XSD syntax. Is the VS editor just highlighting it and telling you that it's not allowed? It may just be reporting incorrectly.

Edit: Oh, you need a sequence of the complex types!

<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="patients">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="patient" minOccurs="0"  maxOccurs="unbounded">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="to" type="xs:string"/>
              <xs:element name="from" type="xs:string"/>
            </xs:sequence>
          </xs:complexType>
        </xs:elemennt>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文