Version

    XML Schema of External Parameters

    External graph parameters are serialized in XML format with following schema:

    <?xml version="1.0" encoding="UTF-8"?>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/GraphParameters"
    	xmlns:tns="http://www.example.org/GraphParameters" elementFormDefault="qualified">
    
    	<element name="GraphParameters" type="tns:GraphParametersType"></element>
    
    	<complexType name="GraphParametersType">
    		<sequence>
    			<element name="GraphParameter" type="tns:GraphParameterType"
    				maxOccurs="unbounded" minOccurs="0"></element>
    		</sequence>
    	</complexType>
    
    	<complexType name="GraphParameterType">
    		<sequence>
    			<element name="attr" type="tns:attrType" maxOccurs="unbounded"
    				minOccurs="0">
    			</element>
    			<choice>
    				<element name="SingleType" type="tns:SingleTypeType"></element>
    				<element name="ComponentReference" type="tns:ComponentReferenceType">
    				</element>
    			</choice>
    		</sequence>
    		<attribute name="name" type="string" use="required"></attribute>
    		<attribute name="value" type="string" use="required"></attribute>
    		<attribute name="dynamicValue" type="string"></attribute>
    		<attribute name="secure" type="boolean"></attribute>
    		<attribute name="description" type="string"></attribute>
    		<attribute name="public" type="boolean"></attribute>
    		<attribute name="required" type="boolean"></attribute>
    		<attribute name="label" type="string"></attribute>
    		<attribute name="defaultHint" type="string"></attribute>
    		<attribute name="category" type="string"></attribute>
    	</complexType>
    
    	<complexType name="ComponentReferenceType">
    		<attribute name="referencedComponent" type="string"></attribute>
    		<attribute name="referencedProperty" type="string"></attribute>
    	</complexType>
    
        <complexType name="SingleTypeType">
        	<attribute name="name" type="string"></attribute>
        </complexType>
    
        <complexType name="attrType">
        	<attribute name="name" type="string"></attribute>
        </complexType>
    </schema>

    For example:

    <?xml version="1.0" encoding="UTF-8"?>
    <GraphParameters>
        <GraphParameter name="PROJECT" value=".">
            <attr name="description">Project root path</attr>
        </GraphParameter>
        <GraphParameter name="CONN_DIR" value="${PROJECT}/conn">
            <attr name="description">Default folder for external connections</attr>
        </GraphParameter>
        <GraphParameter name="DATAIN_DIR" value="${PROJECT}/data-in">
            <attr name="description">Default folder for input data files</attr>
        </GraphParameter>
        <GraphParameter name="DATAOUT_DIR" value="${PROJECT}/data-out">
            <attr name="description">Default folder for output data files</attr>
        </GraphParameter>
        <GraphParameter name="DATATMP_DIR" value="${PROJECT}/data-tmp">
            <attr name="description">Default folder for temporary data files</attr>
        </GraphParameter>
        <GraphParameter name="GRAPH_DIR" value="${PROJECT}/graph">
            <attr name="description">Default folder for transformation graphs (grf)</attr>
        </GraphParameter>
        <GraphParameter label="Public parameter" name="PUBLIC_PARAM" public="true" required="true" value="default value">
            <SingleType name="multiline"/>
        </GraphParameter>
    </GraphParameters>