You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by Jo...@lotus.com on 2001/05/22 18:05:14 UTC

XSLTC iterator setMark/gotoMark

We're in the process of implementing an equivalent of XSLTC's iterators, as
part of the DTM work, and I'm somewhat confused by the design of the
setMark/gotoMark operations.

These save and restore the iterator's current node... but they do _not_
save and restore the relative-position counter (sequence within the
iteration). In other words, the sequence of operations:
     myAxisIterator.setMark()
     myAxisIterator.next()
     myAxisIterator.next()
     myAxisIterator.gotoMark()
     i=myAxisIterator.last()
will return the wrong number, since position has been advanced.

Is there a Good Reason for this behavior, or was it simply a design
oversight?