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>