This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Re: Assignment no, dynamic scoping si (was: Wishes for XSL revisions ...
- From: Gunther Schadow <gunther at aurora dot regenstrief dot org>
- To: xsl-list at lists dot mulberrytech dot com
- Date: Fri, 28 Dec 2001 12:56:54 -0500
- Subject: Re: [xsl] Re: Assignment no, dynamic scoping si (was: Wishes for XSL revisions ...
- Organization: Regenstrief Institute for Health Care
- References: <Pine.GSO.4.30.0112281123400.20908-100000@brigit.hist.umn.edu>
- Reply-to: xsl-list at lists dot mulberrytech dot com
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@regenstrief.org
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