287 lines
13 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
javax.xml.bind.annotation
</div>
<h2 class="title" title="Annotation Type XmlSchema">Annotation Type XmlSchema</h2>
</div><div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr/> <br/> <pre><a href="../../../../java/lang/annotation/Retention.html" title="annotation in java.lang.annotation">@Retention</a>(<a href="../../../../java/lang/annotation/Retention.html#value--">value</a>=<a href="../../../../java/lang/annotation/RetentionPolicy.html#RUNTIME">RUNTIME</a>)
<a href="../../../../java/lang/annotation/Target.html" title="annotation in java.lang.annotation">@Target</a>(<a href="../../../../java/lang/annotation/Target.html#value--">value</a>=<a href="../../../../java/lang/annotation/ElementType.html#PACKAGE">PACKAGE</a>)
public @interface <span class="memberNameLabel">XmlSchema</span></pre>
<div class="block">
<p> <span>将包名称映射到XML命名空间。</span> </p>
<h3> <span>用法</span> </h3>
<p> <span>XmlSchema注释可以与以下程序元素一起使用</span> </p>
<ul>
<li> <span></span> </li>
</ul>
<p> <span>这是一个包级注释并遵循JSR 175第三部分“注释”中的建议和限制。</span> <span>因此,使用受到以下限制和建议的约束。</span> </p>
<ul>
<li> <span>JSR 175第三部分“注释”中只能列出一个包装声明。</span> </li>
<li> <span>JSR 175建议使用package-info.java进行包级注释。</span> <span>遵循此建议的JAXB提供程序将允许在package-info.java中定义包级别注释。</span> </li>
</ul>
<p></p>
<p> <span><b>示例1</b>自定义包映射到的XML命名空间的名称。</span> </p>
<pre> <span>@javax.xml.bind.annotation.XmlSchema (
namespace = "http://www.example.com/MYPO1"
)
&lt;!-- XML Schema fragment --&gt;
&lt;schema
xmlns=...
xmlns:po=....
targetNamespace="http://www.example.com/MYPO1"
&gt;
&lt;!-- prefixes generated by default are implementation
depedenent --&gt;</span> </pre>
<p> <span><b>示例2</b>自定义命名空间前缀命名空间URI映射</span> </p>
<pre> <span>// 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")
)
)
&lt;!-- XML Schema fragment --&gt;
&lt;schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:po="http://www.example.com/PO1"
targetNamespace="http://www.example.com/PO1"&gt;</span> </pre>
<p> <span><b>示例3</b>自定义elementFormDefault</span> </p>
<pre> <span>@javax.xml.bind.annotation.XmlSchema (
elementFormDefault=XmlNsForm.UNQUALIFIED
...
)
&lt;!-- XML Schema fragment --&gt;
&lt;schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:po="http://www.example.com/PO1"
elementFormDefault="unqualified"&gt;</span> </pre>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
JAXB2.0
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== ANNOTATION TYPE FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.field.summary">
<!-- --> </a> <h3>Field Summary</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Field Summary table, listing fields, and an explanation">
<caption>
<span>Fields</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Fields and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/xml/bind/annotation/XmlSchema.html#NO_LOCATION">NO_LOCATION</a></span></code>
<div class="block">
<a href="../../../../javax/xml/bind/annotation/XmlSchema.html#location--"><code>location()</code></a>属性的默认值,表示模式生成器将在此命名空间中生成组件。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul>
<!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.optional.element.summary">
<!-- --> </a> <h3>Optional Element Summary</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Optional Element Summary table, listing optional elements, and an explanation">
<caption>
<span>Optional Elements</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Optional Element and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../javax/xml/bind/annotation/XmlNsForm.html" title="enum in javax.xml.bind.annotation">XmlNsForm</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/xml/bind/annotation/XmlSchema.html#attributeFormDefault--">attributeFormDefault</a></span></code>
<div class="block">
属性的命名空间资格。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../javax/xml/bind/annotation/XmlNsForm.html" title="enum in javax.xml.bind.annotation">XmlNsForm</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/xml/bind/annotation/XmlSchema.html#elementFormDefault--">elementFormDefault</a></span></code>
<div class="block">
元素的命名空间资格。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/xml/bind/annotation/XmlSchema.html#location--">location</a></span></code>
<div class="block">
表示此命名空间(由
<a href="../../../../javax/xml/bind/annotation/XmlSchema.html#namespace--"><code>namespace()</code>指定</a> )具有在该位置可用的模式已经可用。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/xml/bind/annotation/XmlSchema.html#namespace--">namespace</a></span></code>
<div class="block">
XML命名空间的名称。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../javax/xml/bind/annotation/XmlNs.html" title="annotation in javax.xml.bind.annotation">XmlNs</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/xml/bind/annotation/XmlSchema.html#xmlns--">xmlns</a></span></code>
<div class="block">
自定义命名空间URI前缀关联。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ ANNOTATION TYPE FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.field.detail">
<!-- --> </a> <h3>字段详细信息</h3> <a name="NO_LOCATION">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>NO_LOCATION</h4> <pre>public static final <a href="../../../../java/lang/String.html" title="class in java.lang">String</a> NO_LOCATION</pre>
<div class="block">
<a href="../../../../javax/xml/bind/annotation/XmlSchema.html#location--"><code>location()</code></a>属性的默认值,表示模式生成器将在此命名空间中生成组件。
</div> </li>
</ul> </li>
</ul>
<!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.element.detail">
<!-- --> </a> <h3>Element Detail</h3> <a name="xmlns--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>xmlns</h4> <pre>public abstract <a href="../../../../javax/xml/bind/annotation/XmlNs.html" title="annotation in javax.xml.bind.annotation">XmlNs</a>[] xmlns</pre>
<div class="block">
<span>自定义命名空间URI前缀关联。</span>
<span>默认情况下XML命名空间的命名空间前缀由JAXB Provider以实现依赖的方式生成。</span>
</div>
<dl>
<dt>
Default:
</dt>
<dd>
{}
</dd>
</dl> </li>
</ul> </li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="namespace--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>namespace</h4> <pre>public abstract <a href="../../../../java/lang/String.html" title="class in java.lang">String</a> namespace</pre>
<div class="block">
XML命名空间的名称。
</div>
<dl>
<dt>
Default:
</dt>
<dd>
“”
</dd>
</dl> </li>
</ul> </li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="elementFormDefault--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>elementFormDefault</h4> <pre>public abstract <a href="../../../../javax/xml/bind/annotation/XmlNsForm.html" title="enum in javax.xml.bind.annotation">XmlNsForm</a> elementFormDefault</pre>
<div class="block">
<span>元素的命名空间资格。</span>
<span>默认情况下XML Schema片段中不存在元素默认属性。</span>
</div>
<dl>
<dt>
Default:
</dt>
<dd>
javax.xml.bind.annotation.XmlNsForm.UNSET
</dd>
</dl> </li>
</ul> </li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="attributeFormDefault--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>attributeFormDefault</h4> <pre>public abstract <a href="../../../../javax/xml/bind/annotation/XmlNsForm.html" title="enum in javax.xml.bind.annotation">XmlNsForm</a> attributeFormDefault</pre>
<div class="block">
<span>属性的命名空间资格。</span>
<span>默认情况下XML Schema片段中将不存在attributesFormDefault。</span>
</div>
<dl>
<dt>
Default:
</dt>
<dd>
javax.xml.bind.annotation.XmlNsForm.UNSET
</dd>
</dl> </li>
</ul> </li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="location--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>location</h4> <pre>public abstract <a href="../../../../java/lang/String.html" title="class in java.lang">String</a> location</pre>
<div class="block">
<span>表示此命名空间(由<a href="../../../../javax/xml/bind/annotation/XmlSchema.html#namespace--"><code>namespace()</code>指定</a> )具有在该位置可用的模式。</span>
<p> <span>这指示JAXB模式生成器简单地引用指向的模式而不是将组件生成到模式中。</span> <span>假设该模式与模式生成器将生成的模式相同(相同的元素名称,相同的类型名称...</span> </p>
<p> <span>当一组Java类最初是从现有模式生成的手工编写为匹配外部定义的模式或者手动修改生成的模式时将使用此功能。</span> </p>
<p> <span>值可以是任何绝对URI<tt>http://example.org/some.xsd</tt></span> <span>也可以指定空字符串,以指示模式是外部可用的,但位置未指定(因此生成模式的读者有责任定位它)最后,此属性的默认值<tt>"##generate"</tt>表示模式生成器将为此命名空间生成组件如在JAXB 2.0中所做的那样)。</span> </p>
<p> <span>允许多个包上的多个<a href="../../../../javax/xml/bind/annotation/XmlSchema.html" title="javax.xml.bind.annotation中的注释"><code>XmlSchema</code></a>注释管理相同的<a href="../../../../javax/xml/bind/annotation/XmlSchema.html#namespace--"><code>namespace()</code></a></span> <span>在这种情况下,所有这些都必须具有相同的<a href="../../../../javax/xml/bind/annotation/XmlSchema.html#location--"><code>location()</code></a>值。</span> </p>
<h3> <span>注意实现者</span> </h3>
<p> <span>更确切地说,值必须是<tt><tt>"""##generate"</tt></tt><a href="http://www.w3.org/TR/xmlschema-2/#anyURI">a valid lexical representation of <tt>xs:anyURI</tt></a><tt>&lt;scheme&gt;:</tt>开始。</span> </p>
<p> <span>模式生成器预计将生成一个对应的<tt>&lt;xs:import namespace="..." schemaLocation="..."/&gt;</tt> (或者如果指定了空字符串,则完全没有<tt>schemaLocation</tt>属性)。但是,允许模式生成器在<tt>schemaLocation</tt>属性(包括不生成此属性)中使用不同的值,示例,以便用户可以通过命令行界面指定资源的本地副本。</span> </p>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
JAXB2.1
</dd>
</dl>
<dl>
<dt>
Default:
</dt>
<dd>
“##生成”
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>