Xml xsd元素:如何使用复杂类型(序列)放置单个简单值

Xml xsd元素:如何使用复杂类型(序列)放置单个简单值,xml,xsd,Xml,Xsd,我需要创建如下xml文件: <AGENDA> <COVER COLOR>BLACK</COVER COLOR> <PRICE>24.99</PRICE> <ENTRIES> <NAMESURNAME>AAABBB</NAMESURNAME> <PHONENUMBER>3434534543</PHONENUMBER> <NAMESURNAME>EEE

我需要创建如下xml文件:

<AGENDA>
 <COVER COLOR>BLACK</COVER COLOR>
 <PRICE>24.99</PRICE>
 <ENTRIES>
  <NAMESURNAME>AAABBB</NAMESURNAME>
  <PHONENUMBER>3434534543</PHONENUMBER>
  <NAMESURNAME>EEEAAA</NAMESURNAME>
  <PHONENUMBER>2342342</PHONENUMBER>
 </ENTRIES>
</AGENDA>

黑色
24.99
阿阿巴
3434534543
EEEAAA
2342342
也就是说,顺序中有一个或多个选项和一个复杂类型。每个xml文件只需要一组选项,而不需要一个或多个条目。 我使用嵌入在VS2010中的xsd文本编辑器,但我不知道如何正确放置选项元素。 如果我键入(在
标记之后):


.....
....
我在xsd上没有得到任何错误,但当我编写xml时,我得到“xml文档不能包含多个根级别元素” 我试图将OPTION1移动到RawPolling中(但不是在RawPollingEntry中,OPTION1不是复杂/序列类型的一部分,我每个xml文件只需要一个OPTION1),并获得其他错误(“元素…具有无效的子元素…”)


我如何才能做到这一点?

首先,您的XML在中无效-您的标签名称中不能有空格,因此:

<COVER COLOR> ..... </COVER COLOR>
您应该在类似以下内容的路径中找到xsd.exe:

C:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\Bin\
这是在64位Windows 7计算机上-在32位计算机上,它将是
c:\program files\…

的可能副本
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="newschema" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="AGENDA">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="COVERCOLOR" type="xs:string" minOccurs="0" />
        <xs:element name="PRICE" type="xs:string" minOccurs="0" />
        <xs:element name="ENTRIES" minOccurs="0" maxOccurs="unbounded">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="NAMESURNAME" nillable="true" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:simpleContent msdata:ColumnName="NAMESURNAME_Text" msdata:Ordinal="0">
                    <xs:extension base="xs:string">
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
              <xs:element name="PHONENUMBER" nillable="true" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:simpleContent msdata:ColumnName="PHONENUMBER_Text" msdata:Ordinal="0">
                    <xs:extension base="xs:string">
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>
C:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\Bin\