OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] Yet another plea for XUpdate (was New XSLT, XPath, and XQu

[ Lists Home | Date Index | Thread Index ]

At 01:17 PM 5/2/2002 -0600, Uche Ogbuji wrote:
> > I know it's a near hopeless case, politically, but I
> > have no idea why there is not more consideration of
> > XUpdate in these discussions.
[ !!! SNIP !!! ]
>http://www.xmldatabases.org/projects/XUpdate-UseCases/
> > http://www.xmldb.org/xupdate/
> >
> > One problem, for sure, is that the spec needs
> > polish.

Depends what you mean by "these discussions". In the XML Query Working 
Group, I think people want an update syntax that is a natural extension of 
the existing XQuery language, a design goal which XUpdate does not try to 
address.

XUpdate uses an XML vocabulary to express where updates should be made, eg:

<xupdate:modifications version="1.0"
xmlns:xupdate="http://www.xmldb.org/xupdate";>
<xupdate:insert-before select="/addresses/address[@id = 1]/name/last" >
<xupdate:element name="middle">Lennox</xupdate:element>
</xupdate:insert-before>
</xupdate:modifications>

In the update proposal I presented at XML 2001, which is virtually 
identical to the proposal in the Lehti paper, the equivalent query would be:

update
   insert <middle>Lennox</middle>
   preceding document("xupdate.xml")/addresses/address[@id = 1]/name/last

You can use the expressions of XQuery to build up content used for updates. 
That's pretty useful, since the data you need to build your updates may 
come from many sources. For the user, I don't think that the syntax of the 
XQuery update is more obscure than the syntax of the equivalent XUpdate.

Integration with the rest of XQuery gives you one other important 
advantage: type safety. That really matters for updates.

At 12:49 PM 5/2/2002 -0700, Dare Obasanjo wrote:
>XUpdate is an overly verbose XML syntax that only does
>updates. This doesn't solve the SQL for XML problem.
>On the other hand, this was the original goal of
>SiXDML, one which I think it accomplishes rather well.
>http://www.xmldb.org/sixdml/
>http://www.xmldb.org/sixdml/sixdml-lang.html
>http://www.xmldb.org/sixdml/sixdml-api.html
>http://www.25hoursaday.com/sixdml/demo.html

This is another proposal that does not try to address the design goals of 
XQuery updates. Instead of trying to integrate with the XQuery language, it 
integrates with the SQL language, with a looser coupling to XSLT, as seen 
in queries like this:

SELECT //TITLE[text()='Sandstone'] FROM
auctiondata/auction1.xml AND TRANSFORM WITH XSLT IN{

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/XSL/Transform/1.0";>
<xsl:template match="/">
<HTML>
<HEAD><TITLE><xsl:value-of select='/document/title'/></TITLE></HEAD>
<BODY><xsl:apply-templates/></BODY>
</HTML>
</xsl:template>

<xsl:template match="TITLE">
<H1><xsl:apply-templates/></H1>
</xsl:template>

</xsl:stylesheet>
}

Both of these languages can be used for updates, but neither obviates the 
need for an XQuery update syntax, IMHO.

Jonathan





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS