This annotation can only be used with a package. It defines parameters that are derived from the xsd:schema
element. It must be written on a file package-info.java
situated in the package. Below is an example, specifying the namespace
and elementFormDefault
elements.
@javax.xml.bind.annotation.XmlSchema(
namespace = "http://www.laune.at/hospital",
elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package hospital;
This annotation is equivalent to an xs:schema
element
<xs:schema elementFormDefault="qualified"
targetNamespace="http://www.laune.at/hospital"
xmlns:tns="http://www.laune.at/hospital"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
version="1.0" >
For defining namespace prefixes you use the xmlns
element of the XmlSchema
annotation. It contains an array of XmlNs
annotations, each of which contains a prefix
and anamespaceURI
element. The previous example is extended with a namespace definition for the prefix med
:
@javax.xml.bind.annotation.XmlSchema(
namespace = "http://www.laune.at/hospital",
xmlns = { @javax.xml.bind.annotation.XmlNs( prefix = "med",
namespaceURI = "http://www.laune.at/med" ) },
elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package hospital;
This corresponds to using xmlns:med="http://www.laune.at/med"
as an attribute in the xs:schema
element.