在解组过程中是否可以IDREF
在JAXB XmlAdapter
中处理XML 元素的前向引用?例如,我有以下XML complexType
:
<xs:complexType name="person">
<xs:complexContent>
<xs:sequence>
<xs:element name="dateOfBirth" type="xs:dateTime" minOccurs="0"/>
<xs:element name="firstName" type="xs:string" minOccurs="0"/>
<xs:element name="gender" type="xs:string" minOccurs="0"/>
<xs:element name="guardian" type="xs:IDREF" minOccurs="0"/>
<xs:element name="homePhone" type="xs:string" minOccurs="0"/>
<xs:element name="lastName" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexContent>
</xs:complexType>
Run Code Online (Sandbox Code Playgroud)
其中guardian
字段可以引用另一个Person
文档中的别处型元件.我正在编组时使用XmlAdapter,以便第一次对象进行编组时,它会被包含编组,并且此对象的任何后续出现都将通过引用进行编组.看看我以前的一个问题.但是,由于我的XML实例文档的创建方式,Person
元素的第一次出现可能会在IDREF
它发生之后发生.
这是可能的吗?或者我需要以不同的方式处理这个问题?谢谢!