我有一组模式定义,其中一个文件有xsd:ComplexType定义为" FloatingRateCalculation",现在我想扩展这个类型并想要添加一个元素,我不想扰乱现有架构。我想创建一个单独的.xsd文件,其中我将包含原始" FloatingRateCalculation"的模式。
我想这样做,以便原始架构保持完整,由供应商提供......
答案 0 :(得分:0)
如果原始架构看起来像这样(Original.xsd)
<?xml version="1.0" encoding="utf-8" ?>
<!--Created with Liquid XML Studio 2012 Developer Edition 10.1.2.4113 (http://www.liquid-technologies.com)-->
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="FloatingRateCalculation">
<xs:sequence>
<xs:element name="Stuff" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:schema>
然后您的架构(Extension.xsd)应该看起来像这样
<?xml version="1.0" encoding="utf-8" ?>
<!--Created with Liquid XML Studio 2012 Developer Edition 10.1.2.4113 (http://www.liquid-technologies.com)-->
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:include schemaLocation=".\Original.xsd" />
<xs:complexType name="FloatingRateCalculationEx">
<xs:complexContent>
<xs:extension base="FloatingRateCalculation">
<xs:sequence>
<xs:element name="MoreStuff" type="xs:string" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>