Tamino XQuery update vs. W3C XQuery update

The [url=http://www.w3.org/TR/2007/WD-xquery-update-10-20070828/]W3C

Hi Curtis,

yes, the XQuery’s suggestion for implementing the update is different from what Tamino XQuery does since Tamino’s implementation was based on a very early version of the draft. The differences are both about syntax and semantics.

The main syntactical difference is that every Tamino update statement must begin with ‘update’ whereas an XQuery update statement just needs to contain one of the keywords insert, delete, replace or rename. Tamino allows singular update statements and a kind of mass update referred to as FLWU Expressions. XQuery allows an update statement wherever a single expression is allowed (at least in principal). Thus XQuery can do both singular updates and also mass updates by inserting an update statement in a FLWOR result clause. XQuery also allows update statements elsewhere, for example in comma-expressions, but as far as I have seen what you can do with this mechanism should not exceed Tamino’s singular update plus FLWU by far.

There is, however, one thing where the XQuery draft exceeds Tamino and that is with the new transform statement. XQuery was originally designed as a language to pick pieces from the underlying data, whereas the task of taking large quantities of data and massaging this into something else just slightly changing the data set was left for XSLT. This might prove a problem when trying to re-insert data that has been taken from the database and was only slightly changed. This is, I think, what the new transform expression is meant for.