This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: How to use Extensions
- To: <xsl-list at lists dot mulberrytech dot com>, binarycloud-dev <binarycloud-dev at lists dot sourceforge dot net>
- Subject: Re: [xsl] How to use Extensions
- From: Alex Black <enigma at turingstudio dot com>
- Date: Tue, 29 May 2001 11:10:22 -0700
- Reply-To: xsl-list at lists dot mulberrytech dot com
> I guess you've noticed that the XSLT 1.0 spec says "This version of XSLT
> does not provide a mechanism for defining implementations of extensions."
> Instead, check out your XSLT processor's documentation: if it's written in
> Java, it should show you (and hopefully demonstrate!) the Java way to
> implement an extension element or function, and if it's written in C++, it
> should show you the C++ way. For further help, each processor usually has
> its own mailing list where you can find people more intimate with the inner
> workings of that processor; the coding of extensions is a popular topic on
> these lists.
Do you know of anyone doing anything similar to cocoon, i.e. "logic calls"
from within a stylesheet?
This is _sorely_ needed with php, at the moment some things with
php/xml/xslt are quite painful.
I would love to see an extension to sablotron to do this :)
for example:
<xsl:logic language="php">
<?php for ($i=0, $i<10, $i++) { ?>
<thing><?php echo $i; ?></thing>
<?php } ?>
</xsl:logic>
within a stylesheet, where php is used to evaluate this block of code..
during the transformation.
actually, most of that use would be for things like:
-math
-values returned from queries
-other xml trees which is makes sense to abstract
> As a bit of background, the XSLT 1.1 Working Draft, which seems to be on
> permanent back burner status while the Working Group focuses on XSLT 2.0,
> did offer a way to define extension functions right in your stylesheet. The
> disadvantages of this--mainly how it would encourage developers to put too
> much stylesheet logic in the JavaScript code in their xsl:script element
> instead of using the appropriate XSLT elements for this--were extensively
> debated on this mailing list.
Ah, even better: support for this concept seems to have made it into XSLT 2.
Do you know if they plan to have this generalized? i.e. you can say
something xslpish:
<xsl:logic language="php">
<?php for ($i=0, $i<10, $i++) { ?>
<thing><?php echo $i; ?></thing>
<?php } ?>
</xsl:logic>
or something like:
<xsl:logic language="java">
<% for (int i=0, i < 10, i++) { %>
<thing><% out.println(i) %></thing>
<% } %>
</xsl:logic>
...
i.e. you can just pick your "logic handler"
_alex
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list