| <?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> |