4. The XML virtual machine as recited in claim 1 , wherein executing operation handlers of the application process code using a stateless process object and an instance object includes providing an expression engine configured to evaluate expressions using object names that are global to a multi-instance application and that are evaluated relative to a particular application instance.
1. A platform independent XML virtual machine that accepts application process code written in an XML programming language as input and implements a method that causes the application process code to be executed on a computing device, the method comprising: defining a set of runtime objects for executing an application including an instance object configured to couple operational meaning to the execution of the application process code; providing low-level constructs (“operation handlers”) configured to execute operations indicated by the application process code; and executing operation handlers of the application process code using a stateless process object and an instance object separate from the stateless process object; wherein the instance object is provided to the operation handlers to provide access to and persist changes to the application's runtime state while the stateless process object executes the operation handlers indicated by the application process code.