Andrew Welch wrote:
Ken:
So, you will see below a working version where I tighten up the node
processing by pushing only the nodes that are to be affected by the
position() function in the current node list, and the counting modulo
arithmetic is based on the grouping of 10 Rows, not the combination of 10
Rows and 10 Text nodes.
I hope this helps.
............... Ken
Hi Ken,
Sorry to be picky, but here you mention 'pushing' nodes to a template using <xsl:apply-templates
select="foo"/>, I've always regarded that as pulling... is that right? I've always
thought the only way you can use 'push' is through a basic <xsl:apply-templates/> where the
next node to process is decided by document order, with any select statement (apply-templates or
for-each) pulling nodes through (e.g. the nodes to process are decided by the stylesheet).
I may be missing one of the fundamentals here :)
Having ushered for one of Ken's talks where he talks about push vs. pull
(Hi Ken! <g>), I think the best way to break it down is push =
apply-templates, while pull = value-of. The key being the ORDER of
elements in push being decided by the order in the source document,
while the order of elements in the pull method being decided by the
stylesheet. You're "pulling in" the value, as opposed to letting the
XSLT processor "push" the value to you in the order it finds it. The
match attribute is just a filter.
--
Larry Garfield AIM: LOLG42
larry(_at_)garfieldtech(_dot_)com ICQ: 6817012
"If nature has made any one thing less susceptible than all others of
exclusive property, it is the action of the thinking power called an
idea, which an individual may exclusively possess as long as he keeps it
to himself; but the moment it is divulged, it forces itself into the
possession of every one, and the receiver cannot dispossess himself of
it." -- Thomas Jefferson
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list