首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用XML Schema扩展元素而不是complexType

使用XML Schema扩展元素而不是complexType
EN

Stack Overflow用户
提问于 2009-09-30 18:20:44
回答 1查看 22K关注 0票数 18

假设我有一些模式:

<xsd:schema ...>
    <xsd:element name="foo">
         <xsd:complexType>
             <xsd:sequence>
                 <xsd:element name="fooElement" type="xs:string" />
             </xsd:sequence>
         </xsd:complexType>
    </xsd:element>
</xsd:schema>

它定义了一些foo元素,其中包含一些类型为string的元素fooElement。现在,我想扩展元素foo,使其也有一个元素barElement,并将此扩展称为bar

让事情更复杂的是,我们还假设其他人定义了foo,并且模式不能更改。虽然这里的示例很简单,但我们也假设foo的内容可能更复杂,并且定义新模式并不像复制元素fooElement那么简单。

实际上,我想定义一个新的模式:

<xsd:schema xmlns:fns="otherschema" ...>
    <xsd:import namespace="otherschema" />
    <xsd:element name="bar">
         <xsd:complexContent>
             <xsd:extension base="fns:foo">
                 <xsd:sequence>
                     <xsd:element name="barElement" type="xs:string" />
                 </xsd:sequence>
             </xsd:extension>
         </xsd:complexContent>
    </xsd:element>
</xsd:schema>

不幸的是,<xsd:extension>base属性只接受XSD类型的参数,而不接受元素。如何扩展元素?(我能扩展元素吗?)

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1499836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档