A system and method are provided for XML query cursor implementation through
the
steps of query translation and processing, query result navigation, and positioned
update. An XML query cursor implemented in Interface Definition Language (IDL)
as well as an extension to XQuery, an XML query language, is described. These steps
are addressed by one of three approaches: multi-cursor, outer union, or hybrid.
In each approach, XML data is assumed to be stored in a relational database with
a mapping that maps each element to a row in a relational database table. In each
approach, a system and method provide for cursor movements and positioned updates
in increments of a node, sub-tree, or entire document. Given a user's navigation
patterns, a system and method is provided to select either a multi-cursor, outer
union, or hybrid approach as an optimal implementation for an XML query cursor.