RIFE supports the automatic execution of an element before the targeted element. This is very handy when generic behaviour has to be executed independently of the business logic of the element. Note that this preceding element is similar to an inherited element. The fundamental difference however is that during inheritance, the request context that was originally intended for the child element is serialized and preserved. The child element receives this original content, unaware of the modifications that have been performed by the parent elements. Precedence however is like creating an invisible flowlink at the end of the processElement() method towards the preceeded element. All the modifications that have been performed by the preceeding element are still present and visible to the preceeded element.
Note that precedence is thus executed before the targeted element, but after its inheritance stack.
Below is an example of how to use precedence :
<element id="PRE" file="pre.xml"/>
<element id="TARGET" file="target.xml" url="/simple" pre="PRE"/>
This means that the TARGET element's processElement() method will always be preceeded by PRE's processElement() method.