PLISAXA and PLISAXB XML Parser event function parameters

All PLISAXA and PLISAXB event functions must return a BYVALUE FIXED BIN(31) value that is a return code to the parser. For the parser to continue normally, this value should be zero.

For the first argument, the event functions pass a POINTER. This is the token value passed originally as the second argument to the built-in function.

With the following exceptions, all of the functions will also be passed a POINTER and a FIXED BIN(31) that supply the address and length of the text element for the event. The following functions and events are different:

end_of_document No argument other than the user token is passed.
attribute_predefined_reference In addition to the user token, one additional argument is passed: a CHAR(1) or, for a UTF-16 document, a WIDECHAR(1) that holds the value of the predefined character.
content_predefined_reference In addition to the user token, one additional argument is passed: a CHAR(1) or, for a UTF-16 document, a WIDECHAR(1) that holds the value of the predefined character.
attribute_character_reference In addition to the user token, one additional argument is passed: a FIXED BIN(31) that holds the value of the numeric reference.
content_character_reference In addition to the user token, one additional argument is passed: a FIXED BIN(31) that holds the value of the numeric reference.
processing_instruction In addition to the user token, these additional arguments are passed:
  • a POINTER that is the address of the target text
  • a FIXED BIN(31) that is the length of the target text
  • a POINTER that is the address of the data text
  • a FIXED BIN(31) that is the length of the data text
exception In addition to the user token, these additional arguments are passed:
  • a POINTER that is the address of the offending text
  • a FIXED BIN(31) that is the byte offset of the offending text
  • a FIXED BIN(31) representing the value of the exception code