<?xml version="1.0" encoding="UTF-8"?>
<site
    mirrorsURL="http://www.eclipse.org/downloads/download.php?file=/webtools/maintenance/&amp;format=xml"
    pack200="true">
    <description
        name="Web Tools Platform Build Specific Repository"
        url="http://build.eclipse.org/webtools/${buildDirectory}/updatesite/index.html"> The update site contains the features of the of Eclipse Web
        Tools Platform (WTP)</description>
    <feature
        url="features/org.eclipse.wst.xml_ui.feature_${org.eclipse.wst.xml_ui.feature}.jar"
        id="org.eclipse.wst.xml_ui.feature"
        version="${org.eclipse.wst.xml_ui.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.jsdt.feature_${org.eclipse.wst.jsdt.feature}.jar"
        id="org.eclipse.wst.jsdt.feature"
        version="${org.eclipse.wst.jsdt.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.web_ui.feature_${org.eclipse.wst.web_ui.feature}.jar"
        id="org.eclipse.wst.web_ui.feature"
        version="${org.eclipse.wst.web_ui.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.enterprise_ui.feature_${org.eclipse.jst.enterprise_ui.feature}.jar"
        id="org.eclipse.jst.enterprise_ui.feature"
        version="${org.eclipse.jst.enterprise_ui.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jpt.feature_${org.eclipse.jpt.feature}.jar"
        id="org.eclipse.jpt.feature"
        version="${org.eclipse.jpt.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jpt.eclipselink.feature_${org.eclipse.jpt.eclipselink.feature}.jar"
        id="org.eclipse.jpt.eclipselink.feature"
        version="${org.eclipse.jpt.eclipselink.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.webpageeditor.feature_${org.eclipse.jst.webpageeditor.feature}.jar"
        id="org.eclipse.jst.webpageeditor.feature"
        version="${org.eclipse.jst.webpageeditor.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature_${org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature}.jar"
        id="org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature"
        version="${org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.ws.axis2tools.feature_${org.eclipse.jst.ws.axis2tools.feature}.jar"
        id="org.eclipse.jst.ws.axis2tools.feature"
        version="${org.eclipse.jst.ws.axis2tools.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.xsl.feature_${org.eclipse.wst.xsl.feature}.jar"
        id="org.eclipse.wst.xsl.feature"
        version="${org.eclipse.wst.xsl.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.jsdt_sdk.feature_${org.eclipse.wst.jsdt_sdk.feature}.jar"
        id="org.eclipse.wst.jsdt_sdk.feature"
        version="${org.eclipse.wst.jsdt_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.xml_sdk.feature_${org.eclipse.wst.xml_sdk.feature}.jar"
        id="org.eclipse.wst.xml_sdk.feature"
        version="${org.eclipse.wst.xml_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.web_sdk.feature_${org.eclipse.wst.web_sdk.feature}.jar"
        id="org.eclipse.wst.web_sdk.feature"
        version="${org.eclipse.wst.web_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.enterprise_sdk.feature_${org.eclipse.jst.enterprise_sdk.feature}.jar"
        id="org.eclipse.jst.enterprise_sdk.feature"
        version="${org.eclipse.jst.enterprise_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jpt_sdk.feature_${org.eclipse.jpt_sdk.feature}.jar"
        id="org.eclipse.jpt_sdk.feature"
        version="${org.eclipse.jpt_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jpt.eclipselink_sdk.feature_${org.eclipse.jpt.eclipselink_sdk.feature}.jar"
        id="org.eclipse.jpt.eclipselink_sdk.feature"
        version="${org.eclipse.jpt.eclipselink_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.webpageeditor_sdk.feature_${org.eclipse.jst.webpageeditor_sdk.feature}.jar"
        id="org.eclipse.jst.webpageeditor_sdk.feature"
        version="${org.eclipse.jst.webpageeditor_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.jsf.apache.trinidad.tagsupport_sdk.feature_${org.eclipse.jst.jsf.apache.trinidad.tagsupport_sdk.feature}.jar"
        id="org.eclipse.jst.jsf.apache.trinidad.tagsupport_sdk.feature"
        version="${org.eclipse.jst.jsf.apache.trinidad.tagsupport_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.ws.axis2tools_sdk.feature_${org.eclipse.jst.ws.axis2tools_sdk.feature}.jar"
        id="org.eclipse.jst.ws.axis2tools_sdk.feature"
        version="${org.eclipse.jst.ws.axis2tools_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.xsl_sdk.feature_${org.eclipse.wst.xsl_sdk.feature}.jar"
        id="org.eclipse.wst.xsl_sdk.feature"
        version="${org.eclipse.wst.xsl_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.server_adapters.ext.feature_${org.eclipse.jst.server_adapters.ext.feature}.jar"
        id="org.eclipse.jst.server_adapters.ext.feature"
        version="${org.eclipse.jst.server_adapters.ext.feature}">
        <category
            name="Project Provided Components"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.server_adapters.ext.sdk.feature_${org.eclipse.jst.server_adapters.ext.sdk.feature}.jar"
        id="org.eclipse.jst.server_adapters.ext.sdk.feature"
        version="${org.eclipse.jst.server_adapters.ext.sdk.feature}">
        <category
            name="Project Provided Components"/>
    </feature>
    <feature
        url="features/org.eclipse.wtp.releng.tests.feature_${org.eclipse.wtp.releng.tests.feature}.jar"
        id="org.eclipse.wtp.releng.tests.feature"
        version="${org.eclipse.wtp.releng.tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.common_tests.feature_${org.eclipse.wst.common_tests.feature}.jar"
        id="org.eclipse.wst.common_tests.feature"
        version="${org.eclipse.wst.common_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.xml_tests.feature_${org.eclipse.wst.xml_tests.feature}.jar"
        id="org.eclipse.wst.xml_tests.feature"
        version="${org.eclipse.wst.xml_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.server_tests.feature_${org.eclipse.wst.server_tests.feature}.jar"
        id="org.eclipse.wst.server_tests.feature"
        version="${org.eclipse.wst.server_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.web_tests.feature_${org.eclipse.wst.web_tests.feature}.jar"
        id="org.eclipse.wst.web_tests.feature"
        version="${org.eclipse.wst.web_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.ws_tests.feature_${org.eclipse.wst.ws_tests.feature}.jar"
        id="org.eclipse.wst.ws_tests.feature"
        version="${org.eclipse.wst.ws_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.wst.jsdt_tests.feature_${org.eclipse.wst.jsdt_tests.feature}.jar"
        id="org.eclipse.wst.jsdt_tests.feature"
        version="${org.eclipse.wst.jsdt_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.server_tests.feature_${org.eclipse.jst.server_tests.feature}.jar"
        id="org.eclipse.jst.server_tests.feature"
        version="${org.eclipse.jst.server_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.server_adapters.ext_tests.feature_${org.eclipse.jst.server_adapters.ext_tests.feature}.jar"
        id="org.eclipse.jst.server_adapters.ext_tests.feature"
        version="${org.eclipse.jst.server_adapters.ext_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.web_tests.feature_${org.eclipse.jst.web_tests.feature}.jar"
        id="org.eclipse.jst.web_tests.feature"
        version="${org.eclipse.jst.web_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.enterprise_tests.feature_${org.eclipse.jst.enterprise_tests.feature}.jar"
        id="org.eclipse.jst.enterprise_tests.feature"
        version="${org.eclipse.jst.enterprise_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    <feature
        url="features/org.eclipse.jst.jsf.tests.feature_${org.eclipse.jst.jsf.tests.feature}.jar"
        id="org.eclipse.jst.jsf.tests.feature"
        version="${org.eclipse.jst.jsf.tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    
    <feature
        url="features/org.eclipse.jst.ws.cxf_sdk.feature_${org.eclipse.jst.ws.cxf_sdk.feature}.jar"
        id="org.eclipse.jst.ws.cxf_sdk.feature"
        version="${org.eclipse.jst.ws.cxf_sdk.feature}">
        <category
            name="Web Tools Platform SDK (WTP SDK) 3.1.1"/>
    </feature>
    
    <feature
        url="features/org.eclipse.jst.ws.cxf.feature_${org.eclipse.jst.ws.cxf.feature}.jar"
        id="org.eclipse.jst.ws.cxf.feature"
        version="${org.eclipse.jst.ws.cxf.feature}">
        <category
            name="Web Tools Platform (WTP) 3.1.1"/>
    </feature>
    
    <feature
        url="features/org.eclipse.jst.ws.cxf_tests.feature_${org.eclipse.jst.ws.cxf_tests.feature}.jar"
        id="org.eclipse.jst.ws.cxf_tests.feature"
        version="${org.eclipse.jst.ws.cxf_tests.feature}">
        <category
            name="Web Tools Platform Tests (WTP Tests) 3.1.1"/>
    </feature>
    
    
    <category-def
        name="Web Tools Platform (WTP) 3.1.1"
        label="Web Tools Platform (WTP) 3.1.1">
        <description> These features provide functionality with the
            executable code only and are recommended for most users.
        </description>
    </category-def>
    <category-def
        name="Web Tools Platform SDK (WTP SDK) 3.1.1"
        label="Web Tools Platform SDK (WTP SDK) 3.1.1">
        <description> These features provide functionality with the
            executable code and the source code and are recommended for
            those extending or debugging WTP.</description>
    </category-def>
    <category-def
        name="Web Tools Platform Tests (WTP Tests) 3.1.1"
        label="Web Tools Platform Tests (WTP Tests) 3.1.1">
        <description> These features provide Unit tests for WTP. WTP
            Committers, or others testing WTP, will need these in at
            least their PDE Targets.</description>
    </category-def>
    <category-def
        name="Project Provided Components"
        label="Project Provided Components">
        <description> These features are components produced by WTP
            Project, which are provided separately for special purposes.
        </description>
    </category-def>
</site>