|
Subject: Re: [xsl] arbitrary depth element type conversion From: Sebastian Tennant <sebyte@xxxxxxxxxxxxxxx> Date: Fri, 03 Feb 2006 20:26:14 +0000 |
Wendell Piez <wapiez@xxxxxxxxxxxxxxxx> wrote:
> Sebastian,
>
> In addition to what David said, consider the following more succinct
> version of your algorithm:
>
> <xsl:template match="document">
> <xsl:apply-templates/>
> </xsl:template>
>
> <xsl:template match="*">
> <div class="{name()}">
> <xsl:apply-templates/>
> </div>
> </xsl:template>
>
> It does the same thing the same way. I often encourage newcomers to
> try writing things the long way, as it makes things more
> explicit. Here, the difference between the long way and the short way
> (using literal result elements and an attribute value template instead
> of xslt instructions for everything) is so dramatic, I thought it
> worthwhile making the opposite recommendation.
>
> In particular (in the context of the question you first raised), note
> that no explicit statement requesting any values (i.e., any data
> content) is here, or called for -- look ma, no value-of -- in either
> this version or yours (as corrected by DC). That's because it's using,
> instead, the built-in template for text nodes, which looks like this,
> and which will fire, since you have nothing to override it:
>
> <xsl:template match="text()">
> <xsl:value-of select="."/>
> </xsl:template>
>
> Trusting that this will work and getting the hang of "letting it
> happen" in XSLT's template-matching processing model is often an early
> hurdle, higher for some learners than others.
>
> Cheers,
> Wendell
Thank you all. We're just not used to having things done for us are
we!
sdt
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] arbitrary depth element t, Wendell Piez | Thread | Re: [xsl] arbitrary depth element t, Wendell Piez |
| Re: [xsl] Pagebreaks in Excel-HTML , Oleg Konovalov | Date | Re: [xsl] Pagebreaks in Excel-HTML , cknell |
| Month |