Subject: problem selecting node sets From: Paul Madsen <paul.madsen@xxxxxxxxxxxx> Date: Thu, 09 Nov 2000 15:55:26 -0500 |
I have XML like <agenda> <activity type="flight" time="09"> <activity type="meeting" time="11"> <activity type="hotel" time="15"/> <activity type="flight" time="18"/> </agenda> and I would like to treat the <activity> elements that have a value of 'hotel' for the type attribute differently that the others. I want to grab the value of the 'time' attribute on the next <activity> with either 'meeting' or 'flight' for the value of the 'type' attribute, but skip any <activity> elements that have a value of 'hotel' for the type attribute. For instance, in the above, the second <activity> should ignore the third and grab the value from the fourth instead (because the third is of type 'hotel') The following variable grabs the 'start' attribute regardless of the 'type' attribute. <xsl:variable name="nexttime" select="following-sibling::activity[1]/@time"/> I have experimented with the following. <xsl:variable name="nexttype" select="following-sibling::activity[1]@type"/> <xsl:variable name="nexttime" select="following-sibling::activity[position(1) = 1 and $nexttype != 'hotel']/@time"/> but it doesn't seem to work. I believe that an appropriately defined <xsl:key> is the answer but I'm having trouble with the specifics. thanks for any guidance -- Paul Madsen XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Xalan has a nodeset conversion func, David_Marston | Thread | Re: problem selecting node sets, Jeni Tennison |
Xalan has a nodeset conversion func, David_Marston | Date | Re: SAXON ProcessorException - plea, David Carlisle |
Month |