1
我有一套模式定義,其中一個文件具有xsd:ComplexType定義爲「FloatingRateCalculation」,現在我想擴展此類型並希望向它添加一個元素,我不想打擾現有模式。我想創建一個單獨的.xsd文件,其中包含原始「FloatingRateCalculation」的架構。如何將元素添加到現有的xsd:complexType?
我想這樣做,這樣它是由供應商提供的原始模式保持不變...
我有一套模式定義,其中一個文件具有xsd:ComplexType定義爲「FloatingRateCalculation」,現在我想擴展此類型並希望向它添加一個元素,我不想打擾現有模式。我想創建一個單獨的.xsd文件,其中包含原始「FloatingRateCalculation」的架構。如何將元素添加到現有的xsd:complexType?
我想這樣做,這樣它是由供應商提供的原始模式保持不變...
如果原來的模式是這樣的(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>
我不想擴展現有類型;即以OO術語,我不想從現有類型中派生新的類型。我只想將新字段添加到現有類型中...您所做的是您已從FloatingRateCalculation中派生出FloatingRateCalculationEx。我想要的是向FloatingRateCalculation添加新的字段。我怎樣才能做到這一點?謝謝 – Ocean 2012-08-09 15:39:54