GXL1LOD (GXL4LOD) — load a z/OS XML function

Description

Load a module that implements a z/OS® XML function into storage.

Performance Implications

None.

Syntax

call gxl1lod(function_code,
             function_data,
             return_code,
             reason_code)   

Parameters

function_code
Supplied parameter
Type:
Integer
Length:
Fullword
This parameter identifies the z/OS XML function to load. It is the name of a fullword that contains an integer value representing one of the following functions:
XEC_LOD_VPARSE
The validating parse function.
See the GXLYXEC macro for the list of function code constants.
function_data
Supplied parameter
Type:
Address
Length:
Fullword (doubleword)

Specify a word of zeroes for this parameter.

return_code
Returned parameter
Type:
Integer
Length:
Fullword

The name of a fullword where the service stores the return code.

reason_code
Returned parameter
Type:
Integer
Length:
Fullword

The name of a fullword where the service stores the reason code. The reason code is only relevant if the return code is not XRC_SUCCESS.

All parameters in the parameter list are required.

Return and Reason Codes:

On return from a call to this service, register 15 will contain the return code. The return and reason code are both set as output parameters. The value of the reason code is undefined when the return code is 0 (XRC_SUCCESS). Return and reason codes are defined in macro GXLYXR, and are dependent on the control function specified by the caller. For reason code descriptions, also see Reason codes listed by value.

Usage notes

This load step is not required when performing a non-validating parse. This operation is only required when using the validating parser. The caller does have the option of loading the load module for the specified function without using this service - either through the z/OS LOAD macro, or by putting it in LPA or the extended LPA. Both the LOAD macro and calls to this service are not allowed when running in an SRB. The use of either interface must be performed in the task before entering SRB mode.

If the required z/OS XML function is made available, either by LOADing the executable load module for it or putting the load module in LPA, this service is not required. Documentation on the LOAD macro can be found in z/OS MVS™ Programming: Assembler Services Reference, Volume 2, and information on how to load modules into LPA can be found in z/OS MVS Initialization and Tuning Guide.

The load modules associated with each function are as follows:
Table 1. Load modules
Function code Function performed Load module name
XEC_LOD_VPARSE validating parser function GXLIMODV
There is no unload service to perform the converse of this function, and none of the other z/OS XML System Services cause the z/OS XML parser to be unloaded. The z/OS XML parser load module will remain in the caller's address space even if the parser is terminated or reset. If multiple parse requests are to be performed in the same address space, make sure to load the z/OS XML parser only once, regardless of whether those parse requests are performed using the same parse instance (PIMA) or not.