[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: XSL frustration (was: Re: [xsl] N : M transformation)


Subject: Re: XSL frustration (was: Re: [xsl] N : M transformation)
From: Dimitre Novatchev <dnovatchev@xxxxxxxxx>
Date: Wed, 29 Jan 2003 00:55:55 -0800 (PST)

--- Bernd Gauweiler <bernd@xxxxxxxxxxxxx> wrote:
> It is much better advise to use existing technologies and 
> standards, such as XML DOM and existing languages other than XSL, to 
> do the job.

1. A General Comment.
It is even better to use only Assembler as programming language... And
use your own operating system written in Assembler.

There isn't a single "universal" programming language. It is
universally accepted practice to use libraries with useful
functionality, sometimes written in another, more appropriate language,
sometimes part of the operating system.

Does this, for example, mean that Haskell "isn't" there yet?

Haskell is used for writing games, computer animations, controlling
robots, ... etc. None of these can be implemented without resorting to
foreign functions, yet nobody considers this a Haskell failure.

In .Net a program can freely use functions written in any other
programming language -- is this a failure?

There is a standard way to control and use reliably foreign functions
with side effects within a functional programming language.

A hint that this is perfectly possible to do in XSLT is provided by the
FXSL Calculator, in which a single stylesheet interacts with a user
through a rich Windows environment.

I also have implemented (what is roughly) the functionality of the
IOMonad class, which provides a reliable controlled way to use foreign
functions with possible side effects.


2. Specifically

a) Providing multiple inputs to a transformation has never been a
problem. Use the document() function for this.

b) Generating multiple output files.

 One way to do this is to have a global parameter containing the
name/type of a single output. Then perform the transformation for all
required outputs.

I have used this approach in a real-world product and this works well.

Another approach is to generate one output with the following
structure:

<output>
  <result1>
    <result1Tree>...</result1Tree>
  </result1>
  <result2>
    <result2Tree>...</result2Tree>
  </result2>
..................................
  <resultN>
    <resultNTree>...</resultNTree>
  </resultN>
</output>

That XML is well suited for representing a tree-structured file system
should come as no surprise. There were even hints that in the nearest
future file systems may really be implemented based on this.

> 
> <war type="flame">
>     It seems to me XSLT just "isn't there" yet, is it?
> </war>

Not as flame, but very seriously -- doesn't the above show that XSLT is
much more powerful than one thinks?




=====
Cheers,

Dimitre Novatchev.
http://fxsl.sourceforge.net/ -- the home of FXSL

__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

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



Current Thread
Keywords