|  | <?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. | 
|  |  | 
|  | <p>An IODefinition is the link between the user and a transformation. It defines: | 
|  | <ul> | 
|  | <li> the widget used by the user to choose the input source or output target</li> | 
|  | <li> the way this widget's content is validated</li> | 
|  | <li> the way this widget's content is extracted</li> | 
|  | </ul> | 
|  |  | 
|  | Developers using the extension point to provide their own IODefinition should <em>always</em> document the actual type of the object that is ultimately delivered to the transformation. This corresponds to the return type of the <code>IODefinition.IOHandle#getValue()</code> 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. | 
|  | <p> | 
|  | Default implementation (AbstractIODefinition) does not use these parameters: it only performs the loading. | 
|  | <p> | 
|  | Subclasses may access the parameters by calling <code>AbstractIODefinition#getParameter(String)</code>.  Dynamic parameter settings may be achieved by calling <code>AbstractIODefinition#setParameter(String, String)</code>. | 
|  | </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 "org.eclipse.jwt.transformations.iodefinitions" whose id is the same as this ioreference'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 <code>org.eclipse.jwt.transformations.io.WorkflowEditorInstanceIODefinition</code>. | 
|  | </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> |