Abstract for XML System Services User's Guide
Summary of changes
z/OS Version 2 Release 1 summary of changes
Introduction
What is XML?
z/OS XML System Services
Overview of z/OS XML System Services
z/OS XML System Services features
z/OS XML System Services functions
Querying XML documents
Parsing XML documents without validation
Parsing XML documents with validation
Parsing XML document fragments with validation
Parsing XDBX input streams
Document processing model
Output buffer format
Optimized Schema Representation
String Identifiers
Memory management
Enable offload to specialty engines
Querying XML documents
Header files and data macros
Parsing XML documents
Steps for parsing XML documents without validation
Support for undefined namespace prefix toleration
Loading the validating parser code
Steps for parsing XML documents with validation
Using Optimized Schema Representations
Setting up the environment
Usage tips
Restricting the root element name
Parsing XML document fragments with validation
Obtaining information on schema locations
Obtaining additional error information
XML Path language
Setting up and running the CICS PLT program
Header files and data macros
Parsed data model
Common record header
Record (token) types
Metadata records
Buffer info record
Error info record
Aux info record
Entities and default XML structures
Interactions with other features
Aux info record - Error_Location
Error location path and namespace context
Error location and fragment parsing
Aux info record - ERROR_STRING
Aux info record - EXPECTED_STRING
Aux info record - TOLERATED_ERROR
Extended end element record
Default content flag (XEH_DEFAULT)
31- and 64-bit compatibility
Length/Value pairs
String Identifiers
Record forms
Record form 0
Record form 1
Record form 2
Record form 3
Field values by record type
Spanning buffers
Splitting records
Splitting multibyte characters
Processing DTDs
Resolving entity references
Non-representable characters
Namespace declarations
Using the z/OS XML parser in a multithreaded environment
Parsing XDBX input streams
Additional usage considerations
Recovery considerations
Encoding support
EBCDIC encoding considerations
Managing memory resources
Using return and reason codes
z/OS XML parser API: C/C++
Setting the XPLINK(ON) Language Environment runtime option
Support for the Metal C compiler option
Where to find the header files, DLLs and side decks
Using the recovery routine
z/OS XML XL C/C++ API
gxlpControl — perform a parser control function
Properties and resources reset by control functions
gxlpControl features and functions
GXLHXEC_CTL_FIN
GXLHXEC_CTL_FEAT
GXLHXEC_CTL_LOAD_OSR
GXLHXEC_CTL_QUERY_MIN_OUTBUF
GXLHXEC_CTL_ENTS_AND_REFS
GXLHXEC_CTL_LOAD_FRAG_CONTEXT
GXLHXEC_CTL_FRAGMENT_PARSE
GXLHXEC_CTL_RESTRICT_ROOT
GXLHXEC_CTL_ERROR_HANDLING
gxlpInit — initialize the z/OS XML parser
gxlpLoad — load a z/OS XML function
gxlpParse — parse a buffer of XML text
gxlpQuery — query an XML document
gxlpTerminate — terminate a parse instance
OSR generator API
gxluInitOSRG — initialize an OSR generator instance
gxluControlOSRG — perform an OSR generator control operation
gxluTermOSRG — terminate an OSR generator instance
gxluLoadSchema — load a schema into the OSR generator
gxluSetStrIDHandler — specify the StringID handler for OSR generation
gxluSetEntityResolver — specify the entity resolver for OSR generation
gxluLoadOSR — load an OSR into the OSR generator
gxluGenOSR — generate an Optimized Schema Representation (OSR)
gxluGenStrIDTable — generate StringID table from an OSR
gxluGetStringIDs — generate StringID table from an OSR
gxluFreeStringIDs — free a StringID table
gxluGetRootElements — retrieve the root elements from an OSR
gxluFreeRootElements — free a root element structure
gxluGetTargetNamespaces — retrieve the target namespaces from an OSR
gxluFreeNamespaces — free a namespace structure
GXLPSYM31 (GXLPSYM64) — StringID handler
z/OS XML parser API: Assembler
How to invoke the z/OS XML System Services assembler API
z/OS XML parser Assembler API
API entry points
Common register conventions
Input registers
Output registers
Environmental requirements
Using the recovery routine
GXL1CTL (GXL4CTL) — perform a parser control function
GXL1CTL (GXL4CTL) features and functions
XEC_CTL_FIN
XEC_CTL_FEAT
XEC_CTL_LOAD_OSR
XEC_CTL_QUERY_MIN_OUTBUF
XEC_CTL_ENTS_AND_REFS
XEC_CTL_LOAD_FRAG_CONTEXT
XEC_CTL_FRAGMENT_PARSE
XEC_CTL_RESTRICT_ROOT
XEC_CTL_ERROR_HANDLING
GXL1INI (GXL4INI) — initialize a parse instance
GXL1PRS (GXL4PRS) — parse a buffer of XML text
GXL1QXD (GXL4QXD) — query an XML document
GXL1TRM (GXL4TRM) — terminate a parse instance
GXL1LOD (GXL4LOD) — load a z/OS XML function
z/OS XML System Services exit interface
Exit functions
Common register conventions
Input registers
Output registers
Environmental requirements
Restrictions
GXLGST31 (GXLGST64) — get memory
GXLFST31 (GXLFST64) — free memory
GXLSYM31 (GXLSYM64) — StringID service
GXLSTRI — StringID service for Language Environment and Metal C
Diagnosis and problem determination
XMLDATA IPCS subcommand
Diagnostic Area
SLIP trap for return codes from the z/OS XML parser
ARR recovery routine
Return codes listed by value
Reason codes listed by value
xsdosrg command reference
Name
Synopsis
Description
Options
Operands
Example
Environment variables
Usage notes
Exit values
Related information
C/C++ header files and assembler macros
gxlhxml.h - main z/OS XML header file
gxlhxeh.h (GXLYXEH) - mapping of the output buffer record
gxlhxec.h (GXLYXEC) - constants definitions
gxlhqxd.h (GXLYQXD) - mapping of the output from the query XML declaration service
gxlhxd.h (GXLYXD) - mapping of extended diagnostic area
gxlhxr.h (GXLYXR) - defines the return codes and reason codes
gxlhxsv.h (GXLYXSV) - mapping of the system service vector
gxlhctl.h (GXLYCTL) - mapping of the control input parameters area
gxlhxft.h (GXLYXFT) - mapping of the control feature input output area
gxlhxosr.h (GXLYXOSR) - mapping of the OSR control area
gxlhosrg.h - OSR generator prototypes
gxlhosrd.h - mapping of the OSR generator diagnostic area
gxlhxstr.h - StringID table
Callable services examples - AMODE 31
GXL1CTL example
GXL1INI example
GXL1PRS example
GXL1TRM example
Callable services examples - AMODE 64
GXL4CTL example
GXL4INI example
GXL4PRS example
GXL4TRM example
Exit examples
GXLEFRM (GXLFST example)
GXLEGTM (GXLGST example)
GXLSYM example
GXLEINI
GXLEIDI (GXLSYM example module)
GXLEIDR
GXLESTRI
CICS examples
Supported encodings
Enabling z/OS V1R12 XML functionality in z/OS V1R10 and z/OS V1R11