Just as Input mapping allows you to add parameters to a query, output mapping determines how the output of a query should be presented. The Result (Output Mapping) section appears in the Queries page as given below. Once you have entered the main output mapping options, click Add New Output Mapping to open the Edit Output Mapping page.
The following options are available for output mapping:
Set Output Type
The output type determines the format in which the query output will be presented. You can select either XML, RDF or JSON. For details of how you can configure JSON as the output type go to JSON Mapping.
Use column numbers
If this option is selected the mapping will be done by the column number basis instead of the column name. The following screen shot provides an example for using column numbers
Escape non printable characters
Tick this option if the data in your database consists of characters that are not serializable to XML. Few examples are & < > " '. When you invoke services that access such data and produce responses, the sever throws errors. Ticking this option ensures that non-printable characters will be ignored when producing the responses.
See Defining Namespaces.
Query result export
When you click Add New Output Mapping in the Result(Output Mapping) section of the Queries page as explained above, the Edit Output Mapping page will open. You can specify the type of fields that will present the output of your query by giving the data source type, output field name, data source column name etc.
In the Edit Output Mapping page, you can define query result export options. Query Request Export feature must be used in conjunction with boxcarring. It allows individual queries executed in a boxcarring session to communicate with each other. The concept is 'exporting' a specific result element so that the next calling query will get that result element as a query parameter. So, if you've two queries, namely, 'query1' and 'query2' that's executed sequentially in a boxcarring session, and if 'query1' has a specific result element and that element is exported with the name 'foo', then 'query2' also gets a query param named 'foo'. So when this boxcarring session is executed, the query1's exported value will be passed into query2 as an input parameter.
This feature is very useful in situations where the result of an earlier-executed query is required for the execution of a subsequent query (e.g. a newly created primay key).
The following figure shows how a result element can be declared to be exported with a given name when defining a query in a data service.
There are two export types that can be used.
- SCALAR : The single element value is exported. If there are multiple instances of this value, the last one will be exported.
- ARRAY : An array of values will be exported. Each occurrence of the value is added to an array and exported.
For a demonstration on the usage of export options, refer to Boxcarring Sample .
Access control by user roles
In the Edit Output Mapping page, you can also define the access controls for the output mapping by assigning user roles. This ensures that only the users assigned to that specific user role are allowed to view the particular information in the query output. Go to Adding and Managing User Roles to see how user roles and their permissions are defined in your system.
- As shown below, the user roles available in your system will be listed. You can select the required user roles for the output mapping.
- User roles you selected will be assigned to the output mapping as show below.