AMa chioS - Abstract Machine for Xcerpt: Architecture and Principles

Web query languages promise convenient and efficient access to Web data such as XML, RDF, or Topic Maps. Xcerpt is one such Web query language with strong emphasis on novel high-level constructs for effective and convenient query authoring, particularly tailored to versatile access to data in different Web formats such as XML or RDF. However, so far it lacks an efficient implementation to supplement the convenient language features. AMaχoS is an abstract machine implementation for Xcerpt that aims at efficiency and ease of deployment. It strictly separates compilation and execution of queries: Queries are compiled once to abstract machine code that consists in (1) a code segment with instructions for evaluating each rule and (2) a hint segment that provides the abstract machine with optimization hints derived by the query compilation. This article summarizes the motivation and principles behind AMaχoS and discusses how its current architecture realizes these principles.

[1]  Robert P. Goldberg,et al.  Survey of virtual machine research , 1974, Computer.

[2]  Ecma,et al.  Common Language Infrastructure (CLI) , 2001 .

[3]  François Bry,et al.  Querying the Web Reconsidered: A Practical Introduction to Xcerpt , 2004, Extreme Markup Languages®.

[4]  Mendel Rosenblum,et al.  The Reincarnation of Virtual Machines , 2004, ACM Queue.

[5]  Tal Garfinkel,et al.  Terra: a virtual machine-based platform for trusted computing , 2003, SOSP '03.

[6]  Patrick E. O'Neil,et al.  ORDPATHs: insert-friendly XML node labels , 2004, SIGMOD '04.

[7]  David Gregg,et al.  The case for virtual register machines , 2003, IVME '03.

[8]  Michael Stonebraker,et al.  Aurora: a new model and architecture for data stream management , 2003, The VLDB Journal.

[9]  Brian Randall,et al.  ALGOL 60 implementation , 1964 .

[10]  Scott Devine,et al.  Disco: running commodity operating systems on scalable multiprocessors , 1997, TOCS.

[11]  Thomas Johnsson,et al.  Efficient compilation of lazy evaluation , 1984, SIGPLAN '84.

[12]  D. L. Overheu An Abstract Machine for Symbolic Computation , 1966, JACM.

[13]  L. J. Groves,et al.  The design of a virtual machine for Ada , 1980, SIGPLAN '80.

[14]  Steven Pemberton,et al.  Pascal Implementation: The P4 Compiler and Interpreter , 1982 .

[15]  Georg Gottlob,et al.  Conjunctive queries over trees , 2004, JACM.

[16]  Tim Furche,et al.  Querying the Web Reconsidered: Design Principles for Versatile Web Query Languages , 2005, Int. J. Semantic Web Inf. Syst..

[17]  Jennifer Widom,et al.  Continuous queries over data streams , 2001, SGMD.

[18]  Divesh Srivastava,et al.  Holistic twig joins: optimal XML pattern matching , 2002, SIGMOD '02.

[19]  Tim Furche,et al.  Beyond XML and RDF: the versatile web query language xcerpt , 2006, WWW '06.

[20]  Frank Yellin,et al.  The Java Virtual Machine Specification , 1996 .

[21]  Qiang Chen,et al.  Aurora : a new model and architecture for data stream management ) , 2006 .

[22]  Tim Furche,et al.  The XML stream query processor SPEX , 2005, 21st International Conference on Data Engineering (ICDE'05).

[23]  Xmldm,et al.  XML-Based Data Management and Multimedia Engineering — EDBT 2002 Workshops , 2002, Lecture Notes in Computer Science.

[24]  Konstantinos Sagonas,et al.  An abstract machine for tabled execution of fixed-order stratified logic programs , 1998, TOPL.

[25]  Tim Furche,et al.  Efficient evaluation of n-ary conjunctive queries over trees and graphs , 2006, WIDM '06.

[26]  Sebastian Schaffert,et al.  Xcerpt: a rule-based query and transformation language for the web , 2004 .

[27]  Tim Furche,et al.  XPath: Looking Forward , 2002, EDBT Workshops.

[28]  Joseph M. Hellerstein,et al.  Eddies: continuously adaptive query processing , 2000, SIGMOD '00.