Subject: Re: [xsl] XSLT Streaming Terminology: why is it called "striding"? From: Michael Kay <mike@xxxxxxxxxxxx> Date: Sun, 9 Feb 2014 11:06:36 +0000 |
On 9 Feb 2014, at 10:38, Costello, Roger L. <costello@xxxxxxxxx> wrote: > Hi Folks, > > A striding construct is one that returns a sequence of items and the items are all disjoint (item i is not nested in item j). > > Why are such constructs called "striding"? Would you please give some intuition on why such constructs are called striding? Largely whimsical, I was having a bit of fun. In the earlier spec they (or the nearest equivalent) were called "incrementally consuming"; but in the new analysis self::* comes out as striding but not consuming. The word "crawling" is fairly natural for something that visits every node of a tree (visualise a caterpillar), and I wanted a contrast for something that skips across from one branch of a tree to another without visiting all the leaves. I thought of "skipping" but that seemed to have connotations implying that there are nodes that are not processed. > > Also, why is striding important? I think that striding constructs are important because: > > The sequence of items returned by a striding > construct can be operated on in a streaming > fashion. > > Is that correct? > Seems a gross over-simplification. The essence of striding expressions is that they deliver a sequence of nodes with disjoint subtrees, so you can process (and consume) the subtree of one node in the sequence before moving on to the next. Michael Kay Saxonica
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] XSLT Streaming Terminology: w, Costello, Roger L. | Thread | Re: [xsl] XSLT Streaming Terminolog, Michael Kay |
[xsl] XSLT Streaming Terminology: w, Costello, Roger L. | Date | Re: [xsl] XSLT Streaming Terminolog, Michael Kay |
Month |