27. Conclusions
All three approaches work!
Plain old JavaScript is the smallest: no runtime to download.
Saxon-JS lets you take advantage of XSLT design patterns.
XForms is probably the most declarative.
Be careful how you formulate your requirements!
Three axes to consider: standardized to implementation-specific, declarative to imperative, and smaller user communities to larger.