Project

Profile

Help

Bug #3098 ยป Bug #7800 - 2017-01-09T15_42_30Z.eml

Pieter Masereeuw, 2017-01-09 16:42

 
Return-Path: <pieter@masereeuw.nl>
Received: from mi016.mc1.hosteurope.de ([80.237.138.239]) by wp245.webpack.hosteurope.de running ExIM with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) id 1cQc5O-0005za-C4; Mon, 09 Jan 2017 16:42:14 +0100
Received: from lb3-smtp-cloud3.xs4all.net ([194.109.24.30]) by mx0.webpack.hosteurope.de (mi016.mc1.hosteurope.de) with esmtps (TLSv1:DHE-RSA-AES128-SHA:128) id 1cQc5L-0001PL-Ir for dropbox+saxonica+f38e+saxon-js@plan.io; Mon, 09 Jan 2017 16:42:14 +0100
Received: from [192.168.80.100] ([83.161.170.16]) by smtp-cloud3.xs4all.net with ESMTP id WFi01u00Q0MaXdv01Fi4bl; Mon, 09 Jan 2017 16:42:08 +0100
Date: Mon, 09 Jan 2017 16:42:00 +0100
From: Pieter Masereeuw <pieter@masereeuw.nl>
To: Saxonica Developer Community <dropbox+saxonica+f38e+saxon-js@plan.io>
Message-ID: <1483976520.2872.5.camel@masereeuw.nl>
In-Reply-To: <redmine.journal-7799.20170109122904.2decde23baf0e6c8@plan.io>
References: <redmine.issue-3098.20170109093045@plan.io>
<redmine.journal-7799.20170109122904.2decde23baf0e6c8@plan.io>
Subject: Re: [Saxon-JS - Bug #3098] (In Progress) Supplied value "..." is not
a valid xs:base64
Mime-Version: 1.0
Content-Type: multipart/alternative;
boundary="=-i/+0gHEupJUj4SVuh7PB"
Content-Transfer-Encoding: 7bit
Delivery-date: Mon, 09 Jan 2017 16:42:14 +0100
X-Mailer: Evolution 3.18.5.2-0ubuntu3
X-HE-Virus-Scanned: Yes
X-HE-Spam-Level: ++
X-HE-Spam-Score: 2.4
X-HE-Spam-Report: Content analysis details: (2.4 points) pts rule name
description ---- ----------------------
-------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL:
Sender listed at http://www.dnswl.org/, low trust [194.109.24.30 listed in
list.dnswl.org] 0.5 RCVD_IN_SORBS_SPAM RBL: SORBS: sender is a spam source
[194.109.24.30 listed in dnsbl.sorbs.net] 2.5 RCVD_IN_SORBS_HTTP RBL: SORBS:
sender is open HTTP proxy server 0.1 HTML_MESSAGE BODY: HTML included in
message
Envelope-to: dropbox+saxonica+f38e+saxon-js@plan.io


