<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.pde.ui">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.pde.ui" id="templates" name="Extension Templates"/>
      </appInfo>
      <documentation>
         This extension point registers plug-in project content templates that are used to generate code for the new extensions. Templates are used in two contexts:
&lt;p&gt;
&lt;ul&gt;
&lt;li&gt; One or more templates are combined in a wizard that is contributed as plug-in content wizard using &lt;code&gt;org.eclipse.pde.ui.pluginContent&lt;/code&gt; extension point. These templates create interesting content for newly created plug-in projects. In addition, all the templates contributed using this extension point can be seen in a special version of the plug-in content wizard that lists the templates and allows users to freely combine the templates by checking them in the list.&lt;/li&gt;
&lt;li&gt; A New extension can be added to an existing plug-in using a template.
&lt;/li&gt;
&lt;/ul&gt;
      </documentation>
   </annotation>

   <element name="extension">
      <complexType>
         <sequence>
            <element ref="template" 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>
               <appInfo>
                  <meta.attribute translatable="true"/>
               </appInfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="template">
      <annotation>
         <appInfo>
            <meta.element labelAttribute="name" icon="icon"/>
         </appInfo>
      </annotation>
      <complexType>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  a unique name that will be used to identify this template.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  a translatable name that will be used in UI representation
of this template.
               </documentation>
               <appInfo>
                  <meta.attribute translatable="true"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="icon" type="string">
            <annotation>
               <documentation>
                  a relative path of an icon that will be used to visually 
represent the template.
               </documentation>
               <appInfo>
                  <meta.attribute kind="resource"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  a fully qualified name of the class that implements &lt;code&gt;org.eclipse.pde.ui.templates.ITemplateSection&lt;/code&gt; interface.
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.eclipse.pde.ui.templates.ITemplateSection"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="contributingId" type="string" use="required">
            <annotation>
               <documentation>
                  the identifier of the extension point that this template will contribute into.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

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

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         The following is an example of the template registration:
&lt;p&gt;
&lt;pre&gt;
   &lt;extension
         point=&quot;org.eclipse.pde.ui.templates&quot;&gt;
      &lt;template
            contributingId=&quot;org.eclipse.ui.actionSets&quot;
            name=&quot;XYZ Action Set Generator&quot;
   class=&quot;com.example.xyz.XYZActionSetTemplate&quot;
            id=&quot;com.example.xyz.ActionSetTemplate&quot;&gt;
      &lt;/template&gt;
   &lt;/extension&gt;
&lt;/pre&gt;
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         Each template must provide a class that implements &lt;code&gt;org.eclipse.pde.ui.templates.ITemplateSection&lt;/code&gt; interface. However, abstract classes that implement the interface and can be extended are available.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="implementation"/>
      </appInfo>
      <documentation>
         PDE UI contributes a number of templates that create extensions for the most popular extension points like editors, views, preferences etc.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="copyright"/>
      </appInfo>
      <documentation>
         Copyright (c) 2004 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>
