xsl-list
[Top] [All Lists]

RE: [xsl] Specific xpath

2008-02-06 18:01:33
Thank you Michael, 

I actually did figure this out after a while. I used to work with regular
expressions and am still finding my feet with XPath in XSLT 1.0. Your
message confirms that I got it right - which is very useful feedback.
Thanks.

My final template match included bookmarks (#) and looked like this:

<xsl:template match="xhtml:a[not(contains(@href,'/') or
contains(@href,'#'))]">

Thanks again,
Richard

-----Original Message-----
From: Michael Müller-Hillebrand 
Sent: 06 February 2008 08:58
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] Specific xpath

It is one of the beauties of XSL that make this rather easy:

non-local links: <xsl:template match="xhtml:a[contains(@href, '/')]">

local links: <xsl:template match="xhtml:a[not(contains(@href, '/'))]">

- Michael Müller-Hillebrand

Am 05.02.2008 um 21:43 schrieb <marrocdanderfluff(_at_)yahoo(_dot_)co(_dot_)in>
<marrocdanderfluff(_at_)yahoo(_dot_)co(_dot_)in>:

Hi all,

I'm working in XHTML with XSLT 1.0 and need to change all relative 
links that are in the current folder. That means, I need to pick out 
local links that are just a file name "abc_1234.htm" and exclude any 
that are Internet (http), links to other folders, that is 
href="/other_folder" or href="../another_folder", links to bookmarks 
href="#top".

At the moment I am matching all links:

<xsl:template match="xhtml:a">

Is it possible to filter link types using the href attribute?

<xsl:template match="xhtml:a[(_at_)href='some_expression']" > or 
<xsl:template match="xhtml:a[some_function(@href, string, string)]" >

Is this possible or do I need a more elaborate solution using 
variables and parameters?

Thanks,
Richard




--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--