Hi Thomas,
> I'm working with XML in the following form:
>
> <cat>
> <para>This is unstyled text <emphasis type="bold">and
> this is bold. </emphasis>Now back to unstyled
> text.</para>
> </cat>
>
>
> As you can see it has some inline style information
> that's borderline not-well-formed. For my ease of use
> I want the XML in this form (or the equivalent
> result):
>
> <cat>
> <para><emphasis type="default">This is unstyled text
> </emphasis><emphasis type="bold">and this is bold.
> </emphasis><emphasis type="default">Now back to
> unstyled text.</emphasis></para>
> </cat>
Just take the identity transformation and add:
<xsl:template match="para/text()">
<emphasis type="default">
<xsl:value-of select="."/>
</emphasis>
</xsl:template>
This way you select only text-nodes which are children of the para element.
> As extra credit :~) I want to keep possible nesting in
> mind, although my initial problem is already a sort of
> nesting problem, isn't it?
Can you give some details?
Hope this helps.
Manfred
|