Also, if you DO go the route of storing procedures in the database, you might consider whether you could express those procedures as XSLT stylesheets that you could call from XQuery using xslt:transform() function. Since XSLT is in XML syntax, it works a bit smoother for that scenario. XQuery modules would need to be stored in the DB as RAW or text. XSLT modules are XML — accessing them via the DB would return an XML node that is already parsed. I saw a significant speedup pulling XSLT stylesheets from the DB as compared to using a filesystem URI.
XQuery and xslt:transform work very well together: you can mix both methods in your code, as xslt:transform() is just another XQuery function that takes an input node or document and returns a result, usually as another XML node. The only downside is that your developers need to know both XQuery and XSLT. However, there is a lot of overlap between the two. Both use XPath and many of the same functions and the same data model, but a different syntax. — Steve M.
smime.p7s
Description: S/MIME cryptographic signature