Subject: Re: [xsl] Referencing value of non-sibling node From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Sat, 6 Apr 2002 18:23:23 +0100 |
Hi Kim, > My specific question is when I have matched a <moid> and also > matched a <mt> value, how do I specify/reference the corresponding > indexed <r> value? In the example above, if I match <mt>mtVal4, the > fourth element, I would also print out the fourth <r>rVal4 value. >From what I can tell, each <mt> is associated with a particular <r> based on its position, so the first <mt> in a <mi> is related to the first <r> within the <mv> of that <mi>, the second <mt> with the second <r> within the <mv> of the <mi> and so on. Is that accurate? If so, then in your template matching the <mt> element, you have to first find out the index of the <mt> within the <mi>. Now, you're actually applying templates to these <mt> elements in order, so this is quite easy -- all you have to do is store the position() of the current <mt> element in a variable: <xsl:variable name="index" select="position()" /> and then use that index to find the <r> element within the <mt> element's parent <mi> element's child <mv> element with the same position: <xsl:value-of select="parent::mi/mv/r[$index]" /> If that isn't what you were after, give us a more detailed description of what the "corresponding <r>" means. Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Referencing value of non-sib, Kim | Thread | Re: [xsl] Referencing value of non, Kim |
[xsl] ANN: Second Edition of XSLFO , G. Ken Holman | Date | Re: [xsl] Writing a stylesheet to c, Jeni Tennison |
Month |