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: Getting a predicate right


Hello Matt,

with this description only the question of the context remains. If a <mesg> element is the context element, your XPath expression should be

<xsl:value-of select="/test/colors/desc[@id = current()/@grp]/@name"/>

I assume this is what you want.

"desc[@id = @grp]" can not work because both attributes refer to the <desc> element, which means the XPath is only true for a <desc> element, whose value of @id is the same like the value of @group.

Regards,

Joerg

Kuhns Matt wrote:
Sorry if I wasn't clear enough about what I wanted.
My XML Sheet looks like this:
<test>
<colors>
  <desc id="0" name="blue"/>
  <desc id="1" name="red"/>
  <desc id="2" name="white"/>
</colors>
<mesg grp="1">Hi how are you?</mesg>
<mesg grp="0">I am fine.</mesg>
<mesg grp="2">That is good.</mesg>
</test>
In my XSL I am going through the messages and trying
to match the attribute grp from mesg with the
attribute id from desc.
something like this:
//test/colors/desc[@grp]/@name
or
//test/colors/desc[@id = @grp]/@name
I hope this is clearer.
Thanks in advance.
Matt

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]