Runtime XML conversion: compiled or interpretive

In Enterprise Service Tools for:
  • Web services for CICS® project, or
  • XML Transformation for CICS project

Two types of runtime XML conversion are provided: Interpretive XML conversion and Compiled XML conversion. The compiled XML conversion has more capabilities than the interpretive XML conversion.

When you select either of the two types of conversion, the selection applies to both request XML conversion and response XML conversion for the resulting service provider or service requester.

Runtime XML conversion includes:
  • XML to Language Structure conversion (conversion of data from XML format to some high-level language data format such as a specific COBOL data structure):
    • Service provider: The service provider converts the data in a service request from XML format to a high-level language data format.
    • Service requester: The service requester converts the data in a service response from XML format to a high-level language data format.
  • Language Structure to XML conversion (conversion of data from some high-level language data format such as a specific COBOL data structure to XML format):
    • Service provider: The service provider converts the data in a service response from a high-level language data format to XML format.
    • Service requester:The service requester converts the data in a service request from a high-level language data format to XML format.

Interpretive runtime XML conversion

Note: Interpretive runtime XML conversion is available only in Web services for CICS projects, XML Transformation for CICS projects and in service flow projects (see Availability in this topic).

The supported runtime environments (Web services for CICS and XML Transformation for CICS) includes an interpretive XML converter that can be invoked during the processing of service requests and service responsesto convert data from XML format to a high-level language data format or from high-level language data format to XML format. Using the interpretive XML converter has the advantage of freeing CICS Web service developers from the task of writing their own XML conversion programs.

In both, Web services for CICS and XML Transformation for CICS, the interface that the runtime environment provides to a Web service that uses interpretive runtime XML conversion is called the Native interface.

However, using the interpretive XML converter has the following disadvantages:
  • The interpretive engine does not support all the data constructs and types in the COBOL language. This makes it necessary for a CICS developer to write additional code or a wrapper program to process unsupported types.
  • The behavior of the interpretive engine is not configurable, whereas a user may have very specific needs in processing SOAP messages.
  • The interpretive engine cannot be debugged at runtime.

Compiled runtime XML conversion

Note: Interpretive runtime XML conversion is available only in Web services for CICS projects and XML Transformation for CICS projects(see Availability in this topic).
If you choose not to use the interpretive XML converter, or if your Web service is not targeted to run in either the Web services for CICS or XML Transformation for CICS runtime environment, then the following must be done:
  • You must provide an request XML conversion program and an response XML conversion program that your target runtime environment can invoke to perform conversion of data from XML data format to high-level language data format and back (perform conversion of data from high-level language data format to XML data format).
  • You use this development method you must write the conversion programs, transfer them to the host, compile them, and make them known to the target Web service runtime environment.

In both Web services for CICS and XML Transformation for CICS, the combination of the runtime environment and the user-supplied XML conversion programs is called the Vendor interface.

In this case, the wizards in the Enterprise Service Tools can be very helpful. You can use a wizard in the Enterprise Service Tools to generate a COBOL source code module that contains a driver program for a service provider or service requester (a driver program which is highly configurable through options that you can select when you are going through the wizard) as well as request and response XML conversion functions (also configurable through the wizard) and other supporting functions. The XML conversion functions provide broad support for COBOL data constructs and types, so that in most cases you are not required to write a wrapper program. The entire COBOL program module can be debugged at run time. The wizard can also generate other files that are required to deploy a Web service on the host.

See the example application provided by the Enterprise Service Tools: The CICS catalog manager example application.

Note:
  1. In the Web services for CICS environment, for the scenario in which you want to create a new Web service interface for an existing COBOL application (bottom-up scenario), the wizards in the Enterprise Service Tools provides more functionality than does the batch file (DFHLS2WS) included in the CICS Web services assistant (see "The CICS Web services assistant", in the CICS Transaction Server for z/OS Version 4.1 IBM® Documentation, available from CICS Transaction Server for z/OS® V4.1 - Library).
  2. In the XML Transformation for CICS environment, for the scenario in which you want to create a new XML Transformation for an existing COBOL application (bottom-up scenario), the wizards in the Enterprise Service Tools provides more functionality than does the batch file (DFHLS2SC) included in the CICS XML Transformation assistant (see "The CICS Web services assistant", in the CICS Transaction Server for z/OS Version 4.1 IBM Documentation, available from CICS Transaction Server for z/OS V4.1 - Library).

Availability

Interpretive runtime XML conversion is currently only available in Web services for CICS projects and XML Transformation for CICS projects:
Type of project: XML conversion mechanisms:
Web Services for CICS Project
  • Create New Service Interface (bottom-up) wizard - You can choose either:
    • Interpretive XML conversion; or
    • Compiled XML conversion.
  • Map an Existing Service Interface (meet-in-middle) wizard:
    • Compiled XML conversion only.
  • Create New Service Implementation (top-down):
    • Interpretive XML conversion only.
XML Transformation for CICS Project
  • Create New Service Interface (bottom-up) wizard - You can choose either:
    • Interpretive XML conversion; or
    • Compiled XML conversion.
  • Create New Service Implementation (top-down):
    • Interpretive XML conversion only.
Note: Map an Existing Service Interface (meet-in-middle) wizard is not supported.
IMS Enterprise Suite SOAP Gateway Project Compiled XML conversion
Batch, TSO, z/OS UNIX System Services Project Compiled XML conversion