2012-10-04 9 views

Odpowiedz

10
@XMLElement(required=true) 

generuje coś takiego w schemacie XML:

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

który oznacza element i wartość są obowiązkowe. Wartością domyślną jest fałsz.

to:

@XMLELement(nillable=true) 

generuje coś takiego w schemacie XML:

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

który oznacza, że ​​można przekazać w wartości zerowej w XML tak:

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

Połączenie tych dwóch elementów:

@XMLELement(nillable=true, required=true) 

daje definicji schematu XML podobny do tego:

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

co oznacza, że ​​element jest obowiązkowe, ale można przekazać w wartości zerowej.

2

If required() is true, then Javabean property is mapped to an XML schema element declaration with minOccurs="1"

Wskaźnik minOccurs określa minimalną liczbę może nastąpić elementem. Jeśli element w schemacie ma atrybut , oznacza to, że element jest obowiązkowy. Musi pojawić się w dokumencie XML.

+0

Dziękuję za poświęcenie czasu na wkopanie się w moje pytanie. Wyjaśniłem, tworząc prostą wiązkę testową. Przymusowe ograniczenie dotyczy zarówno elementu, jak i jego wartości. – sateesh