<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">No, Pavel, by no means, NO.<div class=""><br class=""></div><div class="">While N1Ql is finally something relatively well defined, and MUCH better then the alternatives, </div><div class="">in terms of expressive power, we go back to 1993.</div><div class=""><br class=""></div><div class="">N1QL is 99% a copy of OQL designed by Sophie Cluet in 1993 for object-oriented databases, which had</div><div class="">nested objects and arrays, and <br class=""><div class=""><br class=""></div><div class="">After you got used to program in XQuery, going back to N1QL is going back to the cave age.</div><div class=""><br class=""></div><div class="">I personally won’t, and I would rather go did cow’s dung (time to review the classics <a href="https://www.youtube.com/watch?v=b2F-DItXtZs" class="">https://www.youtube.com/watch?v=b2F-DItXtZs</a> :-)</div><div class=""><br class=""></div><div class="">Here are a couple of things (random things that come to my mind in 3 seconds…..):</div><div class=""><br class=""></div><div class="">1. Compositionality. It’s 2015 , not 1977, for God’s sake.</div><div class=""><br class=""></div><div class="">2. Casts, explicit and implicit casts. Absolutely necessary for processing data of unknown structure.</div><div class=""><br class=""></div><div class="">3. If-then-elses.  Absolutely necessary for processing data of unknown structure.</div><div class=""><br class=""></div><div class="">4. try-catch.  Absolutely necessary for processing data of unknown structure.</div><div class=""><br class=""></div><div class="">5. Object and array constructors with dynamically computed content.  It's 2015, not 1977 for God’s sake.</div><div class=""><br class=""></div><div class="">5. Functions and especially recursive functions. Absolutely necessary for processing data of unknown structure.</div><div class=""><br class=""></div><div class="">6. Declarative updates. No comment.</div><div class=""><br class=""></div><div class="">7. Full text. Again, it 2015, not 1977 for God’s sake.</div><div class=""><br class=""></div><div class="">=========</div><div class=""><br class=""></div><div class="">N1Ql is a cute little thing that brings us back in 1993…..:(</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">depressed.</div><div class=""><br class=""></div><div class="">Go back digging cow’s dung (or fashion in my case..)  while people are still so ignorant in terms of data processing ……</div><div class=""><br class=""></div><div class="">Wake me up when it’s done.</div><div class=""><br class=""></div><div class="">Dana</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><div class=""><div><blockquote type="cite" class=""><div class="">On Oct 10, 2015, at 4:41 AM, Pavel Velikhov <<a href="mailto:pavel.velikhov@gmail.com" class="">pavel.velikhov@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">N1QL seems to have all the features to support a JSONiq front-end. Seems like a simple translation, except for the group-by clause.<div class="">I guess if people like 4-valued logic, breaking up constructors into group by and select clauses - let them have it :)<br class=""><div class=""><br class=""><div class=""><blockquote type="cite" class=""><div class="">On 10 Oct 2015, at 13:03, daniela florescu <<a href="mailto:dflorescu@me.com" class="">dflorescu@me.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Andy,<div class=""><br class=""></div><div class="">The story is more complicated here.<div class=""><br class=""></div><div class="">The professor at Irvine Univ. in charge of the students team who designed AsterixDB, Mike Carey, is </div><div class="">today the Chief Architect of CouchDB, who ships the N1QL that I just sent yesterday.</div><div class=""><br class=""></div><div class="">Mike Carey knows exactly XQuery, given that he was in charge of my XQuery processor at BEA Systems after I left.</div><div class=""><br class=""></div><div class="">So it’s definitely not by lack of knowledge that he went BACKWARDS and N1QL is even more primitive then SQL 92</div><div class="">(just added some primitive forms of path expressions to it..)</div><div class=""><br class=""></div><div class="">It’s probably market pressure…. </div><div class=""><br class=""></div><div class="">IT HAS TO LOOK LIKE SQL, AND IT HAS TO USE THE THREE MAGIC KEYWORDS “select” “from” AND “where”.</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Other then that, who cares that from a data processing perspective, we go backwards where we were in 1994 !???</div><div class="">(and nested select-from-where in the from clause are considered “disruptive” ..huh..)</div><div class=""><br class=""></div><div class="">Depressing. </div><div class=""><br class=""></div><div class="">Are users so ignorant and they prefer a vanilla syntax that they know over significant expressive power  ?</div><div class=""><br class=""></div><div class=""> I wonder.</div><div class=""><br class=""></div><div class="">Dana</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><div class=""><blockquote type="cite" class=""><div class="">On Oct 9, 2015, at 3:31 PM, Andy Bunce <<a href="mailto:bunce.andy@gmail.com" class="">bunce.andy@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div class=""><div class="">Hi,<br class=""><br class="">Not tried it myself but, AsterixDB [1] may be of interest to XQuery users.<br class=""><br class="">>The heart of AQL[2] is the FLWOR (for-let-where-orderby-return) expression.
 The roots of this expression were borrowed from the expression of the 
same name in XQuery.<br class=""><br class="">and<br class=""><br class="">>but XQuery was co-designed by a diverse band of experienced language designers (SQL, functional programming,and XML experts) <br class="">>and we wanted to avoid revisiting many of the same issues [3]<br class=""><br class=""></div>Regards<br class=""></div>/Andy<br class=""><div class=""><div class=""><br class="">[1] <a href="https://asterixdb.ics.uci.edu/" class="">https://asterixdb.ics.uci.edu/</a><br class="">[2] <a href="https://asterixdb.ics.uci.edu/documentation/aql/manual.html" class="">https://asterixdb.ics.uci.edu/documentation/aql/manual.html</a><br class="">[3] <a href="http://www.vldb.org/pvldb/vol7/p1905-alsubaiee.pdf" class="">http://www.vldb.org/pvldb/vol7/p1905-alsubaiee.pdf</a><br class=""><br class=""></div></div></div>
_______________________________________________<br class=""><a href="mailto:talk@x-query.com" class="">talk@x-query.com</a><br class=""><a href="http://x-query.com/mailman/listinfo/talk" class="">http://x-query.com/mailman/listinfo/talk</a></div></blockquote></div><br class=""></div></div></div>_______________________________________________<br class=""><a href="mailto:talk@x-query.com" class="">talk@x-query.com</a><br class=""><a href="http://x-query.com/mailman/listinfo/talk" class="">http://x-query.com/mailman/listinfo/talk</a></div></blockquote></div><br class=""><div apple-content-edited="true" class="">
<div class="">С уважением,</div><div class="">Павел Велихов</div><div class=""><a href="mailto:pavel.velikhov@gmail.com" class="">pavel.velikhov@gmail.com</a></div>
</div>
<br class=""></div></div></div></div></blockquote></div><br class=""></div></div></div></body></html>