[xsl] generic formula for splitting mixed-text elements to create blocks

Subject: [xsl] generic formula for splitting mixed-text elements to create blocks
From: "Dorothy Hoskins dorothy.hoskins@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 11 Mar 2016 23:19:11 -0000
Is there a generally accepted way to split a mixed text element such as
<para>this is text with <bold>inline elements</bold> and includes a
   <list>
      <list-item><p>item a</list-item>
      <list-item><p>item b</list-item>
      <list-item><p>item c</list-item>
   </list>
within a paragraph with other inline elements <italic>after</italic> the
list/</para>

The result would be split to become this:
<para>this is text with <bold>inline elements</bold> and includes a</para>
<list>
   <list-item><p>item a</list-item>
   <list-item><p>item b</list-item>
   <list-item><p>item c</list-item>
</list>
<p>within a paragraph with other inline elements <italic>after</italic> the
list.</para>

I'm not terrible fold of splitting paragraphs, but for conversion to HTML,
the 2nd example is a better starting point for a transformation.

I'd like to have a pattern I could apply whenever I come across a similar
situation.

Current Thread