Hostname: page-component-745bb68f8f-grxwn Total loading time: 0 Render date: 2025-02-11T13:35:06.953Z Has data issue: false hasContentIssue false

XPath-logic and XPathLog: A logic-programming style XML data manipulation language

Published online by Cambridge University Press:  16 April 2004

WOLFGANG MAY
Affiliation:
Institut für Informatik, Universität Göttingen, Göttingen, Germany (e-mail: may@informatik.uni-goettingen.de)
Rights & Permissions [Opens in a new window]

Abstract

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the ‘Save PDF’ action button.

We define XPathLog as a Datalog-style extension of XPath. XPathLog provides a clear, declarative language for querying and manipulating XML whose perspectives are especially in XML data integration. In our characterization, the formal semantics is defined wrt. an edge-labeled graph-based model, which covers the XML data model. We give a complete, logic-based characterization of XML data and the main language concept for XML, XPath. XPath-Logic extends the XPath language with variable bindings and embeds it into first-order logic. XPathLog is then the Horn fragment of XPath-Logic, providing a Datalog-style, rule-based language for querying and manipulating XML data. The model-theoretic semantics of XPath-Logic serves as the base of XPathLog as a logic-programming language, whereas also an equivalent answer-set semantics for evaluating XPathLog queries is given. In contrast to other approaches, the XPath syntax and semantics is also used for a declarative specification how the database should be updated: when used in rule heads, XPath filters are interpreted as specifications of elements and properties which should be added to the database.

Type
Regular Papers
Copyright
© 2004 Cambridge University Press