The following example illustrates use of the Generic API Analysis feature:
<APIEntry name='Call another program'> <match stmt="CALL"> <name value="INVOKEPGM"/> </match> <flow halts='no'> <param index='1' usage='r'/> <param index='*' usage='w'/> </flow> <vars> <arg var='a' param='2' type='bit' len='5'/> </vars> <rep> <rel name='CallsDecision'> <target type='DECISION'> <attr name='AKA' value='%_pgmname. Calls.INVOKEPGM(%_varname1)'/> <attr name='AKA' value='%_pgmname. Calls.INVOKEPGM'/> <attr name='DecisionType' value='PROGRAMENTRY'/> <attr name='HCID' value='%_hcid'/> <attr name='VariableName' value='%_varname1'/> <attr name='Completed' switch-var='1'> <undef value='False'/> </attr> <attr name='Completed' value='True'/> <rel name='ResolvesToProgramEntry'> target type='PROGRAMENTRY' name='%1'/> </rel> </target> </rel> </rep> <hc> <attr name='test' switch-var='%a' join=',' <case eq='00101' value='X'/> <undef value='?'/> <default value='%a'/> </attr> </hc> </APIEntry>