<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.jst.common.annotations.controller">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.jst.common.annotations.controller" id="AnnotationTagSet" name="Annotations Tag Set"/>
      </appInfo>
      <documentation>
         Allows clients to define a tag set for an annotation 
tag.  A tag set named X would contain all of the tags that
look like &lt;code&gt;@X.tag&lt;/code&gt;.  So the &lt;code&gt;ejb&lt;/code&gt;
tag set would contain the &lt;code&gt;@ejb.bean&lt;/code&gt; tag, 
the &lt;code&gt;@ejb.persistence&lt;/code&gt; tag, the &lt;code&gt;@ejb.pk&lt;/code&gt; tag, etc...
      </documentation>
   </annotation>

   <element name="extension">
      <complexType>
         <sequence>
            <element ref="AnnotationTagSet" minOccurs="1" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  a fully qualified identifier of the target extension point
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string">
            <annotation>
               <documentation>
                  an optional identifier of the extension instance
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string">
            <annotation>
               <documentation>
                  an optional name of the extension instance
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="AnnotationTagSet">
      <complexType>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  Name of the tagset.  The name for the tagset that contains the &lt;code&gt;@ejb.bean&lt;/code&gt; tag would be &lt;code&gt;ejb&lt;/code&gt;.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="displayName" type="string">
            <annotation>
               <documentation>
                  The text of the display name for the tag, or a resource
key pointing to the localized display name inside of the
declaring plugin&apos;s resource bundle.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="description" type="string">
            <annotation>
               <documentation>
                  A description of the tag set.  Can be the text of the 
description, or a key for the declaring plugin&apos;s resource bundle that points to the localized text for the tag set description.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="parentTagset" type="string">
            <annotation>
               <documentation>
                  This can be used optionally to set a tagset as a parent to this one, which will enforce the parent as a prerequisite tag set which will be handled first.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="validValuesHelper" type="string">
            <annotation>
               <documentation>
                  This can be used optionally to add a programmatic dynamic helper to supply the user with a set of valid values for attributes in this tag set, depending on attribute selection.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appInfo>
         <meta.section type="since"/>
      </appInfo>
      <documentation>
         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="implementation"/>
      </appInfo>
      <documentation>
         
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="copyright"/>
      </appInfo>
      <documentation>
         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;
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 &lt;a
href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
      </documentation>
   </annotation>

</schema>
