Re: [xsl] The fundamental differences between XPath and XSLT?

Subject: Re: [xsl] The fundamental differences between XPath and XSLT?
From: "Colin Adams" <colinpauladams@xxxxxxxxxxxxxx>
Date: Wed, 9 Apr 2008 12:43:54 +0100
On 09/04/2008, Costello, Roger L. <costello@xxxxxxxxx> wrote:

>  1. An XPath expression operates on one or more in-memory node trees.
>
>    (a) True
>    (b) False

False.
E.g. substring-after("frederick", "fred") operates on zero node trees.

>  2. An XPath expression cannot change an in-memory node tree.  (More
>  precisely, "Evaluating an XPath expression cannot result in changes to
>  any in-memory node trees.")
>
>    (a) True
>    (b) False

True

>  3. XPath can only be used to:
>      - navigate through an in-memory node tree
>      - retrieve values from the in-memory node tree
>      - operate on the values it retrieves (the result of an operation
>  does not modify the in-memory node tree)
>
>    (a) True
>    (b) False

False - see (1)

>  4. An XSLT element operates on one or more in-memory node trees.
>
>    (a) True
>    (b) False

False. No node trees (whether in or out of memory) need be present.

>  5. An XSLT element can change an in-memory node tree.  (More precisely,
>  "Evaluating an XSLT element can result in changes to one or more
>  in-memory node trees.")
>
>    (a) True
>    (b) False

False.

>  6. The "in-memory node tree" referenced above is always a "DOM tree."
>  Thus, for example, (1) is more precisely phrased as: An XPath
>  expression operates on one or more DOM trees.
>
>    (a) True
>    (b) False

False. Rather they are instances of the XPath Data Model (XDM).
An implementation might choose to use the DOM. I never would (it's disgusting).

Current Thread