W3C home > Mailing lists > Public > www-webdav-dasl@w3.org > January to March 2002

RE: DASL Where statement.

From: Babich, Alan <ABabich@filenet.com>
Date: Wed, 30 Jan 2002 17:01:12 -0800
Message-ID: <C3AF5E329E21D2119C4C00805F6FF58F08FE5A54@hq-expo2.filenet.com>
To: "'Sung Kim'" <hunkim@cse.ucsc.edu>, www-webdav-dasl@w3.org
DASL should do all the operators the same way, either prefix, postfix, or
infix, not a mixture. Doing a mixture of prefix and infix as you have
suggested is not a clean design. Infix operators cause the introduction of
parentheses as you have noted.

There is not really any problem in generating SQL conditions from the infix
style as currently specified. It's fairly straightforward.

DASL is doing it the way that is most natural in XML. Causing the
introduction of parentheses means that it isn't taking advantage of the
beginning and ending tags of XML, which are in some sense equivalent to
parentheses.

Alan Babich

-----Original Message-----
From: Sung Kim [mailto:hunkim@cse.ucsc.edu]
Sent: Wednesday, January 30, 2002 2:22 PM
To: www-webdav-dasl@w3.org
Subject: DASL Where statement.


 Hello,

 The new DASL draft is out.

 I thought about <where> syntax in DASL.
 If we want to express '( a=b and c=d ) or (e=f and g<h)' ----(*)

 We should use <WHERE> statement like this:

 <d:where>
   <d:or>
     <d:and>
       <d:eq>
         <d:a/>
         <d:b/>
       </d:eq>
       <d:eq>
         <d:c/>
         <d:d/>
       </d:/eq>
      </d:and>
      <d:and>
       <d:eq>
         <d:e/>
         <d:f/>
       </d:eq>
       <d:gt>
         <d:g/>
         <d:h/>
       </d:/eq>
      </d:and>
    </d:or>
  <d:/where>

 But if we can use the operation '<d:or/>' in between two element,
 it might be simple
 and might be closer to the normal expression.

 This is the example :

 <d:where>
   <d:a/><d:eq/><d:b/><d:and><d:b/><d:eq/><d:c/>
   <d:or/>
   <d:d/><d:eq/><d:e/><d:and><d:f/><d:gt/><d:g/>
 </d:where>

 It is easier to make a SQL statement from the XML statement.

 Also we need some operation elements to express priority such as
 parentheses.
 Let's suppose it is "<d:paren>".

 The (*) expression will be translated in DASL XML like this:

 <d:where>
   <d:paren>
     <d:a/><d:eq/><d:b/><d:and><d:b/><d:eq/><d:c/>
   </d:paren>
   <d:or/>
   <d:paren>
     <d:d/><d:eq/><d:e/><d:and><d:f/><d:gt/><d:g/>
   </d:paren>
 </d:where>

--
 Sung Kim <hunkim@cse.ucsc.edu>
 http://www.cse.ucsc.edu/~hunkim

  "Dreams become reality!"
Received on Wednesday, 30 January 2002 20:06:04 GMT

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