Re: [xsl] group-starting-with drops child text nodes - workaround?

Subject: Re: [xsl] group-starting-with drops child text nodes - workaround?
From: Michael Kay <mike@xxxxxxxxxxxx>
Date: Tue, 15 Jun 2010 20:09:44 +0100
There are plenty of people on this list willing and able to show you how to fix your code. But first you need to show them your code. If it's not doing what you want, that's because you wrote it wrong.

Michael Kay
Saxonica

On 15/06/2010 18:40, tom schmitter wrote:
Hello,

It seems that using the grouping method "group-starting-with" will cause child text nodes of the element that starts each group to be omitted from the resulting populations. eg, group-starting-with="subtitle":

<subtitle/>
text
     <b>bolded text</b>
more text
<subtitle/>
...

results in a population that looks like:

<subtitle/>
     <b>bolded text</b>


I believe this is the expected behavior. If so, does anyone know of a workaround? ie, a way to somehow preserve the child text?


For example, my first thought was to wrap the child text nodes in<p>s before performing the grouping, but of course this caused linebreaks to appear between the child text nodes and following inline elements (in the example above, linebreaks would appear between "text", "bolded text", and "more text").

My ultimate objective is create hierarchy (in the example, for<subtitle> to be the parent of all nodes between each subtitle). Is there a better way?

Thanks

Tim

Current Thread