A Rule-based Querying and Updating Language for XML
We present XPathLog as a Datalog-style extension to XPath. The querying part extends XPath with binding multiple variables to XML nodes which are "traversed" when evaluating an XPath expression. Data manipulation is done in a rule-based way. In contrast to other approaches, the XPath-based syntax and semantics is also used for a declarative specification how the database should be updated: XPath filters are interpreted as specifications of elements and properties which should be added to the database. In this paper, we focus on the theoretical aspects of XPathLog. XPathLog has been implemented in the LoPiX system.
[PDF Slides] [PS Slides]