Subject: Re: Keys across multilple input files From: Ann Marie Rubin - Sun PC Networking Engineering <Annmarie.Rubin@xxxxxxxxxxxx> Date: Wed, 7 Jun 2000 15:14:32 -0400 (EDT) |
Jeni, You are 100% correct - as always:-) Fixing the $documents variable definition worked! Thank you. Here are some interesting performance statistics using the XALAN processor. Processing time for one big XML document containing all CLASS elements is almost 4 times faster than processing each XML Class file separately. The best option would be to generate the keys for all CLASS elements in one big XML file in one XSL process and save them in a way that they could be accessed by another XSL process. I haven't figured out how to do this yet. Ann Marie ------------------------------------ Performance 1. All classes in a single XML file. Stylesheet uses keys to search class elements in the same file. Processing time: 8,873 milliseconds 2. Each class in a separate XML file. Stylesheet uses document() function to search the keys for CLASS elements in each XML class file. Processing time: 27,709 milliseconds 3. Each class in a separate XML file. Style sheet uses document() function to search the CLASS elements ine each XML class file. Processing time: 34,818 milliseconds X-Unix-From: Jeni.Tennison@xxxxxxxxxxxxxxxx Wed Jun 7 04:34:20 2000 X-Sender: JTennison@NTServer To: Ann Marie Rubin - Sun PC Networking Engineering <Annmarie.Rubin@xxxxxxxxxxxx> From: Jeni Tennison <Jeni.Tennison@xxxxxxxxxxxxxxxx> Subject: Re: Keys across multilple input files Cc: xsl-list@xxxxxxxxxxxxxxxx Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-MDaemon-Deliver-To: Annmarie.Rubin@xxxxxxxxxxxx Ann Marie, >I tried your solution without much success. The stylesheet runs without error but does not generate >ancestor or descendant classes. I formatted the filelist.xml as you did in your example. and defined >the documents variable: > ><xsl:variable name="documents" select="document('filelist.xml')/documents/doc/@href" />. > >I'm not sure what I'm missing. I think what you're missing is that this isn't equivalent to the select expression that I used in my example. I used: <xsl:variable name="documents" select="document(/documents/doc/@href)" /> In this, $documents is assigned to *the result of the document() function being called on* the node list that holds the 'href' attributes of all the 'doc' elements that are children of the 'documents' document element in the input XML. In yours, $documents is assigned to the node list that holds the 'href' attributes of all the 'doc' elements that are children of the 'documents' document element in 'filelist.xml'. You need to apply the document() function to that list, i.e.: <xsl:variable name="documents" select="document(document('filelist.xml')/documents/doc/@href)" /> Try that and see if it works. I'm sorry that I didn't explain this in detail first time round. Cheers, Jeni Dr Jeni Tennison Epistemics Ltd, Strelley Hall, Nottingham, NG8 6PE Telephone 0115 9061301 ? Fax 0115 9061304 ? Email jeni.tennison@xxxxxxxxxxxxxxxx XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: Keys across multilple input fil, Jeni Tennison | Thread | Re: Keys across multilple input fil, Jeni Tennison |
Re: Best way to handle multiple str, Warren Hedley | Date | RE: Multiple Input Sources, Clementson, Bill |
Month |