Within MarcEdit, the MarcEngine makes use of the .NET System.xml libraries. This has been a very good thing in that Microsoft has a very special class setup specifically for XSLT translations — and by adding some additional code and extending the class, I’ve been able to create a very fast XSLT processor. The downer however is that it has the same limitations as the System.XML library — i.e., it only supports versions XSL 1.0. For a while, I’ve been evaluating the Saxon.NET library and it looks very promising. I’m going to do some testing with the library to see how it compares speed wise, but I really like the fact that it supports version 2.0 of many XML processing languages. I use saxon on unix all the time, but if anyone has any particular experience working with the .NET version of the Saxon library, drop me a line and give me your thoughts. I’ll post my impressions later on.
–TR