An interesting observation that emerged at lunch

We have _three_ use classes of variables in DataProc, where XProc only
had two:

  1) Old ones:

     a) XProc language XDM variables, formerly bound with p:variable,
        now with *let*;

     b) XPath variables, bound with various XPath constructs.

  2) New ones: XProc language port variables, bound with various arrows.

XProc1 has a story about how variable _references_ in XPaths are
interpreted which depends on a moderately complicated story about how
the XPath static context is built-up from in-scope (1a) bindings.

DataProc will need a rather more complicated story about how
language-level references are interpreted, and how the XPath static
context is built up, from both (1a) bindings and (2) bindings.

This story is _different_ (in principle -- or is it?) from the way in
which references to (2)-variables are interpreted at the top-level, in
the language, as it were.  This led on to the question of whether using
'$' for _both_ things (i.e. XPath reference and DataProc usage) is
actually helpful.

At the very least, being clear about the difference between these three
kinds of variables will be both important and tricky.  It might help if
we called (2) something else, e.g. "pipe names" or "endpoint names".
ht
-- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 650-4587, e-mail: ht@inf.ed.ac.uk
                       URL: http://www.ltg.ed.ac.uk/~ht/
 [mail from me _always_ has a .sig like this -- mail without it is forged spam]

Received on Thursday, 11 February 2016 14:59:19 UTC