Annotation Type XmlSchemaType


@Retention(value=RUNTIME)
 @Target(value={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;
     @javax.xml.bind.annotation.XmlSchemaType(
          name="date", type=javax.xml.datatype.XMLGregorianCalendar.class)
     }
Since:
JAXB2.0

Required Elements

Modifier and Type Required Element and Description
String name

Optional Elements

Modifier and Type Optional Element and Description
String namespace
Class type

If this annotation is used at the package level, then value of the type() must be specified.

Elements

name

public abstract String name

namespace

public abstract String namespace
Default:
"http://www.w3.org/2001/XMLSchema"

type

public abstract Class type

If this annotation is used at the package level, then value of the type() must be specified.

Default:
javax.xml.bind.annotation.XmlSchemaType.DEFAULT.class

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/javase/8/docs/api/javax/xml/bind/annotation/XmlSchemaType.html