Re: [xslt] xsltproc problem with value-of



On Thu, Jun 17, 2004 at 02:32:40PM +0100, Tepperis-von der Ohe,  Michael wrote:
>  <xsl:variable name = "customerData">
>    <xsl:copy-of select = "document( $file )/customers/customer[ @name =
> $customer ]"/>
>  </xsl:variable>

   It seems to me that $customerData is a Result Tree Fragment per
the definition in:
   http://www.w3.org/TR/xslt#section-Result-Tree-Fragments
  
[...]
> 27       <xsl:value-of select =
> "$customerData/customer/Header-Info/@CreateTime"/>

  the definition states:

 "An operation is permitted on a result tree fragment only if that
  operation would be permitted on a string (the operation on the string
  may involve first converting the string to a number or boolean). In
  particular, it is not permitted to use the /, //, and [] operators on
  result tree fragments."
 
> running the same files with saxon or xalan works.

  Assuming customerData is really a Result Tree Fragment, then
apparently they are not compliant to the specification, but this
is not an excuse to not understand and comply to the specification.
Standards are there for garanteeing interoperability, if you use code
which violates it you loose the interop, that's normal. Report the bug to
the Saxon and Xalan lists, and fix your code for example by using the
exslt:node-set() extension:
  http://exslt.org/exsl/functions/node-set/index.html

Daniel

-- 
Daniel Veillard      | Red Hat Desktop team http://redhat.com/
veillard redhat com  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]