Skip to main content
summaryrefslogblamecommitdiffstats
blob: c3a49cb59300fa2cf0a2882f160f8619faa04543 (plain) (tree)
1
2
3
4

                                                               

                                              

















                                                                           

                                                                          




                                                                                   












                                                                                                    



                                                                               

                                                       



                                                                                       

                                                                   




                        


















                                                                             

                                                      
                                                                         
                         
                                                                 








                                                      

                                                                  
















                                                                                  
                                                                               











































                                                       














                                                                                 


                                                                     








                                                                                  
                                                    
                                                                 




                                                                
                                                                                     




                                                                   
                                                                                                    














                                                                       
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="http://www.eclipse.org/epp/config"
  elementFormDefault="unqualified" 
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:epp="http://www.eclipse.org/epp/config">
  <xsd:annotation>
    <xsd:documentation>
    Copyright (c) 2007, 2008 Innoopract.
    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
    </xsd:documentation>
  </xsd:annotation>
  
  <!-- Root Element -->
  <xsd:element name="configuration">
    <xsd:annotation>
      <xsd:documentation>EPP configuration description.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="packageMetaData" type="epp:packageMetaDataType"
          minOccurs="0" maxOccurs="1" />
        <xsd:element name="rcp" minOccurs="1" maxOccurs="1">
          <xsd:complexType>
            <xsd:attributeGroup ref="epp:rcpVersionAttribute"></xsd:attributeGroup>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="product" minOccurs="1" maxOccurs="1">
          <xsd:complexType>
            <xsd:attributeGroup ref="epp:productNameAttribute"></xsd:attributeGroup>
            <xsd:attributeGroup ref="epp:productEclipseProductIdAttribute"></xsd:attributeGroup>
            <xsd:attributeGroup ref="epp:productInitialPerspectiveIdAttribute"></xsd:attributeGroup>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="updateSites" type="epp:updateSitesType"
          minOccurs="1" maxOccurs="1" />
        <xsd:element name="requiredFeatures" type="epp:FeatureType"
          minOccurs="1" maxOccurs="1" />
        <xsd:element name="rootFileFolder" minOccurs="1"
          maxOccurs="1">
          <xsd:complexType>
            <xsd:attributeGroup ref="epp:folderAttribute"></xsd:attributeGroup>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="extensionSite" minOccurs="1"
          maxOccurs="1">
          <xsd:complexType>
            <xsd:attributeGroup ref="epp:relativeFolderAttribute"></xsd:attributeGroup>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="targetPlatforms" type="epp:PlatformType"
          minOccurs="1" maxOccurs="1" />
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <!-- Complex Types -->
  <xsd:complexType name="packageMetaDataType">
  <xsd:sequence minOccurs="1" maxOccurs="unbounded">
    <xsd:element name="description" />
    <xsd:element name="packageTesters">
      <xsd:complexType>
        <xsd:sequence minOccurs="1" maxOccurs="unbounded">
          <xsd:element name="tester">
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
    </xsd:element>
  </xsd:sequence>
  <xsd:attributeGroup ref="epp:packageMDpackageName"></xsd:attributeGroup>
  <xsd:attributeGroup ref="epp:packageMDmaintainer"></xsd:attributeGroup>
  <xsd:attributeGroup ref="epp:packageMDiconurl"></xsd:attributeGroup>
  <xsd:attributeGroup ref="epp:packageMDbugzillaCompId"></xsd:attributeGroup>
  <xsd:attributeGroup ref="epp:packageMDtestPlan"></xsd:attributeGroup>
  </xsd:complexType>

  <xsd:complexType name="updateSitesType">
    <xsd:sequence minOccurs="1" maxOccurs="unbounded">
      <xsd:element name="updateSite" minOccurs="1" maxOccurs="unbounded">
        <xsd:complexType>
          <xsd:attributeGroup ref="epp:updateSiteUrlAttribute" />
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="FeatureType">
    <xsd:sequence minOccurs="1" maxOccurs="unbounded">
      <xsd:element name="feature">
        <xsd:complexType>
          <xsd:attributeGroup ref="epp:featureIdAttribute" />
          <xsd:attributeGroup ref="epp:featureVersionAttribute" />
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="PlatformType">
    <xsd:sequence minOccurs="1" maxOccurs="unbounded">
      <xsd:element name="platform">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="archiveFormat" minOccurs="1" maxOccurs="1">
              <xsd:complexType>
                <xsd:attributeGroup ref="epp:formatAttribute"/>
              </xsd:complexType>
            </xsd:element>
            <xsd:element name="eclipseIniFileContent" minOccurs="1" maxOccurs="1">
              <xsd:complexType>
                <xsd:attribute name="path" default="/eclipse/" use="optional"/>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
          <xsd:attributeGroup ref="epp:osAttribute"/>
          <xsd:attributeGroup ref="epp:wsAttribute"/>
          <xsd:attributeGroup ref="epp:archAttribute"/>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>

  <!-- Simple Types -->
  <xsd:simpleType name="osType">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="win32"/>
      <xsd:enumeration value="linux"/>
      <xsd:enumeration value="macosx"/>
    </xsd:restriction>
  </xsd:simpleType>

  <xsd:simpleType name="wsType">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="win32"/>
      <xsd:enumeration value="gtk"/>
      <xsd:enumeration value="carbon"/>
    </xsd:restriction>
  </xsd:simpleType>

  <xsd:simpleType name="archType">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="x86"/>
      <xsd:enumeration value="x86_64"/>
      <xsd:enumeration value="ppc"/>
    </xsd:restriction>
  </xsd:simpleType>

  <xsd:simpleType name="formatType">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="antZip"/>
      <xsd:enumeration value="tar"/>
    </xsd:restriction>
  </xsd:simpleType>

  <!-- Global Attribute Declarations -->
  <xsd:attributeGroup name="packageMDpackageName">
    <xsd:attribute name="packageName" type="xsd:string" use="required" />
  </xsd:attributeGroup>
  <xsd:attributeGroup name="packageMDmaintainer">
    <xsd:attribute name="maintainer" type="xsd:string" use="required" />
  </xsd:attributeGroup>
  <xsd:attributeGroup name="packageMDiconurl">
    <xsd:attribute name="iconurl" type="xsd:anyURI" use="required" />
  </xsd:attributeGroup>
  <xsd:attributeGroup name="packageMDbugzillaCompId">
    <xsd:attribute name="bugzillaComponentId" type="xsd:string" use="required" />
  </xsd:attributeGroup>
  <xsd:attributeGroup name="packageMDtestPlan">
    <xsd:attribute name="testPlan" type="xsd:anyURI" use="required" />
  </xsd:attributeGroup>
  <xsd:attributeGroup name="rcpVersionAttribute">
    <xsd:attribute name="version" type="xsd:string" use="required" />
  </xsd:attributeGroup>
  <xsd:attributeGroup name="productNameAttribute">
    <xsd:attribute name="name" type="xsd:string" use="required" />
  </xsd:attributeGroup>
  <xsd:attributeGroup name="productEclipseProductIdAttribute">
    <xsd:attribute name="eclipseProductId" type="xsd:string" use="required" />
  </xsd:attributeGroup>
  <xsd:attributeGroup name="productInitialPerspectiveIdAttribute">
    <xsd:attribute name="initialPerspectiveId" type="xsd:string" use="required" />
  </xsd:attributeGroup>
  <xsd:attributeGroup name="updateSiteUrlAttribute">
    <xsd:attribute name="url" type="xsd:anyURI" use="required" />
  </xsd:attributeGroup>  
  <xsd:attributeGroup name="featureIdAttribute">
    <xsd:attribute name="id" type="xsd:string" use="required" />
  </xsd:attributeGroup>  
  <xsd:attributeGroup name="featureVersionAttribute">
    <xsd:attribute name="version" type="xsd:string" use="optional" default="latest"/>
  </xsd:attributeGroup>  
  <xsd:attributeGroup name="folderAttribute">
    <xsd:attribute name="folder" type="xsd:string" use="required"/>
  </xsd:attributeGroup>  
  <xsd:attributeGroup name="relativeFolderAttribute">
    <xsd:attribute name="relativeFolder" type="xsd:string" use="optional" default="extension_site"/>
  </xsd:attributeGroup>  
  <xsd:attributeGroup name="osAttribute">
    <xsd:attribute name="os" type="epp:osType" use="required"/>
  </xsd:attributeGroup>  
  <xsd:attributeGroup name="wsAttribute">
    <xsd:attribute name="ws" type="epp:wsType" use="required"/>
  </xsd:attributeGroup>  
  <xsd:attributeGroup name="archAttribute">
    <xsd:attribute name="arch" type="epp:archType" use="required"/>
  </xsd:attributeGroup>  
  <xsd:attributeGroup name="formatAttribute">
    <xsd:attribute name="format" type="epp:formatType" use="required"/>
  </xsd:attributeGroup>  
  
</xsd:schema>

Back to the top