Я хочу сгенерировать классы Java из dtd с помощью JAXB.
dtd выглядит следующим образом:
<!--Contents-->
<!ELEMENT persons (header, content) >
<!ELEMENT groups (header, content) >
<!--Header-->
<!ELEMENT header (version) >
<!ELEMENT version(#PCDATA) >
<!--Content-->
<!ELEMENT content(person, group)* >
<!--Person-->
<!ELEMENT person(p_id, p_name) >
<!ELEMENT p_id (#PCDATA) >
<!ELEMENT p_name (#PCDATA) >
<!--Group-->
<!ELEMENT group(g_id) >
<!ELEMENT g_id(#PCDATA) >
При создании классов с помощью JAXB я получаю следующие:
In класс Content метод для получения всех людей и групп:
public List<Object> getPersonOrGroup() {
if (personOrGroup == null) {
personOrGroup = new ArrayList<Object>();
}
return this.personOrGroup;
}
Есть ли что-нибудь, что я могу изменить в файле dtd, чтобы генерация классов Java разделила persons
и groups
в классе Content
java, так что для получения всех лиц и групп нужно будет позвонить Content.getPersons()
и Content.getGroups()
соответственно?