私は次のXSDを持っています(この質問をするため):
<xsd:complexType name="BaseType" abstract="true">
<xsd:sequence>
<xsd:element name="field1" type="xsd:string"/>
<xsd:element name="field2" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ExtendedType">
<xsd:complexContent>
<xsd:extension base="tns:BaseType">
<xsd:sequence>
<xsd:element name="fieldA" type="xsd:string"/>
<xsd:element name="fieldB" type="xsd:string"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="extendedType" type="tns:ExtendedType"/>
これにより、次のような XML ファイルが可能になります。
<extendedType>
<field1>hello</field1>
<field2>world</field2>
<fieldA>aaa</fieldA>
<fieldB>bbb</fieldB>
</extendedType>
つまり、2 つのニュース フィールド fieldA と fieldB が BaseType の下部に追加されます。
BaseType を拡張する方法はありますが、一番上に fieldA を挿入し、一番下に fieldB を挿入しますか? これが機能するように?
<extendedType>
<fieldA>aaa</fieldA>
<field1>hello</field1>
<field2>world</field2>
<fieldB>bbb</fieldB>
</extendedType>
JAXBを期待どおりに機能させる方法は?