Subject: Re: [xsl] Seek an XPath expression which concatenates an arbitrary number of strings From: "Martin Honnen martin.honnen@xxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Fri, 15 Mar 2024 14:20:49 -0000 |
On 15/03/2024 15:12, Martin Honnen martin.honnen@xxxxxx wrote: > > > On 15/03/2024 14:53, Roger L Costello costello@xxxxxxxxx wrote: >> I have an XML document containing an arbitrary number of <binary-value> elements: >> >> <Document> >> <binary-value>0100</binary-value> >> <binary-value>11</binary-value> >> <binary-value>1010001</binary-value> >> ... >> </Document> >> >> I want an XPath expression which concatenates the binary values into one long string: >> >> 0100111010001... >> >> I thought this would work: >> >> concat(for $i in //binary-value return $i) >> >> but that gives an error, "Cannot find a 1-argument function named concat" >> >> What is the correct XPath, please? >> > I wonder whether XPath 4 allows you to use concat in a more > sophisticated way then predefining the number of args with e.g. > > B B B B B B B apply(concat(?,?,?), array { //binary-value }) > > would work for your posted input sample. > concat can be used with B let $bv := //binary-value return apply(function-lookup(QName('http://www.w3.org/2005/xpath-functions', 'concat'), count($bv)), array { $bv })
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Seek an XPath expression , Martin Honnen martin | Thread | Re: [xsl] Seek an XPath expression , Liam R. E. Quin liam |
Re: [xsl] Seek an XPath expression , Martin Honnen martin | Date | Re: [xsl] Seek an XPath expression , Michael Mueller-Hill |
Month |