Project Facets Extension Point

org.eclipse.wst.common.project.facet.core.facets

This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

<!ELEMENT extension (project-facet | project-facet-version | category | preset | template | action)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT label (#PCDATA)>



<!ELEMENT description (#PCDATA)>



<!ELEMENT icon (#PCDATA)>



<!ELEMENT and (and | or | requires | conflicts)>



<!ELEMENT or (and | or | requires | conflicts)>



<!ELEMENT requires EMPTY>

<!ATTLIST requires

facet   CDATA #REQUIRED

version CDATA #REQUIRED

soft    (true | false) >


<!ELEMENT conflicts EMPTY>

<!ATTLIST conflicts

group CDATA #REQUIRED>


<!ELEMENT constraint (and | or | requires | conflicts)>



<!ELEMENT group-member EMPTY>

<!ATTLIST group-member

id CDATA #REQUIRED>


<!ELEMENT project-facet (label , description? , icon? , version-comparator? , category)>

<!ATTLIST project-facet

id CDATA #REQUIRED>


<!ELEMENT project-facet-version (constraint? , group-member* , action*)>

<!ATTLIST project-facet-version

facet   CDATA #REQUIRED

version CDATA #REQUIRED>


<!ELEMENT version-comparator EMPTY>

<!ATTLIST version-comparator

class CDATA #REQUIRED>


<!ELEMENT category (label , description? , icon?)>

<!ATTLIST category

id CDATA #REQUIRED>


<!ELEMENT preset (label , facet)>

<!ATTLIST preset

id CDATA #REQUIRED>


<!ELEMENT template (label , fixed , preset)>

<!ATTLIST template

id CDATA #REQUIRED>


<!ELEMENT action (config-factory?delegate)>

<!ATTLIST action

type    (install|uninstall|version-change|runtime-changed)

facet   CDATA #IMPLIED

version CDATA #IMPLIED>


<!ELEMENT config-factory EMPTY>

<!ATTLIST config-factory

class CDATA #REQUIRED>


<!ELEMENT delegate EMPTY>

<!ATTLIST delegate

class CDATA #REQUIRED>