Значение XMLElement @required = true

Означает ли это, что элемент XML является обязательным? Или элемент XML должен иметь некоторое ненулевое значение? Я действительно смущен объяснением javadoc.

Ответ 1

@XMLElement(required=true)

генерирует что-то подобное в схеме XML:

<xs:element name="city" type="xs:string" minOccurs="1"/>

что означает, что элемент и значение являются обязательными. Значение по умолчанию - false.

Это:

@XMLELement(nillable=true)

генерирует что-то подобное в схеме XML:

<xs:element name="city" type="xs:string" nillable="true"/>

что означает, что вы можете передать значение nil в своем XML следующим образом:

<city xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>

Объединяя два типа:

@XMLELement(nillable=true, required=true)

дает определение схемы XML, похожее на это:

<xs:element name="city" type="xs:string" nillable="true"/>

что означает, что элемент является обязательным, но вы можете передать значение nil.

Ответ 2

Если требуется() истинно, то свойство Javabean отображается в объявление элемента схемы XML с помощью minOccurs = "1"

Индикатор minOccurs указывает минимальное количество раз, которое может иметь элемент. Если элемент в схеме имеет атрибут minOccurs="1", это означает, что элемент является обязательным. Он должен появиться в документе XML.