| <?xml version='1.0' encoding='UTF-8'?> |
| <!-- Schema file written by PDE --> |
| <schema targetNamespace="org.eclipse.wst.common.project.facet.core"> |
| <annotation> |
| <appInfo> |
| <meta.schema plugin="org.eclipse.wst.common.project.facet.core" id="presets" name="Faceted Project Presets"/> |
| </appInfo> |
| <documentation> |
| A preset represents a common configuration of facets and their versions that give a user a starting point when configuring a project. Presets can either be static or dynamic. Static presets are fully specified in this extension point. Dynamic presets are created using an extender-supplied factory that can take into account the context in which the preset will be used in. Static presets can also extend other presets. |
| |
| <p>To programmatically define a preset, use the <code>ProjectFacetsManager.definePreset()</code> methods.</code> |
| </documentation> |
| </annotation> |
| |
| <element name="extension"> |
| <complexType> |
| <sequence> |
| <element ref="static-preset" minOccurs="0" maxOccurs="unbounded"/> |
| <element ref="dynamic-preset" minOccurs="0" maxOccurs="unbounded"/> |
| </sequence> |
| <attribute name="point" type="string" use="required"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="id" type="string"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="name" type="string"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| <appInfo> |
| <meta.attribute translatable="true"/> |
| </appInfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="static-preset"> |
| <annotation> |
| <documentation> |
| Defines a static preset. A static preset is fully specified in the extension point. |
| </documentation> |
| </annotation> |
| <complexType> |
| <sequence> |
| <element ref="label" minOccurs="0" maxOccurs="1"/> |
| <element ref="description" minOccurs="0" maxOccurs="1"/> |
| <element ref="facet" minOccurs="0" maxOccurs="unbounded"/> |
| </sequence> |
| <attribute name="id" type="string" use="required"> |
| <annotation> |
| <documentation> |
| The preset id. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="extends" type="string"> |
| <annotation> |
| <documentation> |
| The id of the preset that this preset is extending. If the base preset includes a facet that's also specified by this preset (derived), the version of the facet specified in the derived preset wins. |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="label" type="string"> |
| <annotation> |
| <documentation> |
| The localizable name that is presented to the user. If not specified, the id will be used for a label. |
| </documentation> |
| </annotation> |
| </element> |
| |
| <element name="description" type="string"> |
| <annotation> |
| <documentation> |
| The description text. |
| </documentation> |
| </annotation> |
| </element> |
| |
| <element name="facet"> |
| <annotation> |
| <documentation> |
| Specifies the facet that is part of this preset. |
| </documentation> |
| </annotation> |
| <complexType> |
| <attribute name="id" type="string" use="required"> |
| <annotation> |
| <documentation> |
| The project facet id. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="version" type="string" use="required"> |
| <annotation> |
| <documentation> |
| The facet version. |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="dynamic-preset"> |
| <annotation> |
| <documentation> |
| Defines a dynamic preset. A dynamic preset uses a factory to synthesize the preset definition on the fly based on the context in which it will be used. |
| </documentation> |
| </annotation> |
| <complexType> |
| <sequence> |
| <element ref="factory"/> |
| </sequence> |
| <attribute name="id" type="string"> |
| <annotation> |
| <documentation> |
| The preset id. |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="factory"> |
| <annotation> |
| <documentation> |
| Specifies the factory. |
| </documentation> |
| </annotation> |
| <complexType> |
| <attribute name="class" type="string" use="required"> |
| <annotation> |
| <documentation> |
| The name of the factory class. |
| </documentation> |
| <appInfo> |
| <meta.attribute kind="java" basedOn="org.eclipse.wst.common.project.facet.core.IPresetFactory"/> |
| </appInfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="since"/> |
| </appInfo> |
| <documentation> |
| 2.0 |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="examples"/> |
| </appInfo> |
| <documentation> |
| <pre> |
| <extension point="org.eclipse.wst.common.project.facet.core.presets"> |
| |
| <!-- Defines a dynamic preset which will be synthesized by the provided factory. This particular preset |
| is actually supplied by the Faceted Project Framework. What it resolves to depends on the context. |
| If project does not target a runtime, it will contain only the fixed facets with their default |
| versions. If project targets one or more runtime, this preset will contain facets that are specified |
| to be the default for the primary runtime. --> |
| |
| <preset id="default.configuration"> |
| <factory class="org.eclipse.wst.common.project.facet.core.internal.DefaultConfigurationPresetFactory"/> |
| </preset> |
| |
| <!-- Creates a preset which extends the "default.configuration" preset and adds two facets. --> |
| |
| <preset id="my.favorite.preset" extends="default.configuration"> |
| <label>My Favorite Configuration</label> |
| <description>Here is the description of my favorite configuration.</description> |
| <facet id="facet_a" version="1.2"/> |
| <facet id="facet_b" version="2.0"/> |
| </preset> |
| |
| </extension> |
| </pre> |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="apiInfo"/> |
| </appInfo> |
| <documentation> |
| |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="implementation"/> |
| </appInfo> |
| <documentation> |
| |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="copyright"/> |
| </appInfo> |
| <documentation> |
| Copyright (c) 2005-2007 BEA Systems, Inc.<br/> |
| 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 |
| <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. |
| </documentation> |
| </annotation> |
| |
| </schema> |