[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: creating a temporary document from multiple inputs
Hi David, I tried this, and the proposed <xsl:variable name="doc"> produces an error. <xsl:variable name="paths" as="item()*"> <xsl:sequence select = "($p1,$p2,$p3)" /> </xsl:variable> <xsl:variable name="doc" as="document-node()*" select="document($paths)/*"/> Warning: on line 34 Required item type of value of variable $doc is document-node(); supplied value has item type element(). The expression can succeed only if the supplied value is an empty sequence. Warning: on line 34 of strip4ilp.xsl: The only value that can pass type-checking is an empty sequence. Required item type of value of variable $doc is document-node(); supplied value has item type element() Warning: on line 34 of strip4ilp.xsl: The only value that can pass type-checking is an empty sequence. Required item type of value of variable $doc is document-node(); supplied value has item type element() Error on line 34 of strip4ilp.xsl: XTTE0570: Required item type of value of variable $doc is document-node(); supplied value has item type element({http://www.w3.org/2001/XMLSchema}schema, xs:anyType) -W On 23/03/2013, David Carlisle <davidc@xxxxxxxxx> wrote: > On 09/03/2013 16:02, Wolfgang Laun wrote: >> XSLT 2.0. >> >> I had to create a single document from several inputs (so that a key >> lookup could access them all with a single call): >> >> <xsl:variable name="doc" as="document-node()"> <xsl:document> >> <xsl:sequence select="document($paths)/*"/> </xsl:document> >> </xsl:variable> <xsl:key name="kSkips" >> match="element()[@omc:ilp='0']" use="@name"/> >> >> <xsl:variable name="look" select="key('kSkips',$name,$doc)"/> >> > > If you are only concatenating them for the key lookup that's an > expensive way to do it (unless your processor internally manages to > avoid copying all the nodes). > > Why not just look up along the sequence of documents? > > <xsl:variable name="docs" as="document-node()*" > select="document($paths)/*"/> > > <xsl:variable name="look" select="$docs/key('kSkips',$name,.)"/> > > David
|
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
|