<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.ant.core">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.ant.core" id="antTypes" name="Ant Types"/>
      </appInfo>
      <documentation>
         Allows plug-ins to define arbitrary Ant datatypes for 
use by the Ant infrastructure.  The standard Ant 
infrastructure allows for the addition of arbitrary 
datatypes.  Unfortunately, it is unlikely that the 
Ant Core plug-in would have the classes required 
by these datatypes on its classpath (or that of any 
of its prerequisites).  To address this, clients 
should define an extension which plugs into this 
extension-point and maps a datatype name onto a class.  
The Ant plug-in can then request that the declaring 
plug-in load the specified class.
      </documentation>
   </annotation>

   <element name="extension">
      <complexType>
         <sequence>
            <element ref="antType" minOccurs="0" 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="antType">
      <annotation>
         <appInfo>
            <meta.element labelAttribute="name"/>
         </appInfo>
      </annotation>
      <complexType>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  name of the type to be defined
               </documentation>
            </annotation>
         </attribute>
          <attribute name="uri" type="string">
            <annotation>
               <documentation>
                   The uri that this definition should live in. Only used if using Ant newer than 1.6.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  the fully qualified name of a Java class implementing 
the datatype.  Generally this class must be a subclass of
&lt;code&gt;org.apache.tools.ant.types.DataType&lt;/code&gt;.
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.apache.tools.ant.types.DataType"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="library" type="string" use="required">
            <annotation>
               <documentation>
                  a path relative to the plug-in install location for the library containing the type.
               </documentation>
               <appInfo>
                  <meta.attribute kind="resource"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="headless" type="boolean">
            <annotation>
               <documentation>
                  indicates whether this type is suitable for use in a &quot;headless&quot; Ant environment. If running headless and the attribute is &lt;code&gt;false&lt;/code&gt;, the type will not be loaded or defined. As well, the plugin class loader will not be added as a parent classloader to the Ant classloader. The implied value is &lt;code&gt;true&lt;/code&gt;, when not specified.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="eclipseRuntime" type="boolean">
            <annotation>
               <documentation>
                  indicates whether this type requires an Eclipse runtime (i.e. must be run in the same VM as Eclipse). The implied value is &lt;code&gt;true&lt;/code&gt;, when not specified.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         The following is an example of an Ant types extension point: 
&lt;p&gt;
&lt;pre&gt;
   &lt;extension point=&quot;org.eclipse.ant.core.antTypes&quot;&gt;
      &lt;antType name=&quot;coolType&quot; class=&quot;com.example.CoolType&quot; library=&quot;lib/antSupport.jar&quot;/&gt;
   &lt;/extension&gt; 
&lt;/pre&gt;
&lt;/p&gt;
      </documentation>
   </annotation>

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