- From: Leonidas Fegaras <fegaras@lambda.uta.edu>
- Date: Tue, 19 Jun 2001 17:18:11 -0500 (CDT)
- To: www-xml-query-comments@w3.org
I was very pleased to read the new formal semantics for XQuery.
It helped me understand XQuery better. I have a comment though:
In section 6.2.4.1 (boolean operators) you expressed the semantics of
boolean operators using (simulated) existential quantification.
This may not work very well for the following query:
for $a in //book
where $a/author/firstname/text() = "John"
and $a/author/lastname/text() = "Smith"
return $a/title
because it will succeed for the following book:
<book>
<author><firstname>John<firstname/><lastname>Walter</lastname></author>
<author><firstname>Jim<firstname/><lastname>Smith</lastname></author>
<title>...</title>
</book>
An alternative is to enforce the results of [[ E1 ]] and [[ E2 ]] in
[[ E1 = E2 ]] to be singletons. If this is not what the user intended,
then she may still use explicit existential quantification in the query.
I don't feel very strongly about this, but whatever you choose,
you should make it clear with examples.
By the way, you don't need the outer semantic brackets [[]] at the
righthand sides of the equations in 6.2.4.1.
A minor typo: At the end of 6.2.1.3:
[[ E/DATA() ]] ==> for $v1 in [[ E ]] return
typed-value([[ E ]])
should be:
[[ E/DATA() ]] ==> for $v1 in [[ E ]] return
typed-value($v1)
Best regards
Leonidas Fegaras
Department of Computer Science and Engineering
The University of Texas at Arlington
416 Yates Street, 301 Nedderman Hall
P.O. Box 19015
Arlington, TX 76019
email: fegaras@cse.uta.edu
web: http://lambda.uta.edu/
phone: (817) 272-3629
fax: (817) 272-3784
Received on Tuesday, 19 June 2001 18:28:31 UTC