blob: cde818d13667aeee14788927f31139904c370f98 [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.wst.service.policy">
<annotation>
<appInfo>
<meta.schema plugin="org.eclipse.wst.service.policy" id="servicePolicy" name="Service policy"/>
</appInfo>
<documentation>
This extension allows extenders to define service policies.
</documentation>
</annotation>
<include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>
<element name="extension">
<complexType>
<sequence>
<element ref="servicePolicy" minOccurs="1" 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="servicePolicy">
<complexType>
<sequence minOccurs="1" maxOccurs="unbounded">
<element ref="policy" minOccurs="0" maxOccurs="1"/>
<element ref="enumeration" minOccurs="0" maxOccurs="1"/>
<element ref="loadListener" minOccurs="0" maxOccurs="1"/>
<element ref="enablement" minOccurs="0" maxOccurs="1"/>
</sequence>
</complexType>
</element>
<element name="policy">
<complexType>
<sequence>
<element ref="descriptor"/>
<element ref="relationship" minOccurs="0" maxOccurs="unbounded"/>
<element ref="state" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="parentPolicyId" type="string">
<annotation>
<documentation>
Specifies the parent policy id for this policy. If this is a root policy this attribute should not be specified.
</documentation>
</annotation>
</attribute>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
The unique id for this service policy.
</documentation>
</annotation>
</attribute>
<attribute name="enumListId" type="string">
<annotation>
<documentation>
If this policy&apos;s state is associated with an enumeration then this attribute specifies the id of this enumeration.
</documentation>
</annotation>
</attribute>
<attribute name="defaultEnumId" type="string">
<annotation>
<documentation>
This attribute should only be specified if the enumListId is also specified. It is used to override the default enum value defined by the enumeration.
</documentation>
</annotation>
</attribute>
<attribute name="mutable" type="boolean" use="default" value="false">
<annotation>
<documentation>
Indicates if this policy has mutable data or not.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="descriptor">
<complexType>
<attribute name="description" type="string">
<annotation>
<documentation>
A description of this service policy.
</documentation>
</annotation>
</attribute>
<attribute name="shortName" type="string">
<annotation>
<documentation>
The short name of this service policy. Note: if a short name is not specified it is defaulted to the value of the long name.
</documentation>
</annotation>
</attribute>
<attribute name="longName" type="string">
<annotation>
<documentation>
The long name of this service policy. Note: if a long name attribute is not specified it is defaulted to the shortName value.
</documentation>
</annotation>
</attribute>
<attribute name="contextHelpId" type="string">
<annotation>
<documentation>
The context help id for this service policy if it is required.
</documentation>
</annotation>
</attribute>
<attribute name="iconPath" type="string">
<annotation>
<documentation>
A plugin relative path to some icon file for this service policy.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="relationship">
<annotation>
<documentation>
Specifies a state relationship between this service policy and the states of other service policies.
</documentation>
</annotation>
<complexType>
<sequence>
<element ref="targetPolicy" minOccurs="1" maxOccurs="unbounded"/>
</sequence>
<attribute name="enumList" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="targetPolicy">
<complexType>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="itemList" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="enumeration">
<complexType>
<sequence>
<element ref="item" minOccurs="1" maxOccurs="unbounded"/>
</sequence>
<attribute name="default" type="string">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="item">
<complexType>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="shortName" type="string">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="longName" type="string">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="loadListener">
<complexType>
<attribute name="class" type="string">
<annotation>
<documentation>
A class that implements the IPolicyPlatformLoadListener interface. The load method of this class will be called when the ServicePolicy framework is first loaded.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="state">
<annotation>
<documentation>
This element allows the extender to define state data for this policy.
</documentation>
</annotation>
<complexType>
<attribute name="key" type="string" use="required">
<annotation>
<documentation>
The key for this state data.
</documentation>
</annotation>
</attribute>
<attribute name="value" type="string" use="required">
<annotation>
<documentation>
The value of this state data.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appInfo>
<meta.section type="since"/>
</appInfo>
<documentation>
1.0
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="examples"/>
</appInfo>
<documentation>
[Enter extension point usage example here.]
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="apiInfo"/>
</appInfo>
<documentation>
[Enter API information here.]
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="implementation"/>
</appInfo>
<documentation>
[Enter information about supplied implementation of this extension point.]
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="copyright"/>
</appInfo>
<documentation>
</documentation>
</annotation>
</schema>