<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.jst.j2ee">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.jst.j2ee" id="TargetRuntimeExtHandler" name="TargetRuntimeExtensionHandler"/>
      </appInfo>
      <documentation>
         Here is a sample of this extension

&lt;extension
         id=&quot;TargetRuntimeExtension&quot;
         name=&quot;TargetRuntimeExtensionHandler&quot;
         point=&quot;org.eclipse.jst.j2ee.TargetRuntimeExtension&quot;&gt;
      &lt;targetRuntimeExtensionHandler
            groupID=&quot;IBM&quot;&gt;
         &lt;run
           class=&quot;com.ibm.etools.ejb.ws.ext.helpers.TargetRuntimeExtHandler&quot;&gt;
         &lt;/run&gt;
      &lt;/targetRuntimeExtensionHandler&gt;
&lt;/extension&gt;
      </documentation>
   </annotation>

   <element name="extension">
      <complexType>
         <sequence>
            <element ref="targetRuntimeExtensionHandler"/>
         </sequence>
         <attribute name="point" type="string" use="default" value="org.eclipse.jst.j2ee.TargetRuntimeExtension">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string" use="default" value="TargetRuntimeExtension">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string" use="default" value="TargetRuntimeExtensionHandler">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="targetRuntimeExtensionHandler">
      <complexType>
         <sequence>
            <element ref="run"/>
         </sequence>
         <attribute name="groupID" type="string" use="default" value="IBM">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="run">
      <complexType>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appInfo>
         <meta.section type="since"/>
      </appInfo>
      <documentation>
         [Enter the first release in which this extension point appears.]
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         [Enter extension point usage example here.]
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         [Enter API information here.]
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="implementation"/>
      </appInfo>
      <documentation>
         [Enter information about supplied implementation of this extension point.]
      </documentation>
   </annotation>

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

</schema>
