W3C home > Mailing lists > Public > www-webdav-dasl@w3.org > April to June 1998

RE: Question about the syntax for queries

From: Babich, Alan <ABabich@filenet.com>
Date: Fri, 24 Apr 1998 19:27:25 -0700
Message-ID: <72B1992276A9D111A20E00805FEAC96D0FD645@cm-expo1.filenet.com>
To: "'Saveen Reddy (Exchange)'" <saveenr@Exchange.Microsoft.com>, www-webdav-dasl@w3.org
I have no objections to the corrections.

Alan Babich

> -----Original Message-----
> From:	Saveen Reddy (Exchange) [SMTP:saveenr@Exchange.Microsoft.com]
> Sent:	April 20, 1998 2:12 PM
> To:	www-webdav-dasl@w3.org
> Subject:	RE: Question about the syntax for queries
> 
> Alan, 
> 	As you point out the original 00 syntax was incorrect. That was
> an
> error corrected in the 01 version. The correction in 01 probably needs
> further work as well -- it defines AND and OR as accepting exactly
> two-arguments instead of any list of 2 or more. If there are no
> objections
> I'll go ahead and update the document to use the syntax you provided
> below.
> 
> -Saveen
> 
> -----Original Message-----
> From: Babich, Alan [mailto:ABabich@filenet.com]
> Sent: Friday, April 17, 1998 1:12 PM
> To: Saveen Reddy (Exchange)
> Cc: www-webdav-dasl@w3.org
> Subject: Question about the syntax for queries
> 
> 
> Sauveen:
> 
> The "00" spec. has
> 
>  <!ELEMENT and    (expr+) >
>  <!ELEMENT or     (expr+) >
> 
> to define the syntax for "and" and "or" expressions. 
> However, "and" and "or" are binary operators
> (which we would like to extend to be n-ary operators, 
> since they are associative and commutative). 
> My understanding of "+" in XML is that it means 
> "one or more". So, the way I read the above
> syntax is that it allows an "and" expression to have
> one operand. For example,
> 
> <d:and> 
>     <d:term>
>         <d:lt>
>             <d:value> 
>                 <d:prop>X</d:prop>
>             </d:value>
>             <d:value>
>                 <d:literal>1</d:literal>
>             </d:value>
>         </d:lt> 
>     </d:term
> </d:and>
> 
> or, translating into the usual mathematical
> notation, "AND X > 1".
> 
> However, "and" is not a unary operator, i.e., it takes 
> at least two operands. So, shouldn't the syntax be
> 
>  <!ELEMENT and    (expr, expr+) >
>  <!ELEMENT or     (expr, expr+) >
> 
> to force at least two operands for "and" and "or"?
> 
> Now, I realize that we could extend "and" and
> "or" to unary operators by defining them to be
> the identity operator if they have just one operand.
> However, I would oppose that, as it would not be
> doing a favor to any implementer translating
> the XML query expression into SQL or whatever
> he needs to translate it to. The implementer would have to 
> make a special case out of that, but nothing
> is gained for the effort. I would rather have
> unary "and" and "or" operators be illegal
> syntax by using the revised syntax shown above.
> 
> I'm new to XML, so I may have missed the point,
> so, what are your comments?
> 
> Alan Babich
Received on Friday, 24 April 1998 22:29:30 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Sunday, 22 March 2009 03:38:03 GMT