Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT

## javax.xml.bind.annotation
Annotation Type XmlID

    @Retention(value=RUNTIME)
    @Target(value={FIELD,METHOD})
    public @interface XmlID

Maps 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 `@XmlID` and `@XmlIDREF` together allow a customized mapping of a JavaBean property's type by containment or reference.

Usage

The `@XmlID` annotation can be used with the following program elements:

- a JavaBean property
- non static, non transient field

See "Package Specification" in javax.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 `@XmlID` are:`@XmlElement` and `@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>

Since:
  JAXB2.0
See Also:
  `XmlIDREF`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2008 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.