Is there any way to select or process the siblings in
between one top-level <div*> and the next, especially
with something that only uses XPath 1.0?
Yes this is a grouping problem, see the usual places like Jeni's site.
one way:
<xsl:key name="x" match="node()" use="generate-id((..|preceding-sibling::div1|
preceding-sibling::div2|preceding-sibling::div3)[last()])"/>
Then
sitting on the parent
for-each select=".|div1|div2|div3"
the requested set of nodes is
key('x',generate-id(.))
This is xpath1 as extended by xslt, if you want pure xpath1 eg for dom
access outside xslt just do it the old way
David
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list