@RetentionSE(valueSE=RUNTIMESE) @TargetSE(valueSE={FIELDSE,METHODSE,PARAMETERSE}) public @interface XmlElement
使用方法
@XmlElement
アノテーションは、次のプログラム要素で使用できます。
XmlElements
内XmlID
、XmlIDREF
、XmlList
、XmlSchemaType
、XmlValue
、XmlAttachmentRef
、XmlMimeType
、XmlInlineBinaryData
、XmlElementWrapper
、XmlJavaTypeAdapter
XmlElements
で使用される場合、コレクションアイテムの型はすでにわかっているため、@XmlElement.type()
は DEFAULT.class である必要があります。@XmlElement アノテーションが付けられている場合、JavaBean プロパティは、含まれているクラスがマップされている XML スキーマ複合型のローカル要素にマップされます。
例 1: パブリック非静的非 final フィールドをローカル要素にマップします
//Example: Code fragment
public class USPrice {
@XmlElement(name="itemprice")
public java.math.BigDecimal price;
}
<!-- Example: Local XML Schema element -->
<xs:complexType name="USPrice"/>
<xs:sequence>
<xs:element name="itemprice" type="xs:decimal" minOccurs="0"/>
</sequence>
</xs:complexType>
例 2: フィールドを nillable 要素にマップします。
//Example: Code fragment
public class USPrice {
@XmlElement(nillable=true)
public java.math.BigDecimal price;
}
<!-- Example: Local XML Schema element -->
<xs:complexType name="USPrice">
<xs:sequence>
<xs:element name="price" type="xs:decimal" nillable="true" minOccurs="0"/>
</sequence>
</xs:complexType>
例 3: フィールドを nillable の必須要素にマップします。
//Example: Code fragment
public class USPrice {
@XmlElement(nillable=true, required=true)
public java.math.BigDecimal price;
}
<!-- Example: Local XML Schema element -->
<xs:complexType name="USPrice">
<xs:sequence>
<xs:element name="price" type="xs:decimal" nillable="true" minOccurs="1"/>
</sequence>
</xs:complexType>
例 4: JavaBean プロパティを匿名型の XML 要素にマップします。
@XmlType
の例 6 を参照してください。
public abstract StringSE name
値が "## default" の場合、要素名は JavaBean プロパティ名から派生します。
public abstract boolean nillable
nillable() が true の場合、JavaBean プロパティは XML スキーマの nillable 要素宣言にマップされます。
public abstract boolean required
required() が true の場合、Javabean プロパティは minOccurs="1" の XML スキーマ要素宣言にマップされます。maxOccurs は、単一値プロパティの場合は "1"、複数値プロパティの場合は "unbounded" です。
required() が false の場合、Javabean プロパティは minOccurs="0" の XML スキーマ要素宣言にマップされます。maxOccurs は、単一値プロパティの場合は "1"、複数値プロパティの場合は "unbounded" です。
public abstract StringSE namespace
値が "## default" の場合、名前空間は次のように決定されます。
XmlSchema
アノテーションがあり、その elementFormDefault
が QUALIFIED
である場合、囲んでいるクラスの名前空間。public abstract StringSE defaultValue
' 'このアノテーション要素のデフォルトとして指定された値は、実装が「デフォルト値なし」状態を認識できるようにするために、null の代わりとして使用されます。
public abstract ClassSE type
Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.