org.symbian.tools.mtw.ui/schema/projectTemplate.exsd
author Eugene Ostroukhov <eugeneo@symbian.org>
Mon, 16 Aug 2010 16:23:25 -0700
changeset 465 87920e15f8eb
parent 464 0b02f3d6f52c
child 466 129c94e78375
permissions -rw-r--r--
Added a way to contribute wizard pages for templates

<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.symbian.tools.tmw.ui" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
      <appinfo>
         <meta.schema plugin="org.symbian.tools.tmw.ui" id="projectTemplate" name="Mobile Application Project Templates"/>
      </appinfo>
      <documentation>
         [Enter description of this extension point.]
      </documentation>
   </annotation>

   <element name="extension">
      <annotation>
         <appinfo>
            <meta.element />
         </appinfo>
      </annotation>
      <complexType>
         <sequence minOccurs="1" maxOccurs="unbounded">
            <element ref="template"/>
            <element ref="runtime-template"/>
         </sequence>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string">
            <annotation>
               <documentation>
                  
               </documentation>
               <appinfo>
                  <meta.attribute translatable="true"/>
               </appinfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="template">
      <annotation>
         <documentation>
            Template may have several archive and/or installer objects - i.e. if it consists of the &quot;static&quot; and &quot;dynamic&quot; portions
         </documentation>
      </annotation>
      <complexType>
         <choice minOccurs="1" maxOccurs="unbounded">
            <element ref="archive"/>
            <element ref="installer"/>
            <element ref="description"/>
            <element ref="required-facet"/>
            <element ref="supported-runtime"/>
            <element ref="default-parameter-value"/>
         </choice>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
               <appinfo>
                  <meta.attribute translatable="true"/>
               </appinfo>
            </annotation>
         </attribute>
         <attribute name="icon" type="string">
            <annotation>
               <documentation>
                  
               </documentation>
               <appinfo>
                  <meta.attribute kind="resource"/>
               </appinfo>
            </annotation>
         </attribute>
         <attribute name="weight" type="string">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="installer">
      <annotation>
         <documentation>
            This allows contribution of the templates that are programmatic (i.e. can have a more complex behavior).
         </documentation>
      </annotation>
      <complexType>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
               <appinfo>
                  <meta.attribute kind="java" basedOn=":org.symbian.tools.tmw.ui.project.ITemplateInstaller"/>
               </appinfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="archive">
      <annotation>
         <documentation>
            Zip file that contains project templates using Apache Velocity markup
         </documentation>
      </annotation>
      <complexType>
         <attribute name="file" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
               <appinfo>
                  <meta.attribute kind="resource"/>
               </appinfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="description" type="string">
      <annotation>
         <appinfo>
            <meta.element translatable="true"/>
         </appinfo>
      </annotation>
   </element>

   <element name="supported-runtime">
      <complexType>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
               <appinfo>
                  <meta.attribute kind="identifier" basedOn="org.symbian.tools.tmw.core.runtimes/runtime/@component-id"/>
               </appinfo>
            </annotation>
         </attribute>
         <attribute name="version" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="required-facet">
      <complexType>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
               <appinfo>
                  <meta.attribute kind="identifier" basedOn="org.eclipse.wst.common.project.facet.core.facets/action/@id"/>
               </appinfo>
            </annotation>
         </attribute>
         <attribute name="version" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="runtime-template">
      <annotation>
         <documentation>
            This element describes contents that will be added to all projects for given runtime.
         </documentation>
      </annotation>
      <complexType>
         <choice minOccurs="1" maxOccurs="unbounded">
            <element ref="archive"/>
            <element ref="installer"/>
            <element ref="default-parameter-value"/>
         </choice>
         <attribute name="runtime-id" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
               <appinfo>
                  <meta.attribute kind="identifier" basedOn="org.symbian.tools.tmw.core.runtimes/runtime/@component-id"/>
               </appinfo>
            </annotation>
         </attribute>
         <attribute name="version" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="default-parameter-value">
      <complexType>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="value" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
               <appinfo>
                  <meta.attribute translatable="true"/>
               </appinfo>
            </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>


</schema>