如何将XSD元素从字符串修改为xml?

时间:2011-05-26 10:13:38

标签: xml xsd

我的XSD中有以下部分:

 <xs:element name="Parameter">
   <xs:complexType mixed="true">
     <xs:attribute name="Name" use="required" type="xs:string"/>
   </xs:complexType>
 </xs:element>

表示参数的值可以是任何string。我可以以某种方式指定参数的值可以是xml之类的任何有效<aaa></aaa>吗?像type="xs:xml"

这样的东西

2 个答案:

答案 0 :(得分:2)

使用<xs:any>允许内容模型中的任何XML元素。

<xs:element name="Parameter">
  <xs:complexType>
    <xs:sequence>
      <xs:any minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>

您可以将<xs:any>允许的元素限制为具有namespace属性的特定命名空间,并使用processContents属性控制其验证。要允许任何属性,请使用<xs:anyAttribute>

XML Schema建议中的更多信息:3.10.2 XML Representation of Wildcard Schema Components

答案 1 :(得分:1)

你必须使用

<xs:element name="Parameter" type="myType>

,其中

<complexType name="myType>
<choice>
<element "myXml" type="xml">
<element "myStr" type="xs:sting">
</choice>
</complexType>

你必须将xml定义为你希望成为你的价值的xml模式。