If it were me, I'd start by creating (by hand) a source
<source>
<line/>
...
<line/>
</source>
with the correct number of lines (easy enough to do), and iterate over that
using David's solution, without needing the funky position() test:
<xsl:for-each select="//line">
<line x1="{position()+15}%" yi=85%" x2="{position()+15}%" yi=15%" />
</xsl:for-each>
(Sometimes brute force is the easiest solution, especially for a one-off.)
On the other hand, you've probably already done it with one of the more
general solutions already posted.
Cheers,
Wendell
At 07:44 AM 3/3/2004, David wrote:
so long as your source tree has at least 70 nodes,
<xsl:for-each select="(//node()}[position() <= 70]">
<line x1="{position()+15}%" yi=85%" x2="{position()+15}%" yi=15%" />
</xsl:for-each>
======================================================================
Wendell Piez
mailto:wapiez(_at_)mulberrytech(_dot_)com
Mulberry Technologies, Inc. http://www.mulberrytech.com
17 West Jefferson Street Direct Phone: 301/315-9635
Suite 207 Phone: 301/315-9631
Rockville, MD 20850 Fax: 301/315-8285
----------------------------------------------------------------------
Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list