Annotation Type XmlSchemaType


@Retention(RUNTIME) @Target({FIELD,METHOD,PACKAGE}) public @interface XmlSchemaType
Maps a Java type to a simple schema built-in type.

Usage

@XmlSchemaType annotation can be used with the following program elements:

  • a JavaBean property
  • field
  • package

@XmlSchemaType annotation defined for Java type applies to all references to the Java type from a property/field. A @XmlSchemaType annotation specified on the property/field overrides the @XmlSchemaType annotation specified at the package level.

This annotation can be used with the following annotations: XmlElement, XmlAttribute.

Example 1: Customize mapping of XMLGregorianCalendar on the field.

     //Example: Code fragment
     public class USPrice {
         @XmlElement
         @XmlSchemaType(name="date")
         public XMLGregorianCalendar date;
     }
 

     <!-- Example: Local XML Schema element -->
     <xs:complexType name="USPrice"/>
       <xs:sequence>
         <xs:element name="date" type="xs:date"/>
       </sequence>
     </xs:complexType>
 

Example 2: Customize mapping of XMLGregorianCalendar at package level

     package foo;
     @jakarta.xml.bind.annotation.XmlSchemaType(
          name="date", type=javax.xml.datatype.XMLGregorianCalendar.class)
     }
 
Since:
1.6, JAXB 2.0
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    Used in type() to signal that the type be inferred from the signature of the property.
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
     
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
     
    If this annotation is used at the package level, then value of the type() must be specified.
  • Element Details

    • namespace

      String namespace
      Default:
      "http://www.w3.org/2001/XMLSchema"
    • type

      Class<?> type
      If this annotation is used at the package level, then value of the type() must be specified.
      Default:
      jakarta.xml.bind.annotation.XmlSchemaType.DEFAULT.class