Querying the Web Reconsidered: A Practical Introduction to Xcerpt
This article gives a practical introduction into the language Xcerpt, guided by many examples for illustrating language constructs and usage. Xcerpt is a rule-based, declarative query and transformation language for XML data. In Xcerpt, queries and the (re-)structuring of answer (also called "constructions") are expressed in terms of patterns instead of path navigations (like in XSLT and XQuery). Pattern queries are evaluated against XML documents using a non- standard form of unification (called "simulation unification" (BS02)). Furthermore, Xcerpt supports so-called rule chaining (with recursion), which makes it suitable even for complex query programs. Due to its foundations in logic programming, Xcerpt can also serve to implement reasoning algorithms for the Semantic Web. A prototype for evaluating Xcerpt programs is available for download at http:// demo.xcerpt.org. Besides the online version of the text-based Xcerpt prototype, there is also a prototypical implementation of visXcerpt, the visual rendering of Xcerpt. The visXcerpt prototype can be tried out online at http://visxcerpt.