XUpdate WD



Mail List
Mail Archive
Lars Martin - lars@smb-tec.com
Working Draft - 2000-11-24
This is an XML:DB Working Draft for review by all interested parties. It is a draft document and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Working Drafts as reference material or to cite them as other than "work in progress". This work is part of the XML:DB Project.
This document specifies goals and requirements for the XML:DB XML Update Language.

Table of Contents

1 XML Update Language Requirements
    1.1 Goals
    1.2 Requirements
        1.2.1 Design Principles
        1.2.2 Services


A Normative References
B Other References

XML Update Language Requirements


The XML 1.0 Recommendation [XML] describes the syntax of XML documents. The mission of this Working Group is to provide open and flexible query and update facilities to modify data in XML documents.

This document lists the design principles and requirements for XUpdate - the XML Update Language specification.

Discussion of this document will take place on the public xupdate-dev@xmldb.org mailing list.


The following key words are used throughout the document to specify the extent to which an item is a requirement for the work of the XUpdate Working Group:

  • MUST - This word means that the item is an absolute requirement.
  • SHOULD - This word means that there may exist valid reasons not to treat this item as a requirement, but the full implications should be understood and the case carefully weighed before discarding this item.
  • MAY - This word means that an item deserves attention, but further study is needed to determine whether the item should be treated as a requirement.
  • Design Principles

    This section lists general design priciples for an XML Update Language.

  • Scope - The XML Update Language MUST describe how to query and update XML content.
  • Simplicity - An XML Update Language SHOULD be simple, powerfull and straightforward to the author.
  • Conformance - The XML Update specification SHOULD be conformant with the specifications as follows:
    • XML Namespaces
    • XPath
    • XPointer
  • Extensibility - The XML Update specification MUST be open to future extensibility.
  • Format - The XML Update specification MUST be an XML element (as defined by the XML1.0 specification.[XML])
  • Object and Parser Model - The XML Update specification MUST NOT be designed dependant on a XML object or parser model like DOM or SAX.
  • Target - The XML Update Language MUST be able to perform to a part or totality of one or more XML documents.
  • Integration - The development of an XML Update specification will require interaction with other XML:DB Working Groups. In particular with the XML Database API Working Group

  • Services

    This section lists a set of services which an XML Update Language must, should or may provide. A service describes a mechanism to query or modify XML content.

  • Query - The XML Update specification MUST provide basic query functionality. A query is the top level expression to perform an update query and selects a set of nodes to modify.
  • Update - The XML Update specification MUST define update mechanims. An update is the expression to modify XML content in a given query result.
  • Insert - The XML Update specification MUST provide functionality to insert new XML elements into a given query result.
  • Delete - The XML Update specification MUST be able to delete XML elements from a given query result.
  • Norrowing - The XML Update specification MUST provide mechanisms to norrow a queried set of documents.
  • Logical Operators - The XML Update specificatiom MUST include a set expressions for logical operations. This set SHOULD include 'and', 'or' and 'not' operators.
  • Logic - The XML Update specification SHOULD provide a minimal set of standardized base logic, like math or date manipulation.

  • Normative References

    • [XML] "Extensible Markup Language (XML) 1.0", Tim Bray, Jean Paoli, C. M. Sperberg-McQueen, 10 February 1998
    • [XPointer] "XML Pointer Language (XPointer) Version 1.0", Ron Daniel Jr., Steve DeRose, Eve Maler, 7 June 2000
    • [XPath] "XML Path Language (XPath) Version 1.0", James Clark, Steve DeRose, 16 November 1999
    • [XML-Namespaces] "Namespaces in XML", Tim Bray, Dave Hollander, Andrew Layman, 14 January 1999

    Other References

    • [XEditor] "XML Editing Language (XEditor)", Jonathan Borden, August 2000

    Copyright © 2000-2003 The XML:DB Initiative. All Rights Reserved.