--=-i/+0gHEupJUj4SVuh7PB
Content-Type: text/plain;
charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi Debbie,
I am glad that I also copied the source files to the site then. If I
can be of any other help, please let me know. I certainly like the
Saxon-JS product; I think it will offer a good replacement for many web
applications whose source code is now overly complex.
Best,
Pieter
On Mon, 2017-01-09 at 13:29 +0100, Saxonica Developer Communi;ty wrote:
> --- In your reply, please do not write below this line ---
> Issue #3098 has been updated by Debbie Lockett.=C2=A0
> Status changed from New to In Progress
> Assignee set to Debbie Lockett
> Found in version changed from Saxon-JS-beta-0.9.1.1.zip to 0.9.1=C2=A0
> =C2=A0Hi Pieter, Thanks for letting us know about the bug. I have manag=
ed
> to obtain the source code via the link to the demo that you provided.
> I shall investigate. I like the demo! We are always interested in
> hearing from people who are using Saxon-JS. Any other feedback you
> have would be most welcome. Debbie=C2=A0=C2=A0Bug #3098: Supplied value=
"..."
> is not a valid xs:base64=C2=A0
> Author: Pieter Masereeuw
> Status: In Progress
> Priority: Low
> Assignee: Debbie Lockett
> Category:
> Sprint/Milestone:
> Applies to branch:
> Found in version: 0.9.1
> Fixed in version:
> Company:
> Contact person:
> Additional contact persons:=C2=A0
> I hope that I am right that I have found a bug in the runtime of
> Saxon-JS-beta-0.9.1.1. I have an , the first test
> compares a string parameter with a string literal. Although the
> parameter can hardly be anything else but an xs:string (also by the
> as=3D clause of its definition), I get the error "Supplied value "..."
> is not a valid xs:base64" in the javascript console of Firefox and
> Chrome. If I cast the parameter by wrapping it in xs:string(), the
> error remains. But if I concat an empty string before doing the
> compare, all goes well, even when the parameter value matches another
> inside the same -stanza.=C2=A0=C2=A0=C2=A0 Maybe
> useful to remark that part of its life time, the parameter is a
> tunnel parameter. You can watch the working version at http://www.mas
> ereeuw.nl/tangram. I'll be happy to supply source code if that helps.
> Here is an abbridged snipped of my code: @
> next-figure">
> =

> required=3D"yes"/>=C2=A0=C2=A0<xsl:choose>
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
<!-- Intended line was: <xsl:when test=3D"$next-
> figure eq 'transparant-tangram'"> but for some reason this fails
> with an error in the Javascript console:
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0XError: Supplied value "sitting-cat" is not a val=
id
> xs:base64 at file:/home/pieter/saxonjs-
> experimenten/tangram/tangram4saxonjs.xslt#227=C2=A0=C2=A0=C2=A0 When we=

> change the test as shown (concatening an empty string, then compare),
> all goes well, even if the other comparable tests are
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0left as they are.
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
-->
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
<xsl:when test=3D"concat($next-figure, '') eq
> 'transparant-tangram'">
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0<xsl:call-template name=3D"do-transparant-
> tangram">
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0<xsl:with-param name=3D"t=
ransforms"
> select=3D"$tangram-transforms"/>
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0&lt;/xsl:call-template&gt;
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
</xsl:when> <xsl:when test=3D"$next-figure eq
> 'blue-tangram'">
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0&lt;xsl:call-template name=3D"do-blue-tangram"&gt=
;
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0<xsl:with-param name=3D"t=
ransforms"
> select=3D"$tangram-transforms"/>
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0&lt;/xsl:call-template&gt;
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
</xsl:when>=C2=A0=C2=A0<!-- ... -->
> <xsl:otherwise>
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0<xsl:message>Don't know how to deal with figure
> "<xsl:value-of select=3D"$next-figure"/>".</xsl:message>
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
&lt;/xsl:otherwise&gt;
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0&lt;/xsl:choose&gt;
> =C2=A0=C2=A0=C2=A0=C2=A0&lt;/xsl:template&gt;@=C2=A0
> =C2=A0 You have received this notification because you have either
> subscribed to or are involved in a project on Saxonica Developer
> Community site.
> To change your notification preferences, please click here: https://s
> axonica.plan.io/my/account?tour=3Dmail_preferences> class=3D"Apple-tab=
-
> span" style=3D"white-space:pre"> =

> =C2=A0
> This notification was cheerfully delivered by =

> =

--=-i/+0gHEupJUj4SVuh7PB
Content-Type: text/html;
charset=utf-8
Content-Transfer-Encoding: quoted-printable

<html><head>
<!--[if !mso]><!-- -->
<link href=3D"https://assets.plan.io/stylesheets/fonts.css" rel=3D"styles=
heet" type=3D"text/css">
<!--<![endif]-->

<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DUTF-8">=

