Re: XdmValue objects returned from applyTemplates()

Michael Kay <[email protected]> Thu, 15 Jul 2021 00:17:58 +0100
Newsgroups gmane.text.xml.saxon.help
Message-ID <[email protected]>
>I'm wondering what the drawbacks would be for re-using a same Processor by a (potentially) large number of Xslt30Transformers in parallel. 

For most cases, none.

Potentially you could hit limits on the number of names allowed in a NamePool. In practice we never see people hitting those limits.

Slightly more likely is that you hit a problem that the schema components held by a Processor must be consistent (for example, you can't have two different types with the same name - which could happen if you want to use two different versions of the same schema).

In general, you should only create a single Processor unless you have clear reasons to do otherwise.

There is in fact a low-level mechanism to copy an XdmNode owned by one Processor to a different Processor: it's the NamePoolConverter class, used by the method Sender.sendDocumentInfo(). But it's not exposed in a convenient way at the s9api interface.

Michael Kay
Saxonica