<?xml version="1.0" encoding="UTF-8"?>
<site>

    <feature id="org.eclipse.jst.jsf.doc.feature"><category name="jsf"/></feature>
    <feature id="org.eclipse.jsf.feature"><category name="jsf"/></feature>
    <feature id="org.eclipse.jst.webpageeditor.feature"><category name="jsf"/></feature>
    <feature id="org.eclipse.jsf_sdk.feature"><category name="jsf.sdk"/></feature>
    <feature id="org.eclipse.jst.jsf.tests.feature"><category name="jsf"/></feature>
    <feature id="org.eclipse.jst.webpageeditor_sdk.feature"><category name="jsf.sdk"/></feature>
    <feature id="org.eclipse.jst.jsf.apache.trinidad.tagsupport_sdk.feature"><category name="jsf.sdk"/></feature>
    <feature id="org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature"><category name="jsf"/></feature>
    <feature id="org.eclipse.jsf.assembly.feature"><category name="jsf"/></feature>
    <feature id="org.eclipse.jsf_sdk.assembly.feature"><category name="jsf.sdk"/></feature>

    <category-def name="jsf" label="Web Tools Platform (WTP) Java Server Faces"><description>
    Java Server Faces plugins shared by WTP features
    </description></category-def>
    <category-def name="jsf.sdk" label="Web Tools Platform (WTP) Java Server Faces SDK"><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="jsf.tests" label="Web Tools Platform (WTP) Java Server Faces Tests"><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>

</site>
