Folgende Syntax wird für das XML GENERATE Statement erkannt:
>>-XML GENERATE--identifier-1--FROM--identifier-2--------------->
>--+-----------------------------+------------------------------>
'-COUNT--+----+--identifier-3-'
'-IN-'
>--+------------------------------+----------------------------->
'-+------+--ENCODING--codepage-'
'-WITH-'
>--+---------------------------+--+----------------------+------>
'-+------+--XML-DECLARATION-' '-+------+--ATTRIBUTES-'
'-WITH-' '-WITH-'
>--+-------------------------------------------------------------------------------------+-->
'-NAMESPACE--+----+--+-identifier-4-+--+--------------------------------------------+-'
'-IS-' '-literal-4----' '-NAMESPACE-PREFIX--+----+--+-identifier-5-+-'
'-IS-' '-literal-5----'
>--+-----------------------------------------------------------+-->
| .---------------------------------------. |
| v | |
|--NAME--+----+--+-+--identifier-8--+--------------+--+--+--|
|-OF-| | |--when-phrase-| |
|---generic-suppression-phrase-----|
>--+------------------------------------------------------------+-->
| .----------------------------------------. |
| v | |
|--TYPE--+----+--+---identifier-7--+----+-+-ATTRIBUTE--+--+--|
|-OF-| |-IS-| |-ELEMENT----|
|-CONTENT----|
>--+------------------------------------------------------------+-->
| .----------------------------------------. |
| v | |
|--SUPPRESS--+----+--+---identifier-8--+--------------+-+-+--+--|
| |--when-phrase-| |
|---generic-suppression-phrase-----|
>--+-------------------------------------------+---------------->
'-+----+--EXCEPTION--imperative-statement-1-'
'-ON-'
>--+------------------------------------------------+----------->
'-NOT--+----+--EXCEPTION--imperative-statement-2-'
'-ON-'
>--+---------+-------------------------------------------------><
'-END-XML-'
.---------------------------------.
| |
V |
>>--WHEN--+--ZERO---------+-+-+----------------------------+--+--><
|--ZEROES-------| |--+----+--+--ZERO--------+--|
|--ZEROS--------| |-OR-| |--ZEROES------|
|--SPACE--------| |--ZEROS--------|
|--SPACES-------| |--SPACE--------|
|--LOW-VALUE----| |--SPACES-------|
|--LOW-VALUES---| |--LOW-VALUE----|
|--HIGH-VALUE---| |--LOW-VALUES---|
|--HIGH-VALUES--| |--HIGH-VALUE---|
|--HIGH-VALUES--|
>>--+---------------------------------------------------+--when-phrase--><
|--EVERY--+-NUMERIC-------+------------+--+---------|
| |-ATTRIBUTE--| |
| |-CONTENT----| |
| |-ELEMENT----| |
| |
|--NONUMERIC----+------------+--|
| |-ATTRIBUTE--| |
| |-CONTENT----| |
| |-ELEMENT----| |
| |
|---------ATTRIBUTE-------------|
|---------CONTENT---------------|
|---------ELEMENT---------------|