I have now. I've just noted that in an xml like this:
<a>
<b>
<c>
<e></e>
</c>
</b>
<x>current node</x>
<a>
Given <x> is the context node, the preceding element is <e>, but I am
expecting <b> So I now have something like this:
<xsl:variable name="previous-nodes" select="ancestor::*[1] |
preceding-sibling::*[1]/>
The ancestor select is necessary because if the preceding <b> node did
not exist then the correct node match would be <a>.
So then previous node is: $previous-nodes[last()]
See any issues with the above? Let me restate what I am after:
Select the first preceding sibling node if exists, or select the first
ancestor node, if exists.
I have another question about generating id's. Will the results be
the same regardless how you get to the node()? I seem to be getting
different answers, but this is not conclusive.
Karl..
On Mon, Feb 7, 2011 at 11:40 PM, Szabo, Patrick (LNG-VIE)
<patrick(_dot_)szabo(_at_)lexisnexis(_dot_)at> wrote:
Have you tried preceding::*[1] ?!
AFAIK this only matches elements.
. . . . . . . . . . . . . . . . . . . . . . . . . .
Patrick Szabo
XSLT-Entwickler
LexisNexis
Marxergasse 25, 1030 Wien
mailto:patrick(_dot_)szabo(_at_)lexisnexis(_dot_)at
Tel.: +43 (1) 534 52 - 1573
Fax: +43 (1) 534 52 - 146
-----Ursprüngliche Nachricht-----
Von: Karl Stubsjoen [mailto:kstubs(_at_)gmail(_dot_)com]
Gesendet: Dienstag, 08. Februar 2011 07:16
An: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Betreff: [xsl] 1st previous node()
XSL1.0
I need help finding the first previous node, skipping white space,
comments, etc.. I thought this might work, but I can't get it or
similar tries to work.
<xsl:variable name="previous" select="preceding::node()
[not(comment())]
[not(text())]
[not(processing-instruction())]
[1]"/>
Given that <X> is the context node then I expect the previous node is <M>.
<A>
<M>
<?skip me?>
<!--skip me-->
</M>
<X> this is context node </X>
</A>
Given that <X> is the context node then I expect the previous node is <B>.
<A>
<B>
<X> this is context node </X>
</B>
</A>
--
Karl Stubsjoen
MeetScoresOnline.com
(602) 845-0006
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--
Karl Stubsjoen
MeetScoresOnline.com
(602) 845-0006
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--