All of these functions must return a BYVALUE FIXED BIN(31) value that is a return code to the parser. If any value other than zero is returned, the parser terminates.
All of these functions are passed as the first argument a POINTER. This pointer is the token value that is passed originally as the second argument to the built-in.
With the following exceptions, all of the functions have a POINTER and a FIXED BIN(31) passed to them that provide the address and length of the text element for the event. The following functions and events are different:
| start_of_document | No argument other than the user token is passed. | 
| end_of_document | No argument other than the user token is passed. | 
| start_of_CDATA | No argument other than the user token is passed. | 
| end_of_CDATA | No argument other than the user token is passed. | 
| start_of_element | In addition to the usual parameters, these additional arguments are passed. 
 | 
| end_of_element | In addition to the usual parameters, these additional arguments are passed. 
 | 
| attribute_name | In addition to the usual parameters, these additional arguments are passed. 
 | 
| namesace_declare | In addition to the user token, these additional arguments are passed. 
 | 
| content_characters | In addition to the usual three parameters, a BYVALUE ALIGNED BIT(8) flag byte is passed which indicates: 
 | 
| end_of_input | In addition to the user token, these additional arguments are passed. 
 | 
| processing_instruction | In addition to the user token, four additional arguments are passed: 
 | 
| exception | In addition to the user token, three additional arguments are passed: 
 |