This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Identifying two tags that share some attribute names and values
Hi Zack,
> There's still a problem. when this recipe compares attributes, it
> sees line-breaks within an attribute and uses them in its
> comparison. So <a x="hi
> there"/> won't match <b x="hi there"/>.
>
> Is there any way around this?
You could normalize the attribute values before testing them. Use the
normalize-space() function -- that will turn all the newline (and tab)
characters into spaces, strip leading and trailing whitespace, and
collapse any sequence of spaces into a single space. To use this,
though, you have to change the test a bit since you can't take
advantage of the "existential semantics" of the equals operator. So
do:
not($b/@*[name() = name(current()) and
normalize-space() = normalize-space(current())])
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list