Example - Responding to a Hierarchical Parameter

A GET .../parameters call returns a list of values for a specific parameter of type prompt that asks you to select a city. Values are continents.

Response:

<parameters>
    <parameter dpId="DP0" type="prompt" optional="false">
        <id>0</id>
        <technicalName>psSelect a city</technicalName>
        <name>Select a city for customer</name>
        <answer type="Text" constrained="true">
            <info cardinality="Single">
                <lov refreshable="true" partial="false" hierarchical="true">
                    <id>UNIVERSELOV_DS0.DO6a</id>
                    <updated>1970-01-01T01:00:00.000+01:00</updated>
                    <values>
                        <value final="false">Asia</value>
                        <value final="false">Europe</value>
                        <value final="false">Latin America</value>
                        <value final="false">North America</value>
                    </values>
                    <columns mappingId="0">
                        <column type="String" id="0"/>
                    </columns>
                </lov>
            </info>
        </answer>
    </parameter>
</parameters>

In the first PUT call, the value of the first level of the list of values is given as answer to the parameter. The answer is Europe.

Request body:
<parameters>    
    <parameter dpId="DP0" optional="false" type="prompt">
        <id>0</id>
        <technicalName>psSelect a city</technicalName>
        <name>Select a city for customer</name>
        <answer constrained="true" type="Text">
            <info cardinality="Single">
                <lov hierarchical="true" partial="false" refreshable="true">
                    <query>
                        <path>
                            <value>Europe</value>
                        </path>
                    </query>
                </lov>
            </info>
        </answer>
    </parameter>
</parameters>

The response contains the list of values of the second level of the parameter. Values represent countries.

Response:

<parameters>
    <parameter dpId="DP0" type="prompt" optional="false">
        <id>0</id>
        <technicalName>psSelect a city</technicalName>
        <name>Select a city for customer</name>
        <answer type="Text" constrained="true">
            <info cardinality="Single">
                <lov refreshable="true" partial="false" hierarchical="true">
                    <id>UNIVERSELOV_DS0.DO6a</id>
                    <updated>1970-01-01T01:00:00.000+01:00</updated>
                    <values>
                        <value final="false">France</value>
                        <value final="false">Germany</value>
                        <value final="false">Italy</value>
                        <value final="false">Spain</value>
                        <value final="false">United-Kingdom</value>
                    </values>
                    <columns mappingId="0">
                        <column type="String" id="0"/>
                    </columns>
                </lov>
            </info>
        </answer>
    </parameter>
</parameters>

In a second PUT call, the value of the list of values of the second level is given as answer to the parameter (France). The first level value is recalled (Europe).

Request body:

<parameters>
    <parameter dpId="DP0" optional="false" type="prompt">
        <id>0</id>
        <technicalName>psSelect a city</technicalName>
        <name>Select a city for customer</name>
        <answer constrained="true" type="Text">
            <info cardinality="Single">
                <lov hierarchical="true" partial="false" refreshable="true">
                    <query>
                        <path>
                            <value>Europe</value>
                            <value>France</value>
                        </path>
                    </query>
                </lov>
            </info>
        </answer>
    </parameter>
</parameters>

The response contains the list of values of the third and last level of the parameter. Values represent cities.

Response:

<parameters>
    <parameter dpId="DP0" type="prompt" optional="false">
        <id>0</id>
        <technicalName>psSelect a city</technicalName>
        <name>Select a city for customer</name>
        <answer type="Text" constrained="true">
            <info cardinality="Single">
                <lov refreshable="true" partial="false" hierarchical="true">
                    <id>UNIVERSELOV_DS0.DO6a</id>
                    <updated>1970-01-01T01:00:00.000+01:00</updated>
                    <values>
                        <value>Marseilles</value>
                        <value>Paris</value>
                    </values>
                    <columns mappingId="0">
                        <column type="String" id="0"/>
                    </columns>
                </lov>
            </info>
        </answer>
    </parameter>
</parameters>

In the third and last PUT call, values of the lists of values of the first and second levels, and values of the third level are given as answer to the parameter. Only the value of the third level is considered as actual parameter value (Paris).

Request body:

<parameters>
    <parameter dpId="DP0" optional="false" type="prompt">
        <id>0</id>
        <technicalName>psSelect a city</technicalName>
        <name>Select a city for customer</name>
        <answer constrained="true" type="Text">
            <info cardinality="Single">
                <lov hierarchical="true" partial="false" refreshable="true">
                    <query>
                        <path>
                            <value>Europe</value>
                            <value>France</value>
                        </path>
                    </query>
                </lov>
            </info>
            <values>
                <value>Paris</value>
            </values>
        </answer>
    </parameter>
</parameters>

Response:

<success>
    <message>The resource of type 'Query' with identifier '6512967723055172061' has not been modified.</message>
    <id>6512967723055172061</id>
</success>