Re: [xsl] extension functions returning temporary trees

Subject: Re: [xsl] extension functions returning temporary trees
From: David Carlisle <davidc@xxxxxxxxx>
Date: Tue, 15 Dec 2009 20:38:57 GMT
   I'm trying to return the string "<root>test</root>" from a .NET extension =
   written in C# to the Altova XML engine running XSLT 2.0.
   What actually gets returned replaces the "<" with "& l t ;" (without the s=
   paces) and similarly for ">".  This, of course, means that XSLT 2.0 can't =
   implicitly convert the returned value to a temporary tree.

   Has anyone else seen this problem and, if so, how have they fixed it?

   Your help is much appreciated, I've been banging my head against the wall =
   over this for the past several days.


most likely the < has not been turned into & l t ; (check with
string-length() the entity reference is simply the way that character is
shown in xml. XSLT does not turn a string such as <root>test</root> into
a tree, that is the function of an xml parser. I don't have altova to
test but most likely you can parse the string uisng .net's xml parser
and pass the resulting DOM node to the xslt engine rather than the
string.

David

________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. 
________________________________________________________________________

Current Thread