Re: Re: RE: Best Practice - collection() function
Hi Andrew, Thanks for the help. I think the question sounds odd because I may have not been clear. You say they [keys] are built once per input document; by input document, do you mean supplied input file or each document in the collection()? I ask so I get a better understanding of whats going on when I use the collection() function and Keys. Right now, it works great and all my documents (e.g. tables, xref) are indexed. As for your suggestion using "saxon:discard-document:" - I applied this during some test last week but didn't see much of a difference in memory usage. However it was not a controlled environment. I will do some more test. Thanks, From: Andrew Welch <andrew.j.welch@xxxxxxxxx> Date: 2008/07/07 Mon AM 06:52:06 CDT To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: RE: Best Practice - collection() function > > Question - I am using keys to provide cross referencing for the index. Since the keys are declared as a child of <xsl:stylesheet>, when I call a collection(), is the key over written or does the key continue to hold all the information in memory? > That's an odd-ish question - what is the significance of xsl:key being a top-level element? Keys should always be held in memory... that's what they're for :) They're built once per input document, and that could be each document-node returned from calling collection, or a single variable wrapping that call... it's up to you and whether you need to key your entire set or just each document. If you are using Saxon and having memory issues with collection() then use saxon:discard-document: http://ajwelch.blogspot.com/2006/11/using-collection-and-saxondiscard.html -- Andrew Welch http://andrewjwelch.com Kernow: http://kernowforsaxon.sf.net/
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format