У меня есть следующие xsd:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="employee" type="employeeType"/>
<xs:complexType name="employeeType">
<xs:sequence>
<xs:element type="xs:string" name="name"/>
<xs:element type="xs:int" name="age"/>
<xs:element type="xs:string" name="address"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
Если я установил значение только для имени, т. Е.
EmployeeDocument request=EmployeeDocument.Factory.newInstance();
EmployeeType emp=EmployeeType.Factory.newInstance();
emp.setName("Name");
request.setEmployee(emp);
Затем XMLBeans генерирует следующий xml:
<employee>
<name>Name</name>
</employee>
Но мне нужно генерировать следующий вид xml, означающий закрытие тегов </>
для всех элементов, значения которых не установлены в программе:
<employee>
<name>Name</name>
<age/>
<address/>
</employee>
хорошо, XMLBeans генерирует <address/>
, если я задаю пустую строку, т.е. emp.setAddress("");
Есть ли способ, которым мы могли бы удовлетворить такое требование, используя XMLBeans, не задавая пустую строку.
И более того, мы не можем установить пустую строку для возраста элемента, который имеет тип int.
Буду признателен за любую помощь.