The parse tree structure has a 1 to 1 correspondence with the yacc grammar. The members of the union in sql_tree_t are mostly named after the syntactic element and the constant that identifies them. There are however some points worth noting:

Literals - All boxes whose tag is not DV_ARRAY_OF_POINTER are considered literals and may appear in all places where a literal is allowed.
Identifier Case - The case conversion of identifiers is controlled by the CaseMode ini file setting. When introducing a constant name referencing a VSE, one should use sqlp_box_id_upcase to get the right case for all modes.
The identifiers, once in the tree, are compared case sensitively in all modes case modes except 2.
Hook functions should use the appropriate comparison functions for the desired case sensitivity.
When generating references to names the case should be correct as defined by the case mode.