Вот моя проблема:
Я работаю над проектом по миграции с Castor на JaxB. Я очень плохо знаком с JaxB и сталкиваюсь с проблемой, которая поражает мое мнение, и, тем не менее, может быть довольно простой для решения. Вот простой пример:
class Data
{
private Item item;
}
У меня есть данные, содержащие один предмет. Вот как выглядит выходной XML-файл (, который я не могу изменить ):
<Data>
<Items>
<Item>
<Item>
<Items>
<Data>
Несмотря на то, что Data содержит только один элемент, он должен быть представлен в выходном XML как элемент в элементах. Дело в том, что я не хочу, чтобы JaxB генерировал класс или свойство для Items, только Data и Item .
Как должна выглядеть моя схема? Есть ли способ указать в схеме, что указанный элемент хранится в узле, который не имеет представления класса? Что-то, что в моей логике могло бы выглядеть так:
<xs:element name="Data">
<xs:complexType>
<xs:sequence>
<xs:element ref="Items"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Items"> <!-- Do not generate plz -->
<xs:complexType>
<xs:sequence>
<xs:element ref="Item" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>