<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div><div style="font-family: tahoma, 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><div style="font-family: tahoma, 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Concepts such as commit, rollback, and two-phase commit are still in play.&nbsp;</div></div></div></div></span></blockquote><div><br></div><div>Ken,</div><div><br></div>No, two phase commit isn't in play anymore, and hasn't been for a long time (if it has ever been</div><div>more then a research toy).</div><div><br></div><div>( It's nick name is the "unavailability protocol", given by the same people who actually</div><div>created and who worked on it for many, many years :-)</div><div><br></div><div>I can only wish good luck to the people who try to build scalable solutions based on WS-Transactions.</div><div><br></div><div>Distributed transaction across the Web don't scale, or they are too expensive to implement.</div><div>My guess is that all those new and&nbsp;fancy semi-structured Web databases that we will see from Google,</div><div>&nbsp;Amazon, etc, will never have &nbsp;ACID transactions&nbsp;in the traditional sense, simply because they cannot make</div><div>&nbsp;it scale at the level of the Web.&nbsp;</div><div><br></div><div>Who wants locks on data (XML or not) distributed and replicated the Web !!????</div><div><br></div><div>Hence &nbsp;the "almost consistency" of Amazon.</div><div><br></div><div>I don't claim we have an answer yet. I just said that we should try to look for one,</div><div>and that importing the good old traditional transactions as such (without thinking) doesn't sound smart to me.</div><div><br></div><div>The problem of data (in)consistency models is relatively orthogonal to the data model</div><div>(Java objects, SQL tuples or XML nodes). I simply think that, unlike the SQL community, the XML community is free</div><div>to rethink those issues properly for the new Web context, because we don't have the legacy.&nbsp;</div><div><br></div><div>Best regards</div><div>Dana</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div><div style="font-family: tahoma, 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><div style="font-family: tahoma, 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><br><br><br><br><br><br><br>On Apr 25, 2008, at 2:21 PM, Ken North wrote:<br><br>> Dana Florescu wrote:<br>>>> I don't think XQuery should be a general programming language,&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>>>> like in<br>>>> implementing a network protocol in for example.<br>>>><br>>>> But I think it is a great language for general data processing. It<br>>>> does the job very well.<br>>>><br>>>> If your program involves primarily data extraction, filtering,<br>>>> transformation, creation of new pieces of information<br>><br>> There's a lot of innovation in developing toolkits and frameworks&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> for building<br>> rich Internet applications and desktop applications. One&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> characteristic of the<br>> better frameworks is database support. Software such as Google Gears&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> and Adobe<br>> AIR include an SQL engine and APIs for SQL access. The 2.0 database&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> API for<br>> Google Gears is following the HTML 5 Storage API (SQL).<br>><br>> There are a number of web and mobile development toolsets that embed&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> an SQL<br>> engine, even though over-the-wire exchanges might involve XML and/or&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> JSON.&nbsp; The<br>> obvious question is what about XQuery?<br>><br>> The answer lies in part with CRUD operations and transaction&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> semantics. The SQL<br>> transaction model is based on standards and concepts, such as&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> isolation levels,<br>> that are well-understood. So there's nothing revolutionary if you're&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> an HTML 5<br>> developer coding with an SQLTransaction object, or a Gears developer&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> looking to<br>> use a transaction queue.<br>><br>> But assume you want to use an XML database engine and XQuery with&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> your favorite<br>> Web 2.0 framework, instead of building on its SQL solution. You&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> don't have a<br>> plug replacement because:<br>><br>> 1. There's no standard for transactions with native XML databases&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> (either<br>> behavior or syntax).<br>><br>> 2. Since XQuery Update became a candidate recommendation only this&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> year, we've<br>> had an extended period of XML database and XQuery products&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> implementing their<br>> own extensions for CRUD operations.<br>><br>> 3. XQuery and transactions are rarely discussed in the same&nbsp;<span class="Apple-converted-space">&nbsp;</span><br>> sentence, except in<br>> the 2005 XQuery Update Requirements doc.<br>><br>><br>><br>><br>><br>><br>><br>> _______________________________________________<br>><span class="Apple-converted-space">&nbsp;</span><a ymailto="mailto:talk@x-query.com" href="mailto:talk@x-query.com">talk@x-query.com</a><br>><span class="Apple-converted-space">&nbsp;</span><a href="http://x-query.com/mailman/listinfo/talk" target="_blank">http://x-query.com/mailman/listinfo/talk</a><br><br>_______________________________________________<br><a ymailto="mailto:talk@x-query.com" href="mailto:talk@x-query.com">talk@x-query.com</a><br><a href="http://x-query.com/mailman/listinfo/talk" target="_blank">http://x-query.com/mailman/listinfo/talk</a><br></div><br></div></div></div></span><br class="Apple-interchange-newline"></blockquote></div><br></body></html>