[Mono-list] Managed XSLT

Ben Maurer bmaurer@users.sourceforge.net
30 Jul 2003 00:34:34 -0400


--=-KyKjpmJRWiSN7+a+vAWH
Content-Type: text/plain
Content-Transfer-Encoding: 7bit

Hello Everyone,

Today I have checked support for managed XSLT transformations into CVS.
Currently, we use libxslt to preform XSLT transformations, however this
solution does not allow advanced use, such as using custom
XPathNavigators.

The new managed XSLT provider is written in C# and is designed to behave
in a similar way to Microsoft's System.Xml.Xsl. Much of the XSLT 1.0
Recommendation has been implemented, however there is still a long way
to go. Advanced elements such as xsl:number, xsl:fallback,and xsl:output
are not fully supported.

Nonetheless, we are able to run tools such as MonoDoc, NUnit and
corcompare without modification. I urge you to try out any existing
stylesheets with the managed provider; I will be prioritizing what parts
of XSLT I implement by the number of requests for support in the area.
XSLT is a long way from being as good as other managed implementations
such as Saxon and Xalan (Java) or Microsoft's C# XSLT implementation,
however the parts we are missing are used only 10% of the time and will
require 90% of the effort.


You can use the following steps to use the managed XSLT provider:

     1. Update System.Xml to the latest version from CVS. Changes are
        happening very quickly, bugs are fixed every hour, make sure you
        update.
     2. make; make install
     3. export MONO_MANAGED_XSLT=true
     4. <Run your code>

As long as the MONO_MANAGED_XSLT variable is set, your code will use the
managed engine, otherwise, it will use libxslt, as before. You can
verify that it is actually running on the managed engine if verbose
debugging information is displayed.

If you find any bugs, or would like a specific part of XSLT to be
implemented, please feel free to e-mail me.



Ben Maurer

--=-KyKjpmJRWiSN7+a+vAWH
Content-Type: text/html; charset=utf-8

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.0.7">
</HEAD>
<BODY>
Hello Everyone,<BR>
<BR>
Today I have checked support for managed XSLT transformations into CVS. Currently, we use libxslt to preform XSLT transformations, however this solution does not allow advanced use, such as using custom <TT>XPathNavigator</TT>s.<BR>
<BR>
The new managed XSLT provider is written in C# and is designed to behave in a similar way to Microsoft's <TT>System.Xml.Xsl</TT>. Much of the XSLT 1.0 Recommendation has been implemented, however there is still a long way to go. Advanced elements such as <TT>xsl:number, xsl:fallback,</TT>and <TT>xsl:output </TT>are not fully supported.<BR>
<BR>
Nonetheless, we are able to run tools such as MonoDoc, NUnit and corcompare without modification. I urge you to try out any existing stylesheets with the managed provider; I will be prioritizing what parts of XSLT I implement by the number of requests for support in the area. XSLT is a long way from being as good as other managed implementations such as Saxon and Xalan (Java) or Microsoft's C# XSLT implementation, however the parts we are missing are used only 10% of the time and will require 90% of the effort.<BR>
<BR>
<H4>You can use the following steps to use the managed XSLT provider:</H4>
<OL TYPE=1>
    <LI TYPE=1 VALUE=1>Update System.Xml to the latest version from CVS. Changes are happening very quickly, bugs are fixed every hour, make sure you update.
    <LI TYPE=1 VALUE=2><TT>make; make install
    <LI TYPE=1 VALUE=3>export MONO_MANAGED_XSLT=true</TT>
    <LI TYPE=1 VALUE=4>&lt;Run your code&gt;
</OL>
As long as the <TT>MONO_MANAGED_XSLT</TT> variable is set, your code will use the managed engine, otherwise, it will use libxslt, as before. You can verify that it is actually running on the managed engine if verbose debugging information is displayed.<BR>
<BR>
If you find any bugs, or would like a specific part of XSLT to be implemented, please feel free to e-mail me.<BR>
<I></I><BR>
<BR>
<BR>
<I>Ben Maurer</I>
</BODY>
</HTML>

--=-KyKjpmJRWiSN7+a+vAWH--