Maps a package name to a XML namespace.
Usage
The XmlSchema annotation can be used with the following program
elements:
This is a package level annotation and follows the recommendations
and restrictions contained in JSR 175, section III, "Annotations".
Thus the usage is subject to the following constraints and
recommendations.
- There can only be one package declaration as noted in JSR
175, section III, "Annotations".
- JSR 175 recommends package-info.java for package level
annotations. JAXB Providers that follow this recommendation
will allow the package level annotations to be defined in
package-info.java.
Example 1: Customize name of XML namespace to which
package is mapped.
@javax.xml.bind.annotation.XmlSchema (
namespace = "http://www.example.com/MYPO1"
)
<!-- XML Schema fragment -->
<schema
xmlns=...
xmlns:po=....
targetNamespace="http://www.example.com/MYPO1"
>
<!-- prefixes generated by default are implementation
depedenent -->
Example 2: Customize namespace prefix, namespace URI
mapping
// Package level annotation
@javax.xml.bind.annotation.XmlSchema (
xmlns = {
@javax.xml.bind.annotation.XmlNs(prefix = "po",
namespaceURI="http://www.example.com/myPO1"),
@javax.xml.bind.annotation.XmlNs(prefix="xs",
namespaceURI="http://www.w3.org/2001/XMLSchema")
)
)
<!-- XML Schema fragment -->
<schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:po="http://www.example.com/PO1"
targetNamespace="http://www.example.com/PO1">
Example 3: Customize elementFormDefault
@javax.xml.bind.annotation.XmlSchema (
elementFormDefault=XmlNsForm.UNQUALIFIED
...
)
<!-- XML Schema fragment -->
<schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:po="http://www.example.com/PO1"
elementFormDefault="unqualified">