Orbeon has an action called save-final.
I could find a property in property- form-runner.xml
<property as="xs:string" name="oxf.fr.detail.process.save-final.*.*"> require-uploads
I am not sure to fully understand your question: `save-final` is a process, and as such is defined through a property, which defines what sequence of actions to execute when the process runs. This isn't directly related to XPL. You can find more about buttons and processes on the page linked below. Does this help clarify the question you had in mind?
The buttons at the bottom of the form are implemented in an XBL component (of which there are on your form as many instances as there are buttons there). The component is implemented in process-button.xbl, and calls the server-side code from XPath with fr:run-process-by-name(…), which is implemented in FormRunnerFunctionLibrary.scala, and calls the "real" code in SimpleProcess.scala. Does this help?
If you want to read the actual code, you can find it all on GitHub. But of course, the idea is that you shouldn't need to, and that the documentation should be enough. So, you'll let us know if there is anything that you think the documentation should cover, while it doesn't.
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet