xsl-list
[Top] [All Lists]

RE: [xsl] xsl2 saxon8B stripping off unwanted separation characters

2006-07-06 08:36:22
When you say select="a", do you expect to select a single "a" element, or
multiple elements?

In XSLT 1.0, if there are multiple elements, xsl:value-of will give you the
value of the first.

In XSLT 2.0, if there are multiple elements, xsl:value-of will give you all
of them, with the chosen separator between the values. But if there are
multiple elements, then normalize-space() (or normalize-unicode()) will
fail, because those functions expect to operate on a single string.

If you want to replicate the XSLT 1.0 behaviour, use a[1] to select the
first a element and discard the rest. But then you don't need a separator.

So the question is, what are you trying to achieve?

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

-----Original Message-----
From: jacques FAUQUEX [mailto:jacques(_at_)internet(_dot_)com(_dot_)uy] 
Sent: 06 July 2006 14:23
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] xsl2 saxon8B stripping off unwanted separation 
characters

I have a problem normalizing strings in xslt2 with saxon 8B. 
Here is an example

XML    <a 
href="http://www.ac-versailles.fr/etabliss/michelet-vanves";  
target="_blank"> Lycée
               Michelet</a>
XSL
         <xsl:element name="lycée">
             <xsl:attribute name="nom">
                 <xsl:value-of separator=" " select="a"/>
             </xsl:attribute>
         </xsl:element>
         <xsl:value-of select="lycée"/>

RESULT
          <lycée nom=" Lycée&#xA;              Michelet">

----------------------------------------------------------------------

If a add a normalize-space function within the select,

                <xsl:value-of separator=" " 
select="normalize-space (a)"/>

XALAN y Saxon 6.5.5 output what I want

              <lycée nom="Lycée Michelet">

On the contrary, Saxon8B outputs a static error :

      A sequence of more than one item is not allowed as the 
first argument of normalize-unicode()
      URL: http://www.w3.org/TR/xpath20/#ERRXPTY0004

What's happening and how is it posible to normalize strings 
with saxon 8B ?

Thanks

Jacques Fauquex
--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>