blob: e1313ba5aa8bcea1dbcd0610730abb4952f3a5dd [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.jwt.transformations" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<appinfo>
<meta.schema plugin="org.eclipse.jwt.transformations" id="iodefinitions" name="JWT transformations input/output definition"/>
</appinfo>
<documentation>
This is the extension point that developers shall use in order to provide a new input/output definition to JWT transformations.
&lt;p&gt;An IODefinition is the link between the user and a transformation. It defines:
&lt;ul&gt;
&lt;li&gt; the widget used by the user to choose the input source or output target&lt;/li&gt;
&lt;li&gt; the way this widget&apos;s content is validated&lt;/li&gt;
&lt;li&gt; the way this widget&apos;s content is extracted&lt;/li&gt;
&lt;/ul&gt;
Developers using the extension point to provide their own IODefinition should &lt;em&gt;always&lt;/em&gt; document the actual type of the object that is ultimately delivered to the transformation. This corresponds to the return type of the &lt;code&gt;IODefinition.IOHandle#getValue()&lt;/code&gt; method.
</documentation>
</annotation>
<element name="extension">
<annotation>
<appinfo>
<meta.element />
</appinfo>
</annotation>
<complexType>
<sequence>
<element ref="iodefinition"/>
</sequence>
<attribute name="point" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="id" type="string" use="required">
<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="iodefinition">
<complexType>
<sequence minOccurs="0" maxOccurs="unbounded">
<element ref="parameter"/>
</sequence>
<attribute name="label" type="string" use="required">
<annotation>
<documentation>
The label to be shown to the user when choosing between several input/output definitions.
</documentation>
<appinfo>
<meta.attribute translatable="true"/>
</appinfo>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
The actual class implementing the org.eclipse.jwt.transformations.api.io.IODefinition interface.
</documentation>
<appinfo>
<meta.attribute kind="java" basedOn=":org.eclipse.jwt.transformations.api.io.IODefinition"/>
</appinfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="parameter">
<annotation>
<documentation>
A parameter read by the IODefinition when loading.
&lt;p&gt;
Default implementation (AbstractIODefinition) does not use these parameters: it only performs the loading.
&lt;p&gt;
Subclasses may access the parameters by calling &lt;code&gt;AbstractIODefinition#getParameter(String)&lt;/code&gt;. Dynamic parameter settings may be achieved by calling &lt;code&gt;AbstractIODefinition#setParameter(String, String)&lt;/code&gt;.
</documentation>
</annotation>
<complexType>
<attribute name="name" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="value" type="string" use="required">
<annotation>
<documentation>
</documentation>
<appinfo>
<meta.attribute translatable="true"/>
</appinfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="ioreference">
<annotation>
<documentation>
A reference to a registered IODefinition, i.e. an extension to &quot;org.eclipse.jwt.transformations.iodefinitions&quot; whose id is the same as this ioreference&apos;s.
</documentation>
</annotation>
<complexType>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
The referenced iodefinition extension ID.
</documentation>
<appinfo>
<meta.attribute kind="identifier" basedOn="org.eclipse.jwt.transformations.iodefinitions/@id"/>
</appinfo>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appinfo>
<meta.section type="since"/>
</appinfo>
<documentation>
1.3.0
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="examples"/>
</appinfo>
<documentation>
See extension &lt;code&gt;org.eclipse.jwt.transformations.io.WorkflowEditorInstanceIODefinition&lt;/code&gt;.
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="apiinfo"/>
</appinfo>
<documentation>
See interface org.eclipse.jwt.transformations.api.io.IODefinition
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="copyright"/>
</appinfo>
<documentation>
Copyright (c) 2012 Open Wide (www.openwide.fr)
</documentation>
</annotation>
</schema>