Re: Disable Output Escaping - really useful

Subject: Re: Disable Output Escaping - really useful
From: David Carlisle <davidc@xxxxxxxxx>
Date: Wed, 22 Mar 2000 11:47:39 GMT

> Anyone know a way of doing this without disable-output-escaping? Is using
> disable-output-escaping like this a bit of a hack?

Any use of disable-output-encoding is _always_ a hack.

In a few situations it is useful (I have used it sometimes in my sheets)
but it is _always_ a bad idea, and means that your output tree will
not work as expected unless it is going to be reparsed, usually
it is only needed to overcome unfortunate markup in the input document
(like useful structure being hidden in a CDATA section).

> When an item is the 5th, 10th, 15th etc. (using "position() mod 5 =0")
> it should close this row and start the next.

Wrong viewpoint! In XSL you should think in terms of constructing a tree
not of writing out a linear XML syntax. Clearly in a `tree view'
there is no sense to </tr><tr>.

What you want to do is select every 5th node, and put that node and its 
four next siblings into a tr node.
so (untested)

<xsl:for-each select="item[position() mod 5 = 1]">
<tr>
  <xsl:apply-templates 
     select=".|following-siblings::item[position() &lt; 5]"/>
</tr>
<xsl:for-each>

David


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread