Java™ Platform
Standard Ed. 8
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
Java™ Platform
Standard Ed. 8

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部