You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2004/02/04 14:37:07 UTC
DO NOT REPLY [Bug 26661] New: -
Search fail in tree with normalize-space function
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
Summary: Search fail in tree with normalize-space function
Product: XalanC
Version: 1.7
Platform: Other
OS/Version: Windows NT/2K
Status: NEW
Severity: Normal
Priority: Other
Component: XPathC
AssignedTo: xalan-dev@xml.apache.org
ReportedBy: denis.eab2@laposte.net
An example with tree files: bug_func.xml, bug_func.xsl, bug_func.txt
You see the bug in "bug_func.txt".
After, you have to see bug_func.xsl, bug_func.xml and look at the different
search case.
This algo is useful to make translation.
Call:
xalan -o bug_func.txt bug_func.xml bug_func.xsl
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>
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">
<!-- Directives générales -->
<xsl:strip-space elements="*"/>
<xsl:output method="text" encoding="ISO-8859-1"/>
<xsl:template match="B">
<xsl:text>@cas R1.a Ok:"</xsl:text>
<xsl:value-of select="/A/R1/P[L/@l='e' and L/@t=normalize-space( 'e1')]/L
[@l='f']/@t"/>
<xsl:text>"@cas R1.b not Ok (empty):"</xsl:text>
<xsl:value-of select="/A/R1/P[L/@l='e' and normalize-space( L/@t)=normalize-
space( 'e1')]/L[@l='f']/@t"/>
<xsl:text>"@cas R2.a Ok:"</xsl:text>
<xsl:value-of select="/A/R2/P[L/@l='e' and L/@t=normalize-space( 'e1')]/L
[@l='f']/@t"/>
<xsl:text>"@cas R2.b not Ok (empty):"</xsl:text>
<xsl:value-of select="/A/R2/P[L/@l='e' and normalize-space( L/@t)=normalize-
space( 'e1')]/L[@l='f']/@t"/>
<xsl:text>"@cas R3.a Ok:"</xsl:text>
<xsl:value-of select="/A/R3/P[L/@l='e' and L/@t=normalize-space( 'e1')]/L
[@l='f']/@t"/>
<xsl:text>"@cas R3.b Ok:"</xsl:text>
<xsl:value-of select="/A/R3/P[L/@l='e' and normalize-space( L/@t)=normalize-
space( 'e1')]/L[@l='f']/@t"/>
<xsl:text>"@</xsl:text>
</xsl:template>
</xsl:stylesheet>
bug_func.txt:
@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"@