[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] node() function

Subject: Re: [xsl] node() function
From: "Dimitre Novatchev dnovatchev@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 24 Jun 2014 03:06:31 -0000

On Mon, Jun 23, 2014 at 5:01 PM, Abel Braaksma (Exselt)
abel@xxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>> Mailing Lists Mail daktapaal@xxxxxxxxx
>> <mailto:xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
>> maandag 23 juni 2014 22:17
>> <xsl:template match="node()|@*">
>> <xsl:apply-templates/>
>> </xsl:template>
> The expression "node()" is not a function, it is a node-test, similar to
> "foo" (tests for an element with the name 'foo') or "comment()" (tests for
> comment nodes). The template is matched when _any_ node is found. Since
> inside the body of the template you only have an xsl:apply-templates and the
> only template in existence is that very template, the stylesheet as a whole
> will not output anything: a so-called "delete-template".

To explain this:

All nodes are matched and processed by the same template above.
Whenever a text node is matched, the <xsl:apply-templates/>
instruction selects 0 (zero) nodes, because by definition a text-node
doesn't have any children.

This is where the processing cannot continue and when all text nodes
are matched, the transformation ends.

A shorter "delete-all" template is, of course this:

  <xsl:template match="node()"/>

or even shorter:

  <xsl:template match="/"/>

Dimitre Novatchev
Truly great madness cannot be achieved without significant intelligence.
To invent, you need a good imagination and a pile of junk
Never fight an inanimate object
To avoid situations in which you might make mistakes may be the
biggest mistake of all
Quality means doing it right when no one is looking.
You've achieved success in your field when you don't know whether what
you're doing is work or play
To achieve the impossible dream, try going to sleep.
Facts do not cease to exist because they are ignored.
Typing monkeys will write all Shakespeare's works in 200yrs.Will they
write all patents, too? :)
I finally figured out the only reason to be alive is to enjoy it.

Current Thread