<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Annotation Definition</title>
<style type="text/css">@import url("../../book.css");</style>
<style type="text/css">@import url("../../schema.css");</style>
</HEAD>
<BODY>
<H1 style="text-align:center">Annotation Definition</H1>
<p></p>
<h6 class="CaptionFigColumn SchemaHeader">Identifier: </h6>org.eclipse.jst.ws.annotations.core.annotationDefinition<p></p>
<h6 class="CaptionFigColumn SchemaHeader">Since: </h6>1.0
<p></p>

<h6 class="CaptionFigColumn SchemaHeader">Description: </h6>This extension point allows clients to contribute annotations <? extends java.lang.annotation.Annotation> which are in turn consumed by the UI.<p></p>
<h6 class="CaptionFigColumn SchemaHeader">Configuration Markup:</h6>
<p></p>
<p class="code SchemaDtd">&lt;!ELEMENT <a name="e.extension">extension</a> (<a href="#e.annotation">annotation</a>*)&gt;</p>
<p class="code SchemaDtd">&lt;!ATTLIST extension</p>
<p class="code SchemaDtdAttlist">point&nbsp;CDATA #REQUIRED</p><p class="code SchemaDtdAttlist">id&nbsp;&nbsp;&nbsp;&nbsp;CDATA #IMPLIED</p><p class="code SchemaDtdAttlist">name&nbsp;&nbsp;CDATA #IMPLIED</p>&gt;</p>
<p></p>
<ul class="ConfigMarkupAttlistDesc">
</ul>
<br><p class="code SchemaDtd">&lt;!ELEMENT <a name="e.annotation">annotation</a> (<a href="#e.targetFilter">targetFilter</a>*)&gt;</p>
<p class="code SchemaDtd">&lt;!ATTLIST annotation</p>
<p class="code SchemaDtdAttlist">class&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CDATA #REQUIRED</p><p class="code SchemaDtdAttlist">category&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IDREF #REQUIRED</p><p class="code SchemaDtdAttlist">name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CDATA #REQUIRED</p><p class="code SchemaDtdAttlist">restrictedTo&nbsp;(CLASS_ONLY|INTERFACE_ONLY|ENUM_ONLY) </p>&gt;</p>
<p></p>
<ul class="ConfigMarkupAttlistDesc">
<li><b>class</b> - the fully qualified annotation class name that extends <code>java.lang.annotation.Annotation</code></li>
<li><b>category</b> - the id of a <tt>annotationCategory</tt></li>
<li><b>name</b> - The simple name of the annotation class.</li>
<li><b>restrictedTo</b> - Used in addition to the java.lang.annotation.ElementType(s) that are specified in the value element of the  @Target annotation on the contributed annotation to add further restrictions.</li>
</ul>
<br><p class="code SchemaDtd">&lt;!ELEMENT <a name="e.targetFilter">targetFilter</a> EMPTY&gt;</p>
<p class="code SchemaDtd">&lt;!ATTLIST targetFilter</p>
<p class="code SchemaDtdAttlist">target&nbsp;(TYPE|FIELD|METHOD|PARAMETER|CONSTRUCTOR|LOCAL_VARIABLE|ANNOTATION_TYPE|PACKAGE) </p>&gt;</p>
<p></p>
<ul class="ConfigMarkupAttlistDesc">
<li><b>target</b> - The annotations core automatically knows where to permit annotations as it inspects the contributed annotation and
                  reads the @Target that has been defined for it. These filters are only used when there might be an extra restriction
                  you want to add, for example, if version 2 of an annotation allows adding the annotation to a field, and then version
                  3 deprecates that usage, you can add a filter here to disallow the usage in the UI.</li>
</ul>
<br><h6 class="CaptionFigColumn SchemaHeader">Examples: </h6>The following is an example of an annotation definition contribution:

<p>
<pre class="Example"><span class="code SchemaTag">
   &lt;extension point=</span><span class="code SchemaCstring">&quot;org.eclipse.jst.ws.annotations.core.annotationDefinition&quot;</span><span class="code SchemaTag">&gt;
      &lt;annotation
            category=</span><span class="code SchemaCstring">&quot;jaxws.category&quot;</span><span class="code SchemaTag">
            class=</span><span class="code SchemaCstring">&quot;javax.jws.WebService&quot;</span><span class="code SchemaTag">
            name=</span><span class="code SchemaCstring">&quot;WebService&quot;</span><span class="code SchemaTag">&gt;
      &lt;/annotation&gt;
   &lt;/extension&gt;
</span></pre>
</p>
<p></p>

<br>
<p class="note SchemaCopyright">
Copyright (c) 2009 Shane Clarke. <br>
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>

</p>
</BODY>
</HTML>
