annotate src/share/classes/javax/xml/bind/annotation/package.html @ 0:0961a4a21176

Initial load
author duke
date Sat, 01 Dec 2007 00:00:00 +0000
parents
children 31822b475baa
rev   line source
duke@0 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
duke@0 2 <html>
duke@0 3 <head>
duke@0 4 <!--
duke@0 5 Copyright 2005-2006 Sun Microsystems, Inc. All Rights Reserved.
duke@0 6 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
duke@0 7
duke@0 8 This code is free software; you can redistribute it and/or modify it
duke@0 9 under the terms of the GNU General Public License version 2 only, as
duke@0 10 published by the Free Software Foundation. Sun designates this
duke@0 11 particular file as subject to the "Classpath" exception as provided
duke@0 12 by Sun in the LICENSE file that accompanied this code.
duke@0 13
duke@0 14 This code is distributed in the hope that it will be useful, but WITHOUT
duke@0 15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
duke@0 16 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
duke@0 17 version 2 for more details (a copy is included in the LICENSE file that
duke@0 18 accompanied this code).
duke@0 19
duke@0 20 You should have received a copy of the GNU General Public License version
duke@0 21 2 along with this work; if not, write to the Free Software Foundation,
duke@0 22 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
duke@0 23
duke@0 24 Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
duke@0 25 CA 95054 USA or visit www.sun.com if you need additional information or
duke@0 26 have any questions.
duke@0 27
duke@0 28 -->
duke@0 29 </head>
duke@0 30
duke@0 31 <body bgcolor="white">
duke@0 32
duke@0 33 <p>
duke@0 34 Defines annotations for customizing Java program elements to XML Schema mapping.
duke@0 35
duke@0 36 <h2>Package Specification</h2>
duke@0 37 <p>The following table shows the JAXB mapping annotations
duke@0 38 that can be associated with each program element. </p>
duke@0 39
duke@0 40 <table border="1" cellpadding="4" cellspacing="3">
duke@0 41 <tbody>
duke@0 42 <tr>
duke@0 43 <td><b>Program Element</td>
duke@0 44 <td><b>JAXB annotation</b></td>
duke@0 45 </tr>
duke@0 46 <tr valign="top">
duke@0 47 <td><b>Package</td>
duke@0 48 <td>
duke@0 49 <table>
duke@0 50 <tr valign="top">
duke@0 51 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlAccessorOrder.html">XmlAccessorOrder</b></td>
duke@0 52 </tr>
duke@0 53 <tr valign="top">
duke@0 54 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlAccessorType.html">XmlAccessorType</b></td>
duke@0 55 </tr>
duke@0 56 <tr valign="top">
duke@0 57 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlSchema.html">XmlSchema</b></td>
duke@0 58 </tr>
duke@0 59 <tr valign="top">
duke@0 60 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlSchemaType.html">XmlSchemaType</b></td>
duke@0 61 </tr>
duke@0 62 <tr valign="top">
duke@0 63 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlSchemaTypes.html">XmlSchemaTypes</b></td>
duke@0 64 </tr>
duke@0 65 <tr valign="top">
duke@0 66 <td><b><a HREF="../../../../javax/xml/bind/annotation/adapters/XmlJavaTypeAdapter.html">XmlJavaTypeAdapter</b></td>
duke@0 67 </tr>
duke@0 68 <tr valign="top">
duke@0 69 <td><b><a HREF="../../../../javax/xml/bind/annotation/adapters/XmlJavaTypeAdapters.html">XmlJavaTypeAdapters</b></td>
duke@0 70 </tr>
duke@0 71 </table>
duke@0 72 </td>
duke@0 73 </tr>
duke@0 74
duke@0 75 <tr valign="top">
duke@0 76 <td><b>Class</td>
duke@0 77 <td>
duke@0 78 <table>
duke@0 79 <tr valign="top">
duke@0 80 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlAccessorOrder.html">XmlAccessorOrder</b></td>
duke@0 81 </tr>
duke@0 82 <tr valign="top">
duke@0 83 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlAccessorType.html">XmlAccessorType</b></td>
duke@0 84 </tr>
duke@0 85 <tr valign="top">
duke@0 86 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlInlineBinaryData.html">XmlInlineBinaryData</b></td>
duke@0 87 </tr>
duke@0 88 <tr valign="top">
duke@0 89 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlRootElement.html">XmlRootElement</b></td>
duke@0 90 </tr>
duke@0 91 <tr valign="top">
duke@0 92 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlType.html">XmlType</b></td>
duke@0 93 </tr>
duke@0 94 <tr valign="top">
duke@0 95 <td><b><a HREF="../../../../javax/xml/bind/annotation/adapters/XmlJavaTypeAdapter.html">XmlJavaTypeAdapter</b></td>
duke@0 96 </tr>
duke@0 97 </table>
duke@0 98 </td>
duke@0 99 </tr>
duke@0 100
duke@0 101 <tr valign="top">
duke@0 102 <td><b>Enum type</td>
duke@0 103 <td>
duke@0 104 <table>
duke@0 105 <tr valign="top">
duke@0 106 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlEnum.html">XmlEnum</b></td>
duke@0 107 </tr>
duke@0 108 <tr valign="top">
duke@0 109 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlEnumValue.html">XmlEnumValue (enum constant only)</b></td>
duke@0 110 </tr>
duke@0 111 <tr valign="top">
duke@0 112 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlRootElement.html">XmlRootElement</b></td>
duke@0 113 </tr>
duke@0 114 <tr valign="top">
duke@0 115 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlType.html">XmlType</b></td>
duke@0 116 </tr>
duke@0 117 <tr valign="top">
duke@0 118 <td><b><a HREF="../../../../javax/xml/bind/annotation/adapters/XmlJavaTypeAdapter.html">XmlJavaTypeAdapter</b></td>
duke@0 119 </tr>
duke@0 120 </table>
duke@0 121 </td>
duke@0 122 </tr>
duke@0 123
duke@0 124 <tr valign="top">
duke@0 125 <td><b>JavaBean Property/field</td>
duke@0 126 <td>
duke@0 127 <table>
duke@0 128 <tr valign="top">
duke@0 129 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlElement.html">XmlElement</b></td>
duke@0 130 </tr>
duke@0 131 <tr valign="top">
duke@0 132 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlElements.html">XmlElements</b></td>
duke@0 133 </tr>
duke@0 134 <tr valign="top">
duke@0 135 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlElementRef.html">XmlElementRef</b></td>
duke@0 136 </tr>
duke@0 137 <tr valign="top">
duke@0 138 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlElementRefs.html">XmlElementRefs</b></td>
duke@0 139 </tr>
duke@0 140 <tr valign="top">
duke@0 141 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlElementWrapper.html">XmlElementWrapper</b></td>
duke@0 142 </tr>
duke@0 143 <tr valign="top">
duke@0 144 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlAnyElement.html">XmlAnyElement</b></td>
duke@0 145 </tr>
duke@0 146 <tr valign="top">
duke@0 147 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlAttribute.html">XmlAttribute</b></td>
duke@0 148 </tr>
duke@0 149 <tr valign="top">
duke@0 150 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlAnyAttribute.html">XmlAnyAttribute</b></td>
duke@0 151 </tr>
duke@0 152 <tr valign="top">
duke@0 153 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlTransient.html">XmlTransient</b></td>
duke@0 154 </tr>
duke@0 155 <tr valign="top">
duke@0 156 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlValue.html">XmlValue</b></td>
duke@0 157 </tr>
duke@0 158 <tr valign="top">
duke@0 159 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlID.html">XmlID</b></td>
duke@0 160 </tr>
duke@0 161 <tr valign="top">
duke@0 162 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlIDREF.html">XmlIDREF</b></td>
duke@0 163 </tr>
duke@0 164 <tr valign="top">
duke@0 165 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlList.html">XmlList</b></td>
duke@0 166 </tr>
duke@0 167 <tr valign="top">
duke@0 168 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlMixed.html">XmlMixed</b></td>
duke@0 169 </tr>
duke@0 170 <tr valign="top">
duke@0 171 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlMimeType.html">XmlMimeType</b></td>
duke@0 172 </tr>
duke@0 173 <tr valign="top">
duke@0 174 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlAttachmentRef.html">XmlAttachmentRef</b></td>
duke@0 175 </tr>
duke@0 176 <tr valign="top">
duke@0 177 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlInlineBinaryData.html">XmlInlineBinaryData</b></td>
duke@0 178 </tr>
duke@0 179 <tr valign="top">
duke@0 180 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlElementDecl.html">XmlElementDecl (only on method)</b></td>
duke@0 181 </tr>
duke@0 182 <tr valign="top">
duke@0 183 <td><b><a HREF="../../../../javax/xml/bind/annotation/adapters/XmlJavaTypeAdapter.html">XmlJavaTypeAdapter</b></td>
duke@0 184 </tr>
duke@0 185 </table>
duke@0 186 </td>
duke@0 187 </tr>
duke@0 188
duke@0 189 <tr valign="top">
duke@0 190 <td><b>Parameter</td>
duke@0 191 <td>
duke@0 192 <table>
duke@0 193 <tr valign="top">
duke@0 194 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlList.html">XmlList</b></td>
duke@0 195 </tr>
duke@0 196 <tr valign="top">
duke@0 197 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlAttachmentRef.html">XmlAttachmentRef</b></td>
duke@0 198 </tr>
duke@0 199 <tr valign="top">
duke@0 200 <td><b><a HREF="../../../../javax/xml/bind/annotation/XmlMimeType.html">XmlMimeType</b></td>
duke@0 201 </tr>
duke@0 202 <tr valign="top">
duke@0 203 <td><b><a HREF="../../../../javax/xml/bind/annotation/adapters/XmlJavaTypeAdapter.html">XmlJavaTypeAdapter</b></td>
duke@0 204 </tr>
duke@0 205 </table>
duke@0 206 </td>
duke@0 207 </tr>
duke@0 208
duke@0 209 </tbody>
duke@0 210 </table>
duke@0 211 <h3>Terminology</h3>
duke@0 212 <p>
duke@0 213 <b>JavaBean property and field:</b> For the purposes of
duke@0 214 mapping, there is no semantic difference between a field and
duke@0 215 a JavaBean property. Thus, an annotation that can be applied
duke@0 216 to a JavaBean property can always be applied to a
duke@0 217 field. Hence in the Javadoc documentation, for brevity, the
duke@0 218 term JavaBean property or property is used to mean either JavaBean
duke@0 219 property or a field. Where required, both are explicitly
duke@0 220 mentioned.
duke@0 221 <p>
duke@0 222 <b>top level class:</b> For the purpose of mapping, there is
duke@0 223 no semantic difference between a top level class and a
duke@0 224 static nested class. Thus, an annotation that can be applied
duke@0 225 to a top level class, can always be applied to a nested
duke@0 226 static class. Hence in the Javadoc documentation, for
duke@0 227 brevity, the term "top level class" or just class is used to
duke@0 228 mean either a top level class or a nested static
duke@0 229 class.
duke@0 230 <p>
duke@0 231 <b>mapping annotation:</b>A JAXB 2.0 defined program
duke@0 232 annotation based on the JSR 175 programming annotation
duke@0 233 facility.
duke@0 234 <h3>Common Usage Constraints</h3>
duke@0 235 <p>The following usage constraints are defined here since
duke@0 236 they apply to more than annotation:
duke@0 237 <ul>
duke@0 238 <li> For a property, a given annotation can be applied to
duke@0 239 either read or write property but not both. </li>
duke@0 240
duke@0 241 <li> A property name must be different from any other
duke@0 242 property name in any of the super classes of the
duke@0 243 class being mapped. </li>
duke@0 244
duke@0 245 <li> A mapped field name or the decapitalized name of a
duke@0 246 mapped property must be unique within a class. </li>
duke@0 247 </ul>
duke@0 248 <h3>Notations</h3>
duke@0 249 <b>Namespace prefixes</b>
duke@0 250 <p>The following namespace prefixes are used in the XML Schema
duke@0 251 fragments in this package.<p>
duke@0 252
duke@0 253 <table border="1" cellpadding="4" cellspacing="3">
duke@0 254 <tbody>
duke@0 255 <tr>
duke@0 256 <td><b>Prefix</td>
duke@0 257 <td><b>Namespace</b></td>
duke@0 258 <td><b>Notes</b></td>
duke@0 259 </tr>
duke@0 260
duke@0 261 <tr valign="top">
duke@0 262 <td>xs</td>
duke@0 263 <td>http://www.w3.org/2001/XMLSchema</td>
duke@0 264 <td>Namespace of XML Schema namespace</td>
duke@0 265 </tr>
duke@0 266 <tr valign="top">
duke@0 267 <td>ref</td>
duke@0 268 <td>http://ws-i.org/profiles/basic/1.1/xsd</td>
duke@0 269 <td>Namespace for swaref schema component</td>
duke@0 270 </tr>
duke@0 271 <tr valign="top">
duke@0 272 <td>xsi</td>
duke@0 273 <td>http://www.w3.org/2001/XMLSchema-instance</td>
duke@0 274 <td>XML Schema namespace for instances</td>
duke@0 275 </tr>
duke@0 276 </tbody>
duke@0 277 </table>
duke@0 278
duke@0 279 <!-- Put @see and @since tags down here. -->
duke@0 280 @since JAXB 2.0
duke@0 281 </body>
duke@0 282 </html>
duke@0 283
duke@0 284