-
@Retention(RUNTIME) @Target({FIELD,METHOD}) public @interface XmlIDMaps a JavaBean property to XML ID.
To preserve referential integrity of an object graph across XML serialization followed by a XML deserialization, requires an object reference to be marshalled by reference or containment appropriately. Annotations
@XmlIDand@XmlIDREFtogether allow a customized mapping of a JavaBean property's type by containment or reference.Usage
The@XmlIDannotation can be used with the following program elements:- a JavaBean property
- non static, non transient field
See "Package Specification" in jakarta.xml.bind.package javadoc for additional common information.
The usage is subject to the following constraints:- At most one field or property in a class can be annotated
with
@XmlID. - The JavaBean property's type must be
java.lang.String. - The only other mapping annotations that can be used
with
@XmlIDare:@XmlElementand@XmlAttribute.
Example: Map a JavaBean property's type to
xs:ID// Example: code fragment public class Customer { @XmlAttribute @XmlID public String getCustomerID(); public void setCustomerID(String id); .... other properties not shown }<!-- Example: XML Schema fragment --> <xs:complexType name="Customer"> <xs:complexContent> <xs:sequence> .... </xs:sequence> <xs:attribute name="customerID" type="xs:ID"/> </xs:complexContent> </xs:complexType>- Author:
- Sekhar Vajjhala, Sun Microsystems, Inc.
- See Also:
XmlIDREF