[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: Evaluating XSLT2 from code

Subject: RE: Evaluating XSLT2 from code
From: Andrew Sharpe <andrewrwsharpe@xxxxxxxxx>
Date: Thu, 11 Aug 2005 09:59:46 -0400 (EDT)
saxon dotnet
Thanks very much Dr. Kay.  As I need to evaluate the
expression from my Dotnet program, I tried your
suggestion using Saxon.NET in C# like so:

using net.sf.saxon;
using net.sf.saxon.query;
using net.sf.saxon.om;
using javax.xml.parsers;
using javax.xml.transform.dom;
using org.w3c.dom;

Configuration c = new Configuration();
StaticQueryContext qp = new StaticQueryContext(c);
qp.declareActiveNamespace("saxon",
"http://saxon.sf.net/");
XQueryExpression xe =
qp.compileQuery("format-date(<myxpath>,
'[M]-[D]-[Y]')");
DynamicQueryContext dqc = new DynamicQueryContext(c);
DocumentBuilderFactory f =
DocumentBuilderFactory.newInstance();
DocumentBuilder d = f.newDocumentBuilder();
Document doc = d.parse(new java.io.File(<myxmlfile>));
DocumentInfo di = qp.buildDocument(new
DOMSource(doc));
dqc.setContextNode(di);
java.util.List result = xe.evaluate(dqc);

but received the all-too familiar :

System.TypeLoadException was unhandled
  Message="Method
'java.lang.Comparable/compareTo(Ljava.lang.Object;)I'
on type 'net.sf.saxon.value.CalendarValue' from
assembly 'Saxon.NET, Version=0.2.8.3, Culture=neutral,
PublicKeyToken=039082bc3d203ffd' is overriding a
method that has been overridden."
  Source="Saxon.NET"
  TypeName="net.sf.saxon.value.CalendarValue"
  StackTrace:
       at net.sf.saxon.value.Value.convert(Item item)
...

I receive this exception quite often in my attempts to
use Saxon.NET.  Their mailing list has proven
unresponsive.

If anyone out there is experienced with Saxon.NET and
has suggestions, or anyone has any alternative
suggestions (other than Saxon.NET) to evaluate
"format-date(<myxpath>, '[M]-[D]-[Y]')" against a DOM
in memory from within my Dotnet application, I would
be very much appreciative.

Thanks again,

Andrew Sharpe
Moncton, NB
Canada
 
> -----Original Message-----
>Date: Wed, 10 Aug 2005 18:53:15 +0100
>To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
>From: "Michael Kay" <mike@xxxxxxxxxxxx>
>Subject: RE:  Evaluating XSLT2 from code

>Saxon provides a mirror of the XSLT format-date() 
>function in the Saxon
>namespace for use in XQuery, so

>declare namespace saxon="http://saxon.sf.net/";
>saxon:format-date(....)

>is a valid query and can be executed against a DOM 
>using the Saxon XQuery API. 

>Michael Kay
>http://www.saxonica.com/

>> -----Original Message-----
>> From: Andrew Sharpe
[mailto:andrewrwsharpe@xxxxxxxxx] 
>> Sent: 10 August 2005 13:54
>> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
>> Subject:  Evaluating XSLT2 from code
>> 
>> I would like to be able to evaluate XSLT2
expressions
>> against a DOM from within Dotnet.  I say XSLT2
nstead
>> of XPATH2 because I need to be able to use the new
>> format-date function available in XSLT2 (not part
of
>> the XPath spec).  I have evaluated other date
>> formatting approaches in XSLT1 and find them to be
>> insufficient for what I need to do.
>> 
>> Currently I am going through the painstaking
process
>> of wrapping the expression in an XSLT2 stylesheet,
>> saving that stylesheet out to disk, and then
executing
>> Saxon8 as a separate command-line process and
>> redicting the standard output of that process to my
>> Dotnet program.  Surely there must be a better way.
>> 
>> I have taken a look at Saxon.NET and find it to be
a
>> great idea but can't get even the simplest of
>> in-memory transformations to work with a DOM. 
>> Examples are almost non-existant and their mailing
>> list has been completely unresponsive.
>> 
>> So to simplify, I would like to evaluate
>> "format-date(/sample/path/@date, '[M]-[D]-[Y]')"
>> against a DOM from within my Dotnet application. 
Any
>> ideas at all would be much appreciated.  Thanks in
>> advance,
>> 
>> Andrew Sharpe
>> Moncton, NB
>> Canada


	

	
		
__________________________________________________________ 
Find your next car at http://autos.yahoo.ca

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.