<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.rse.subsystems.files.core" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
      <appinfo>
         <meta.schema plugin="org.eclipse.rse.subsystems.files.core" id="remoteFileTypes" name="Remote File Types"/>
      </appinfo>
      <documentation>
         This extension point is used to register information about whether particular file types should be considered to contain text, binary or xml data.
This information is important as it will determine how files will be transferred. The exact meaning of how the transfer of text files differs from binary and xml
files depends on the actual file service implementation. In general, though, services will strive to change the encoding of remote text files during transfer
such that it matches the local platform default encoding.  File types that are specified as xml will normally transfer as binary but will have it&apos;s encoding determined via inspection of the text.
&lt;p&gt;
Specific encoding conversions also depend on provided extensions to the
&lt;a href=&quot;org_eclipse_rse_services_codePageConverters.html&quot;&gt;org.eclipse.rse.services.codePageConverters&lt;/a&gt;
extension point.
For example, transferring files from a remote dstore Linux host to a local Windows client, the file service may convert text files from
UTF-8 encoding to Windows cp1252 encoding, and convert remote LF only line endings to local CRLF line endings.
The benefit of this conversion is that local (external) tools may operate on transferred files in the RSE
files cache without having to worry about encodings.
&lt;/p&gt;
&lt;p&gt;
Providers may provide an extension for this extension point.  No code beyond the XML extension declaration is required.
See also the &lt;tt&gt;org.eclipse.team.core.fileTypes&lt;/tt&gt; extension point which provides similar information for Repository providers.
&lt;/p&gt;
      </documentation>
   </annotation>

   <element name="extension">
      <annotation>
         <appinfo>
            <meta.element />
         </appinfo>
      </annotation>
      <complexType>
         <sequence>
            <element ref="remoteFileTypes" minOccurs="0" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="remoteFileTypes">
      <annotation>
         <appinfo>
            <meta.element labelAttribute="extension"/>
         </appinfo>
      </annotation>
      <complexType>
         <attribute name="extension" type="string" use="required">
            <annotation>
               <documentation>
                  the file extension being identified by this contribution.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="type" use="required">
            <annotation>
               <documentation>
                  one of either &quot;text&quot; or &quot;binary&quot;, identifying the contents of files matching the value of extension.
               </documentation>
            </annotation>
            <simpleType>
               <restriction base="string">
                  <enumeration value="text">
                  </enumeration>
                  <enumeration value="binary">
                  </enumeration>
                  <enumeration value="xml">
                  </enumeration>
               </restriction>
            </simpleType>
         </attribute>
         <attribute name="priority" type="string">
            <annotation>
               <documentation>
                  Priority used if there are more than one match of a file type. Integer values are allowed.
In case of more than one matching file type, the with lower priority number will be used. 
If no priority is specified, the default value will be &lt;code&gt;Integer.MAX_VALUE&lt;/code&gt;.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

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

   <annotation>
      <appinfo>
         <meta.section type="apiInfo"/>
      </appinfo>
      <documentation>
         There is no code to implement for this extension point.
      </documentation>
   </annotation>

   <annotation>
      <appinfo>
         <meta.section type="examples"/>
      </appinfo>
      <documentation>
         &lt;extension point=&quot;org.eclipse.rse.subsystems.files.core.remoteFileTypes&quot;&gt;
 &lt;remoteFileTypes extension=&quot;txt&quot; type=&quot;text&quot;/&gt;
 &lt;remoteFileTypes extension=&quot;gif&quot; type=&quot;binary&quot;/&gt;
  &lt;remoteFileTypes extension=&quot;xmi&quot; type=&quot;xml&quot;/&gt;
 &lt;remoteFileTypes extension=&quot;exe&quot; type=&quot;binary&quot; priority=&quot;100&quot;/&gt;
&lt;/extension&gt;
      </documentation>
   </annotation>


   <annotation>
      <appinfo>
         <meta.section type="copyright"/>
      </appinfo>
      <documentation>
         Copyright (c) 2006, 2010 IBM Corporation. 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 http://www.eclipse.org/legal/epl-v10.html

Contributors:
IBM Corporation - initial API and implementation
David McKnight (IBM)  - [283033] remoteFileTypes extension point should include "xml" type
      </documentation>
   </annotation>

</schema>