<style>a:link{color:#0088b7}
a:visited{color:#0088b7}
a:hover{color:#0088b7}
a:active{color:#0088b7}</style>
</head>
<body><div>Hi Debbie,</div><div><br></div><div>I am glad that I also copi=
ed the source files to the site then. If I can be of any other help, plea=
se let me know. I certainly like the Saxon-JS product; I think it will of=
fer a good replacement for many web applications whose source code is now=
overly complex.</div><div><br></div><div>Best,</div><div><br></div><div>=
Pieter</div><div>On Mon, 2017-01-09 at 13:29 +0100, Saxonica Developer Co=
mmuni;ty wrote:</div><blockquote type=3D"cite">
<table width=3D"100%" cellspacing=3D"0" cellpadding=3D"0" style=3D"border=
-spacing:0;border-collapse:collapse;width:100%">
<tbody><tr><td class=3D"header" style=3D"text-align:center;width:100%;fon=
t-family:MarketWeb, Helvetica, Arial, sans-serif;font-size:0.8em;color:#D=
7D7D7"><p>--- In your reply, please do not write below this line ---</p><=
/td></tr>
<tr><td>Issue #3098 has been updated by Debbie Lockett.

<ul>
<li>
<strong>Status</strong> changed from <i>New</i> to <i>In Progress</i>
</li>
<li>
<strong>Assignee</strong> set to <i>Debbie Lockett</i>
</li>
<li>
<strong>Found in version</strong> changed from <i>Saxon-JS-beta-0.9.1.1.z=
ip</i> to <i>0.9.1</i>
</li>
</ul>

<p>Hi Pieter,</p>


<p>Thanks for letting us know about the bug. I have managed to obtain th=
e source code via the link to the demo that you provided. I shall investi=
gate.</p>


<p>I like the demo! We are always interested in hearing from people who =
are using Saxon-JS. Any other feedback you have would be most welcome.</p=
>


<p>Debbie</p>
<hr style=3D"width:100%;height:1px;background:#ccc;border:0;margin:1.2em =
0">
<h1 style=3D"font-family:&quot;ProximaNova-Bold&quot;, Helvetica, Arial, =
sans-serif;font-weight:normal;margin:0px;font-size:1.3em;line-height:1.4e=
m"><a href=3D"https://saxonica.plan.io/issues/3098?pn=3D1#change-7799" st=
yle=3D"color:#0088b7;text-decoration:none">Bug #3098: Supplied value "...=
" is not a valid xs:base64</a></h1>

<ul>
<li>Author: Pieter Masereeuw</li>
<li>Status: In Progress</li>
<li>Priority: Low</li>
<li>Assignee: Debbie Lockett</li>
<li>Category: </li>
<li>Sprint/Milestone: </li>
<li>Applies to branch: </li>
<li>Found in version: 0.9.1</li>
<li>Fixed in version: </li>
<li>Company: </li>
<li>Contact person: </li>
<li>Additional contact persons: </li>
</ul>

<p>I hope that I am right that I have found a bug in the runtime of Saxon=
-JS-beta-0.9.1.1. I have an &lt;xsl:choose&gt;, the first test compares a=
string parameter with a string literal. Although the parameter can hardl=
y be anything else but an xs:string (also by the as=3D clause of its defi=
nition), I get the error "Supplied value "..." is not a valid xs:base64" =
in the javascript console of Firefox and Chrome. If I cast the parameter =
by wrapping it in xs:string(), the error remains. But if I concat an empt=
y string before doing the compare, all goes well, even when the parameter=
value matches another &lt;xsl:when&gt; inside the same &lt;xsl:choose&gt=
;-stanza.</p>


<p>Maybe useful to remark that part of its life time, the parameter is a=
tunnel parameter.</p>


<p>You can watch the working version at <a href=3D"http://www.masereeuw.=
nl/tangram" style=3D"color:#0088b7">http://www.masereeuw.nl/tangram</a>. =
I'll be happy to supply source code if that helps.</p>


<p>Here is an abbridged snipped of my code:</p>


<p>@&lt;xsl:template name=3D"do-next-figure"&gt;<br> &lt;xsl:para=
m name=3D"next-figure" as=3D"xs:string" required=3D"yes"/&gt;</p>
<pre style=3D"font-family:Hack, Consolas, Menlo, &quot;Liberation Mono&q=
uot;, Courier, monospace;font-size:85%;background-color:#ececec;word-wrap=
:break-word;margin:1em 0;padding:8px;border:none;border-radius:3px;width:=
auto;overflow-x:auto;overflow-y:hidden"><code style=3D"font-family:Hack, =
Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace;font-siz=
e:85%;background-color:#ececec;word-wrap:break-word;border-radius:3px;pad=
ding:0.2em;margin:0;padding:0">&amp;lt;xsl:choose&amp;gt;<br> =
&amp;lt;!-- Intended line was:</code></pre>
<pre style=3D"font-family:Hack, Consolas, Menlo, &quot;Liberation Mono&q=
uot;, Courier, monospace;font-size:85%;background-color:#ececec;word-wrap=
:break-word;margin:1em 0;padding:8px;border:none;border-radius:3px;width:=
auto;overflow-x:auto;overflow-y:hidden"><code style=3D"font-family:Hack, =
Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace;font-siz=
e:85%;background-color:#ececec;word-wrap:break-word;border-radius:3px;pad=
ding:0.2em;margin:0;padding:0">&amp;lt;xsl:when test=3D"$next-figure eq '=
transparant-tangram'"&amp;gt;</code></pre>


<pre style=3D"font-family:Hack, Consolas, Menlo, &quot;Liberation Mono&q=
uot;, Courier, monospace;font-size:85%;background-color:#ececec;word-wrap=
:break-word;margin:1em 0;padding:8px;border:none;border-radius:3px;width:=
auto;overflow-x:auto;overflow-y:hidden"><code style=3D"font-family:Hack, =
Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace;font-siz=
e:85%;background-color:#ececec;word-wrap:break-word;border-radius:3px;pad=
ding:0.2em;margin:0;padding:0">but for some reason this fails with an err=
or in the Javascript console:<br> XError: Supplied value "=
sitting-cat" is not a valid xs:base64 at file:/home/pieter/saxonjs-experi=
menten/tangram/tangram4saxonjs.xslt#227</code></pre>


<pre style=3D"font-family:Hack, Consolas, Menlo, &quot;Liberation Mono&q=
uot;, Courier, monospace;font-size:85%;background-color:#ececec;word-wrap=
:break-word;margin:1em 0;padding:8px;border:none;border-radius:3px;width:=
auto;overflow-x:auto;overflow-y:hidden"><code style=3D"font-family:Hack, =
Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace;font-siz=
e:85%;background-color:#ececec;word-wrap:break-word;border-radius:3px;pad=
ding:0.2em;margin:0;padding:0">When we change the test as shown (concaten=
ing an empty string, then compare), all goes well, even if the other comp=
arable tests are<br> left as they are.<br> --&g=
t;<br> &amp;lt;xsl:when test=3D"concat($next-figure, '') eq 't=
ransparant-tangram'"&amp;gt;<br> &amp;lt;xsl:call-template=
name=3D"do-transparant-tangram"&amp;gt;<br> &amp;lt;x=
sl:with-param name=3D"transforms" select=3D"$tangram-transforms"/&amp;gt;=
<br> &amp;lt;/xsl:call-template&amp;gt;<br> &am=
p;lt;/xsl:when&amp;gt;</code></pre>


<pre style=3D"font-family:Hack, Consolas, Menlo, &quot;Liberation Mono&q=
uot;, Courier, monospace;font-size:85%;background-color:#ececec;word-wrap=
:break-word;margin:1em 0;padding:8px;border:none;border-radius:3px;width:=
auto;overflow-x:auto;overflow-y:hidden"><code style=3D"font-family:Hack, =
Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace;font-siz=
e:85%;background-color:#ececec;word-wrap:break-word;border-radius:3px;pad=
ding:0.2em;margin:0;padding:0">&amp;lt;xsl:when test=3D"$next-figure eq '=
blue-tangram'"&amp;gt;<br> &amp;lt;xsl:call-template name=3D=
"do-blue-tangram"&amp;gt;<br> &amp;lt;xsl:with-param n=
ame=3D"transforms" select=3D"$tangram-transforms"/&amp;gt;<br> =
&amp;lt;/xsl:call-template&amp;gt;<br> &amp;lt;/xsl:when&=
amp;gt;</code></pre>


<pre style=3D"font-family:Hack, Consolas, Menlo, &quot;Liberation Mono&q=
uot;, Courier, monospace;font-size:85%;background-color:#ececec;word-wrap=
:break-word;margin:1em 0;padding:8px;border:none;border-radius:3px;width:=
auto;overflow-x:auto;overflow-y:hidden"><code style=3D"font-family:Hack, =
Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace;font-siz=
e:85%;background-color:#ececec;word-wrap:break-word;border-radius:3px;pad=
ding:0.2em;margin:0;padding:0">&amp;lt;!-- ... --&amp;gt;</code></pre>


<pre style=3D"font-family:Hack, Consolas, Menlo, &quot;Liberation Mono&q=
uot;, Courier, monospace;font-size:85%;background-color:#ececec;word-wrap=
:break-word;margin:1em 0;padding:8px;border:none;border-radius:3px;width:=
auto;overflow-x:auto;overflow-y:hidden"><code style=3D"font-family:Hack, =
Consolas, Menlo, &quot;Liberation Mono&quot;, Courier, monospace;font-siz=
e:85%;background-color:#ececec;word-wrap:break-word;border-radius:3px;pad=
ding:0.2em;margin:0;padding:0">&amp;lt;xsl:otherwise&amp;gt;<br> =
&amp;lt;xsl:message&amp;gt;Don't know how to deal with figure "&am=
p;lt;xsl:value-of select=3D"$next-figure"/&amp;gt;".&amp;lt;/xsl:message&=
amp;gt;<br> &amp;lt;/xsl:otherwise&amp;gt;<br> &amp;lt;=
/xsl:choose&amp;gt;<br> &amp;lt;/xsl:template&amp;gt;@</code></pre>


<div itemscope=3D"itemscope" itemtype=3D"http://schema.org/EmailMessage">=

<div itemscope=3D"itemscope" itemprop=3D"action" itemtype=3D"http://schem=
a.org/ViewAction">
<link itemprop=3D"url" href=3D"https://saxonica.plan.io/issues/3098?pn=3D=
1#change-7799">
<meta itemprop=3D"name" content=3D"View Issue">
</div>
<meta itemprop=3D"description" content=3D"View this issue update on Plani=
o">
</div>

</td></tr>
<tr>
<td class=3D"footer" style=3D"font-size:0.8em;width:100%">
<hr style=3D"width:100%;height:1px;background:#ccc;border:0;margin:1.2em =
0">
<p>You have received this notification because you have either subscribed=
to or are involved in a project on Saxonica Developer Community site.<br=
>To change your notification preferences, please click here: <a href=3D"h=
ttps://saxonica.plan.io/my/account?tour=3Dmail_preferences" style=3D"colo=
r:#0088b7">https://saxonica.plan.io/my/account?tour=3Dmail_preferences</a=
></p>
</td>
<td></td>
</tr>
<tr>
<td class=3D"planio_footer" style=3D"text-align:center;width:100%;font-fa=
mily:MarketWeb, Helvetica, Arial, sans-serif;font-size:1.2em;color:#D7D7D=
7">
<br><div><a href=3D"https://plan.io/" style=3D"color:#0088b7;color:#D7D7D=
7;text-decoration:none">This notification was cheerfully delivered by</a>=
</div>
</td>
<td></td>
</tr>
<tr><td class=3D"planio_footer_logo" style=3D"text-align:center;width:100=
%"><a href=3D"https://plan.io/" title=3D"Planio" style=3D"color:#0088b7">=
<img src=3D"https://assets.plan.io/images/planio_logo_gray_204x50.png" he=
ight=3D"25" width=3D"102" border=3D"0" alt=3D"Planio" style=3D"vertical-a=
lign:middle;border:none"></a></td></tr>
</tbody></table>


</blockquote></body></html>=

--=-i/+0gHEupJUj4SVuh7PB--
    (1-1/1)