Subject: RE: [xsl] most efficient way to get XML source's parent dir path From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Tue, 10 Feb 2009 17:13:02 -0000 |
last() is a number >= 1, so boolean(last()) is always true, and not(last()) is always false. So a filter expression using the predicate [not(last())] will always deliver an empty sequence. Use [position() ne last()] Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Robert Koberg [mailto:rob@xxxxxxxxxx] > Sent: 10 February 2009 16:53 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] most efficient way to get XML source's parent dir path > > Hi, > > I want to get the path to the parent directory of the XML > used as the source in a transformation. > > Is this the best way? > > <xsl:variable > name="path-tokens" > select="tokenize(document-uri(/), '/')" as="xs:string*"/> > <xsl:variable > name="source-dir-path" > select="string-join(remove($path-tokens, > count($path-tokens)), '/')" as="xs:string"/> > > I also unsuccessfully tried to use only one variable: > > <xsl:variable > name="source-dir-path-test" > select="string-join(tokenize(document-uri(/), > '/')[not(last())], '/')" as="xs:string"/> > > which results in an empty string. > > Is there a better way? > > thanks, > -Rob
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] most efficient way to get, Robert Koberg | Thread | Re: [xsl] most efficient way to get, Owen Rees |
Re: [xsl] most efficient way to get, Robert Koberg | Date | Re: [xsl] most efficient way to get, Owen Rees |
Month |