Re: [xsl] fn:document() cost

Subject: Re: [xsl] fn:document() cost
From: "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Sun, 11 Feb 2018 23:30:55 -0000
The only way you can get definitive answers to performance questions is by
measuring it, but I would expect that combining several documents into one
would increase your costs rather than decreasing them.

Because multiple calls on document() with the same URI are required to return
identical nodes (in the sense of the XPath "is" operator) XSLT processors
don't have much choice but to cache the result in memory in case the same URI
is used again.

Michael Kay
Saxonica


> On 11 Feb 2018, at 23:03, Jacopille, David djacopille@xxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> XSL experts,
>
> I have to pull from several xml files.  Would it be more efficient to
combine all the xml into a single file firstb&or use fn:document() to specify
the document context for each xpath statement.
>
> If Saxon's complier is savvy about only loading a document once in an XSL
that specifies the same document multiple times this approach seems preferable
to me.
>
> Thanks,
> Dave Jacopille
> Boston, MA
> MFS Email system made the following annotation
>
-----------------------------------------------------------------------------
----------------------------------------------------------
> This email communication and any attachments may contain proprietary,
confidential, or privileged information. If you are not the intended
recipient, you are hereby notified that you have received this email in error
and that any review, disclosure, dissemination, distribution or copying of it
or its contents is prohibited. The sender does not waive confidentiality or
any privilege by mistransmission. If you have received this email in error,
please notify the sender immediately, delete this email, and destroy all
copies and any attachments.
> XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list>
> EasyUnsubscribe <-list/293509> (by email <>)

Current Thread