<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.wst.server.core">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.wst.server.core" id="moduleFactories" name="Module Factories"/>
      </appInfo>
      <documentation>
         This extension point is used to provide a factory for modules that can be used by servers.
      </documentation>
   </annotation>

   <element name="extension">
      <complexType>
         <sequence>
            <element ref="moduleFactory" 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="moduleFactory">
      <annotation>
         <appInfo>
            <meta.element labelAttribute="name"/>
         </appInfo>
      </annotation>
      <complexType>
         <sequence>
            <element ref="moduleType" minOccurs="0" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  specifies a unique identifier for this extension point
               </documentation>
            </annotation>
         </attribute>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  specifies the fully qualified name of the Java class that extends &lt;samp&gt;ModuleFactoryDelegate&lt;/samp&gt;.
Module factory instances of this type will delegate to instances of this class
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.model.ModuleFactoryDelegate"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="projects" type="boolean">
            <annotation>
               <documentation>
                  true if this factory may return projects within the workspace, and false otherwise
               </documentation>
            </annotation>
         </attribute>
         <attribute name="order" type="string">
            <annotation>
               <documentation>
                  an integer that specifies the order that the module factory is processed
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="moduleType">
      <complexType>
         <attribute name="types" type="string" use="required">
            <annotation>
               <documentation>
                  a comma separated list of module type ids
               </documentation>
            </annotation>
         </attribute>
         <attribute name="versions" type="string" use="required">
            <annotation>
               <documentation>
                  a comma separated list of module versions
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

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

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         The following is an example of a module factory extension point:

&lt;pre&gt;
&lt;extension point=&quot;org.eclipse.wst.server.core.moduleFactories&quot;&gt;
   &lt;moduleFactory
      projects=&quot;true&quot;
      class=&quot;org.eclipse.MyWebFactory&quot;
      id=&quot;org.eclipse.wst.static.web&quot;&gt;
      &lt;moduleType
         versions=&quot;1.0&quot;
         types=&quot;wst.web&quot;&gt;
      &lt;/moduleType&gt;
   &lt;/moduleFactory&gt;
&lt;/extension&gt;
&lt;/pre&gt;
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends &lt;code&gt;org.eclipse.wst.server.core.model.ModuleFactoryDelegate&lt;/code&gt; and contains a public 0-arg constructor.
      </documentation>
   </annotation>

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

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