在 smooks(1.5.1 版)中是否可以仅将一个生成的元素从两个选择元素映射到 java 字段?
例子:
xsd 文件:
<complexType name="timeType">
<sequence>
<choice minOccurs="1" maxOccurs="1">
<element name="time" minOccurs="0" maxOccurs="1">
<complexType>
<attribute name="v" type="dateTime"/>
</complexType>
</element>
<element name="time2" minOccurs="0" maxOccurs="1">
<complexType>
<attribute name="v" type="dateTime"/>
</complexType>
</element>
</choice>
</complexType>
a)xml文件1:
<parent>
<time v="2001-12-31T12:00:00"/>
</parent>
b)xml文件2:
<parent>
<time2 v="2002-12-31T12:00:00"/>
</parent>
烟雾映射
<jb:bean beanId="timeRef" class="someClass" createOnElement="parent">
<!-- only if is generated (present) time element map this time element-->
<jb:value property="fromHour" data="time/@v" decoder="DateTime" />
<!-- only if is generated (present) time2 element map time2 element -->
<jb:value property="fromHour" data="time2/@v" decoder="DateTime" />
</jb:bean>
我如何告诉 smooks,我只想保存一个生成的元素?谢谢