Structure

The basic structure of a ProxyEngineRule is quite simple. The only tag allowed, additional to the common tags Name and Active, is the tag Action. The Action tag specifies what to do. The actual decision is implemented with conditions. The result of evaluating the conditions is the return value of such a rule.
<ProxyEngineRule>
  <Name>Switch on GUI recording for Jacada</Name>
  <Active>true</Active>
  <Action>AddAppletParam</Action>
  <Conditions>
    <FindData>
      <ApplyTo>Attribute.ARCHIVE</ApplyTo>
      <Data>clbase.jar</Data>
    </FindData>
    <Exists>
      <ApplyTo>Literal:GUIMode</ApplyTo>
      <SaveAs>Param.Name</SaveAs>
      <SaveMode>Replace</SaveMode>
    </Exists>
    <Exists>
      <ApplyTo>Literal:GUIRecorder</ApplyTo>
      <SaveAs>Param.Value</SaveAs>
      <SaveMode>Replace</SaveMode>
    </Exists>
  </Conditions>
</ProxyEngineRule>