xsl-list
[Top] [All Lists]

Re: preceding-sibling:: while keeping xml well formed

2005-05-31 10:36:41
Hi guys,

Thank you very much, I can modify each easily to fit my needs. Once
again apreciate the help.

Spencer

On 5/31/05, Aron Bock <aronbock(_at_)hotmail(_dot_)com> wrote:
With this input:

<i>This<b>is</b>valid</i>

This XSL:

<?xml version="1.0" encoding="iso8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
    <xsl:output method="xml" indent="yes"/>

    <xsl:template match="/">
        <data>
            <xsl:apply-templates/>
        </data>
    </xsl:template>

    <xsl:template match="text()[ancestor::i and not(ancestor::b)]">
        <italic>
            <xsl:copy-of select="."/>
        </italic>
    </xsl:template>

    <xsl:template match="text()[ancestor::b[ancestor::i]]">
        <bolditalic>
            <xsl:copy-of select="."/>
        </bolditalic>
    </xsl:template>

</xsl:stylesheet>

Produces:

<?xml version="1.0" encoding="UTF-8"?>
<data>
  <italic>This</italic>
  <bolditalic>is</bolditalic>
  <italic>valid</italic>
</data>

It looks only for text() nodes ... something you may need to augment.

--A

I am using xslt to convert one xml to another importable xml.
Everything is going fine except for the fact that the program I am
importing into supports <italic>, and <bold>, but needs a <bolditalic>
when the both are together.

My original xml file is used on the web so of course

<i>This<b>is</b>valid</i>.

I assume this can be done using the preceding-sibiling axis to achive
something along the lines of

<italic>This</italic><bolditalic>is</boldItalic><italic>valid</italic>

_________________________________________________________________
On the road to retirement? Check out MSN Life Events for advice on how to
get there! http://lifeevents.msn.com/category.aspx?cid=Retirement


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



<Prev in Thread] Current Thread [Next in Thread>