logo       

Computed constructors in XQuery broken more badly than before: msg#00181

text.xml.exist

Subject: Computed constructors in XQuery broken more badly than before

Hello All, and in particular Wolfgang

You latest snapshot broke computed constructors even worse
than what they were before.

The following XQuery:

element Users {
for $x in //User
return element User {$x/Username}
}

returns (The inner <User> contains the whole record):

<Users>
<User>
<User generation="0">
<ClinicName>testClinic</ClinicName>
<date>2004-09-14</date>
<Username>Gadi</Username>
<Tokens>
<Token>CheetahDoc</Token>
<Token>CheetahRef</Token>
<Token>CheetahTech</Token>
<Token>CheetahView</Token>
<Token>dba</Token>
</Tokens>
<identification>
<title>Dr.</title>
<licNum>1</licNum>
<name>
<first>Gadi</first>
<last>Holtzman</last>
</name>
</identification>
<History>
<modified>
<By>Amotz</By>2004-09-14 11:03:22</modified>
<modified>
<By>Gadi</By>2004-09-14 12:45:29</modified>
<modified>
<By>Amotz</By>2004-09-21 11:52:37</modified>
</History>
<Properties>
<Property name="askOnSave"
stateMachine="booleanStateMachine">1</Property>
<Property name="askOnEsc"
stateMachine="booleanStateMachine">0</Property>
<Property name="askOnExit">0</Property>
<Property name="askOnNoConstraint">0</Property>
</Properties>
</User>
</User>
<User>
<User generation="11">
<ClinicName>testClinic</ClinicName>
<Username>Amotz</Username>
<Tokens>
<Token>CheetahTech</Token>
<Token>CheetahDoc</Token>
<Token>CheetahRef</Token>
<Token>CheetahView</Token>
<Token>dba</Token>
</Tokens>
<identification>
<title>Dr.</title>
<licNum>3245</licNum>
<name>
<first>Amotz</first>
<last>Anner</last>
</name>
</identification>
<History>
<modified>
<By>Amotz</By>2004-09-11 12:53:57</modified>
<modified>
<By>Amotz</By>2004-09-12 05:57:35</modified>
<modified>
<By>Amotz</By>2004-09-12 06:04:09</modified>
<modified>
<By>Amotz</By>2004-09-12 07:25:07</modified>
<modified>
<By>Amotz</By>2004-09-12 10:02:49</modified>
<modified>
<By>Amotz</By>2004-09-12 10:05:18</modified>
<modified>
<By>Amotz</By>2004-09-13 05:41:55</modified>
<modified>
<By>Amotz</By>2004-09-19 01:02:20</modified>
</History>
<digestPW>d6b879bac140005a5517471b003fbc17</digestPW>
<Properties>
<Property name="askOnSave"
stateMachine="booleanStateMachine">1</Property>
<Property name="askOnEsc"
stateMachine="booleanStateMachine">0</Property>
<Property name="askOnExit">0</Property>
<Property name="askOnNoConstraint">0</Property>
<Property name="askIfMoreThan">30</Property>
</Properties>
</User>
</User>
</Users>

while:

element Users {
for $x in //User
return
<User>{$x/Username/text()}</User>
}

returns:

<Users>
<User>Gadi</User>
<User>Amotz</User>
</Users>


Which is correct. I rather think the result should be the same in both
cases. In fact in the previous snapshot this particular query was
correct, the problem arose only with multiple constructors.

If you need access to the server for testing purposes, I can send you
the IP address by private mail, upon request. Or I can send you a
zipped dump of the whole database (very small as yet) which would
probably be better as you can than check your modifications directly.

TIA.

--
Best regards,
Amotz Anner mailto:amotz@xxxxxxxxx
Founder
X.M.L Systems Ltd.
46, Jerusalem St. Flat 9B
Kfar-Saba 44369
Israel
Cell: 054-6860707




-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise