Xml 如何允许具有字符串内容的元素具有属性?

Xml 如何允许具有字符串内容的元素具有属性?,xml,parsing,xsd,xml-validation,Xml,Parsing,Xsd,Xml Validation,我正在尝试为以下XML编写XSD: <users> <user id='u1'>A</user> <user id='u2'>B</user> <user id='u3'>C</user> </users> A. B C 以下是我到目前为止的情况: <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema

我正在尝试为以下XML编写XSD:

  <users>
    <user id='u1'>A</user>
    <user id='u2'>B</user>
    <user id='u3'>C</user>
  </users>

A.
B
C
以下是我到目前为止的情况:

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsd:element name="users">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="user" maxOccurs="unbounded" type="xsd:string">
                <xsd:attribute name="id" type="xsd:string"/>
              </xsd:element>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
</xsd:schema>

但它返回错误:

元素 “{}元素”:内容无效。 应为(注释?,((simpleType | complexType)?,(唯一|键 |keyref)*)

id属性是用户的id。
知道如何解决这个问题吗?

下面是如何使用
simpleContent
xsd:string
)和xsd中的属性定义元素:

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="users">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="user" maxOccurs="unbounded">
          <xsd:complexType>
            <xsd:simpleContent>
              <xsd:extension base="xsd:string">
                <xsd:attribute name="id" type="xsd:string"/>
              </xsd:extension>
            </xsd:simpleContent>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>

(您的错误与
maxOccurs
未绑定无关。它与
user
元素的内容模型有关。)