This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]