<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.ui.intro">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.ui.intro" id="samples" name="Samples"/>
      </appInfo>
      <documentation>
         &lt;p&gt;
This extension point should be used to register Eclipse code samples. A sample is one or more Eclipse projects that are packaged in a way suitable for subsequent import into the workspace. 
&lt;p&gt;
Each sample has a name, one or more project elements and a final perspective. The sample wizard will create a project for each &lt;code&gt;project&lt;/code&gt; element, import the content from the archive, and open the final perspective if specified. Projects must be complete i.e. have correct nature and classpath (if Java or plug-in projects).
&lt;p&gt;If target view is specified and contains resource elements, it will be used to select and reveal those resources in the view after the sample has been created.
&lt;/p&gt;
&lt;p&gt;&lt;b&gt;This extension point is currently provided for internal Eclipse SDK usage only. It should not be used for anything else except Eclipse SDK examples.&lt;/b&gt;
&lt;/p&gt;
      </documentation>
   </annotation>

   <element name="extension">
      <complexType>
         <sequence>
            <element ref="sample" minOccurs="1" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  extension point attribute - in this case &lt;code&gt;org.eclipse.pde.ui.samples&lt;/code&gt;.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string">
            <annotation>
               <documentation>
                  not used.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string">
            <annotation>
               <documentation>
                  not used.
               </documentation>
               <appInfo>
                  <meta.attribute translatable="true"/>
               </appInfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="sample">
      <annotation>
         <documentation>
            an element that represents a single sample to be imported into the workspace.
         </documentation>
      </annotation>
      <complexType>
         <sequence>
            <element ref="description"/>
            <element ref="project" minOccurs="1" maxOccurs="unbounded"/>
            <element ref="activity" minOccurs="0" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  a unique identifier of the sample
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  a translatable name of the sample
               </documentation>
               <appInfo>
                  <meta.attribute translatable="true"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="perspectiveId" type="string">
            <annotation>
               <documentation>
                  if specified, the sample wizard will switch to the perspective with the provided id at the end of the operation.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="launcher" type="string">
            <annotation>
               <documentation>
                  an optional launch shortcut to be used to run the sample. If not specified, it will be assumed that a new Eclipse instance needs to be launched in order to see the sample. If specified, it needs to be the fully qualified name of the Java class that implements &lt;code&gt;org.eclipse.debug.ui.ILaunchShortcut&lt;/code&gt; interface.
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.eclipse.debug.ui.ILaunchShortcut"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="targetViewId" type="string">
            <annotation>
               <documentation>
                  an optional attribute that indicates that target view in the workbench that contains resources to select and reveal after the sample has been created. The view must implement &lt;code&gt;org.eclipse.ui.part.ISetSelectionTarget&lt;/code&gt; interface. Resources listed in &lt;code&gt;project&lt;/code&gt; elements will be selected and revealed in the target view.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="project">
      <annotation>
         <documentation>
            each project element will result in a workspace project being created with the content imported from the associated archive.
         </documentation>
      </annotation>
      <complexType>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  name of the project to be created in the workspace for this sample
               </documentation>
            </annotation>
         </attribute>
         <attribute name="archive" type="string" use="required">
            <annotation>
               <documentation>
                  relative path to the ZIP file containing the content of the project to import
               </documentation>
            </annotation>
         </attribute>
         <attribute name="shared" type="string">
            <annotation>
               <documentation>
                  shared projects may be listed in more than one sample. When this attribute is &lt;code&gt;true&lt;/code&gt;, and the project with the same name already exists in the workspace, it will be silently skipped. Otherwise, users will be prompted for overwrite permition.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="selectReveal" type="string">
            <annotation>
               <documentation>
                  a project-relative path of the resource to select and reveal in the target view after creation.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="description">
      <annotation>
         <documentation>
            body text of this element should contain description of the sample.
         </documentation>
      </annotation>
      <complexType>
         <attribute name="helpHref" type="string">
            <annotation>
               <documentation>
                  an optional reference to the topic in Help that provides more information about the sample.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="activity">
      <annotation>
         <documentation>
            specifies an activity that needs to be enabled for this sample
         </documentation>
      </annotation>
      <complexType>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  activity identifier to be used to enable the activity for this sample
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

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

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         &lt;p&gt;
The following is an example of the extension point:
&lt;pre&gt;
   &lt;extension point=&quot;org.eclipse.pde.ui.samples&quot;&gt;
      &lt;sample
           id=&quot;com.example.xyz.sample&quot;
           name=&quot;My Sample&quot;&gt;
         &lt;description helpHref=&quot;/com.example.xyz.doc/samples/com.example.xyz.sample1/doc-html/doc.html&quot;&gt;
             A short description of the sample.
         &lt;/description&gt;
         &lt;project name=&quot;com.example.xyz.sample1&quot;
                  archive=&quot;samples/sample1.zip&quot;/&gt;
      &lt;/sample&gt;
   &lt;/extension&gt;
&lt;/pre&gt;
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         &lt;p&gt;
If specified, the value of the attribute &lt;code&gt;launcher&lt;/code&gt; must represent a fully qualified name of the Java class that implements &lt;code&gt;org.eclipse.debug.ui.ILaunchShortcut&lt;/code&gt; interface.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="implementation"/>
      </appInfo>
      <documentation>
         &lt;p&gt;
PDE UI supplies Runtime Workbench launcher for launching another instance of Eclipse.
      </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>
