Re: [xsl] Re: Assignment no, dynamic scoping si (was: Wishes for XSL revisions ...

Subject: Re: [xsl] Re: Assignment no, dynamic scoping si (was: Wishes for XSL revisions ...
From: Gunther Schadow <gunther@xxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 28 Dec 2001 12:56:54 -0500
Mike Haarman wrote:


There is no question about side-effects and global variables in
the imperative programming style. I didn't ask for any of this
to be added to XSLT. What I was asking for was dynamic scoping,
at least an option to be able to use dynamic scoping for some
variables. I also said that without dynamic scoping I could see
little reason for calling variables variables, because they are
fixed value bindings that I could just simply lexically substitute
wherever they are used (except where an RTF is constructed.)



It should be possible to give a semblance of dynamic scoping by wrapping your processor in a class which maintains access to and value of symbols which the stylesheet references via an extension. I should think. I've never done anything like this in practice. What are the limitations to such an approach?


There is even a simpler approach using only XSLT: I can make all
templates use an argument that is a constructed node-set
containing name-value pairs (the dynamic environment) and references
to the bindings in this environment would be supported by some
xpath selects in that environment node-set.

However, the problem with any of these things is that they are
either external additions or internal style rules none of which
work well in a larger distributed environment. I can write my
own systems to work that way, my own XSLT sheets to conform
with my styles but as soon as I collaborate with others, we get
into interoperability problems. That's why it is important to
have a few basic constructs in the language standard.

regards
-Gunther


-- Gunther Schadow, M.D., Ph.D. gschadow@xxxxxxxxxxxxxxx Medical Information Scientist Regenstrief Institute for Health Care Adjunct Assistant Professor Indiana University School of Medicine tel:1(317)630-7960 http://aurora.regenstrief.org



XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list


Current Thread