Hi James R Green,
When you enable server side validation, there is a server side hook which is enabled. When you submit the form, the form is sent to that hook, where all the Validate Rules (which are configured using widget options & validation rules in rule editor) that have been configured in the form are re-run.
You can think of it as form being previewed with the submitted data, on the server side, and the success being determined on the basis of .validate() function run at guideContainer level.
An important point to note here is that all the validation configured through rules should only be dependent on the scripts which are a part of the form (ie the client libraries should be a part of form's dependencies). So, if for example, you have form being rendered on a page and you are using Page's java-script to validate the form, this won't work on server side.
If the validation passes, the data is sent to the submit action you have configured.
If the validation fails, the hook returns the form with to the browser again, showcasing the errors. An important point to note here is that all
Please let me know if you need more information.
Hope this helps !!!
Cheers,
Jagjeet Singh
AEM Forms Blog