DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=26661>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=26661

Search fail in tree with normalize-space function

[EMAIL PROTECTED] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|INVALID                     |



------- Additional Comments From [EMAIL PROTECTED]  2004-02-14 08:38 -------
I continue my test and the result is the same
on Windows 98 SE, Windows 2000, and now Windows XP.
They are always different result between Xalan 1.5 et Xalan 1.7.

I sum up and after I ask you some questions.
I take very care with lines wrap.
All line are under 80 characters
except result files but it doesn't matter.

Call:
xalan -o bug_func.txt bug_func.xml bug_func.xsl

Data file bug_func.xml:
<?xml version="1.0" encoding="iso-8859-1" standalone="yes"?>

<A>
  <B/>
  <R1>
    <P><L l="d" t="d1"/><L l="f" t="f1"/><L l="e" t="e1"/></P>
    <P><L l="d" t="d2"/><L l="f" t="f2"/><L l="e" t="e2"/></P>
  </R1>
  <R2>
    <!-- change place of l="e" (3 => 2) -->
    <P><L l="d" t="d1"/><L l="e" t="e1"/><L l="f" t="f1"/></P>
    <P><L l="d" t="d2"/><L l="e" t="e2"/><L l="f" t="f2"/></P>
  </R2>
  <R3>
    <!-- change place of l="e" (2 => 1) -->
    <P><L l="e" t="e1"/><L l="d" t="d1"/><L l="f" t="f1"/></P>
    <P><L l="e" t="e2"/><L l="d" t="d2"/><L l="f" t="f2"/></P>
  </R3>
</A>

Script file bug_func.xsl:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

  <xsl:strip-space elements="*"/>
  <xsl:output method="text" encoding="ISO-8859-1"/>

  <xsl:template match="B">
    <xsl:text>@cas R1.a Ok:&quot;</xsl:text>
    <xsl:value-of select="/A/R1/P[L/@l='e' and
                          L/@t='e1']/[EMAIL PROTECTED]'f']/@t"/>
    <xsl:text>&quot;@cas R1.b not Ok (empty):&quot;</xsl:text>
    <xsl:value-of select="/A/R1/P[L/@l='e' and
                          normalize-space( L/@t)='e1']/[EMAIL PROTECTED]'f']/@t"/>
    <xsl:text>&quot;@cas R2.a Ok:&quot;</xsl:text>
    <xsl:value-of select="/A/R2/P[L/@l='e' and
                          L/@t='e1']/[EMAIL PROTECTED]'f']/@t"/>
    <xsl:text>&quot;@cas R2.b not Ok (empty):&quot;</xsl:text>
    <xsl:value-of select="/A/R2/P[L/@l='e' and
                          normalize-space( L/@t)='e1']/[EMAIL PROTECTED]'f']/@t"/>
    <xsl:text>&quot;@cas R3.a Ok:&quot;</xsl:text>
    <xsl:value-of select="/A/R3/P[L/@l='e' and
                          L/@t='e1']/[EMAIL PROTECTED]'f']/@t"/>
    <xsl:text>&quot;@cas R3.b Ok:&quot;</xsl:text>
    <xsl:value-of select="/A/R3/P[L/@l='e' and
                          normalize-space( L/@t)='e1']/[EMAIL PROTECTED]'f']/@t"/>
    <xsl:text>&quot;@</xsl:text>
  </xsl:template>

</xsl:stylesheet>

Result file with Xalan 1.5 and Xerces 2.2:
@cas R1.a Ok:"f1"@cas R1.b not Ok (empty):"f1"@cas R2.a Ok:"f1"@cas R2.b not Ok 
(empty):"f1"@cas R3.a Ok:"f1"@cas R3.b Ok:"f1"@

No bug: After the two '(empty):' you find '"f1"'


Result file with Xalan 1.7 and Xerces 2.4:
@cas R1.a Ok:"f1"@cas R1.b not Ok (empty):""@cas R2.a Ok:"f1"@cas R2.b not Ok 
(empty):""@cas R3.a Ok:"f1"@cas R3.b Ok:"f1"@

Bug: After the two '(empty):' you find '""'


Xalan 1.5 Executable files:
23/04/2003  14:41              110 592 Harness_1_5_0.dll
23/04/2003  14:30            1 961 984 Xalan-C_1_5_0.dll
23/04/2003  14:43               16 384 Xalan.exe
07/02/2003  05:03            2 072 576 xerces-c_2_2_0.dll

Xalan 1.7 Executable files:
14/01/2004  02:05              118 784 Harness_1_7_0.dll
14/01/2004  02:04            1 998 848 Xalan-C_1_7_0.dll
14/01/2004  02:06               24 576 Xalan.exe
14/01/2004  01:54               49 152 XalanMessages_1_7_0.dll
02/12/2003  16:25            2 490 368 xerces-c_2_4_0.dll

Questions:
1-  Do you find the same difference?

1a-   If not, are you sure you use exactly the same executable files?
The Xalan 1.7 is always on the download servers.
You have the list I use juste before.

1b-   If you always don't find, may I send you my Xalan 1.5 and
      Xalan 1.7 executable files in a zip? How can I do?

      There are somehting may be very important. You wrote:
      "I ran your stylesheet using Xalan-C 1.7, Saxon 6.5.2, msxsl 4.0"
      Is the same that xerces 2.4 on the download?


2-  You wrote me the 'value-of' expression are wrong
    (Mix between node-set and string)
2a-   How do you explain that I find different result between:

2aa-    Xalan 1.5 and Xalan 1.7
2ab-    R1.a and R1.b expression
2ac-    R2.a and R2.b expression
2ad-    Difference between R1.b or R2.b and the others

2b-   but the same result between:

2ab-    R3.a and R3.b expression


You notice that:
Note 1:
R1.a, R2.a and R3.a are equivalent
R1.b, R2.b and R3.b are equivalent

Note 2:
The only difference between Rx.a et Rx.b
is the use of the normalize-space function.
And my data type parse show that all are in a string type.
>From this point of view, the normalize-space function is involute:
string = normalize-space( string)
If that I assume is wrong, you can't anyway explain the serial questions 2.

Note 3:
With Xalan 1.7, I think that the call of normalize-space break the search
from the first three nodes <A><Rx><P><L l="d" t="d1"/>.
This is the bug.

Reply via email to