xsl-list
[Top] [All Lists]

[xsl] Streaming terminology: Grounded

2014-01-20 04:38:26
Hi Folks,

I am having a hard time understanding the new streaming terminology. And, 
truthfully, I am feeling overwhelmed with all the new terminology.

Perhaps we could collectively discuss each term, one at a time, and understand 
them?

How about starting with "grounded".

The spec defines it this way:

         Grounded: indicates that the value returned 
        by the construct does not contain nodes from 
        the streamed input document. Atomic values 
        and function items are always grounded; nodes 
        are grounded if it is known that the they are in 
        a non-streamed document. For example the 
        expressions doc('x') and copy-of(.) both return 
        grounded nodes.

So this string

        "Hello World"

is grounded because it is an atomic value and clearly it doesn't involve 
reading anything from the input. That seems reasonable to me.

I am puzzled why 

        copy-of(.) 

is grounded, as it surely *does* result in reading (consuming) the input, right?

And why is

        doc('Book.xml')

grounded? Surely that expression results in reading new input (i.e., the 
content of Book.xml), right?

What are other examples of things that you might put in an XSLT program that 
doesn't result in consuming any input?

So, grounded means "anything that doesn't result in consuming input", right?

/Roger

--~------------------------------------------------------------------
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>