CSE 544 -- Database Management Systems -- Spring 2000
TERM PROJECT

Quilt2Sql

AUTHORS: Justin Campbell, Daniel Grossman, and Ana-Maria Popescu
(TRUE)

Abstract

XML (the eXtensible Markup Language) is on the road to becoming a standard for computerized data presentation. With its ability to define a database's structure within the data document itself (or within a small, attached Document Type Definition file), XML allows web visitors to download and view a site's data with no previous knowledge of the data format. Thus, XML is a powerful language for rapidly obtaining and incorporating structured and semi-structured data from around the world. Several generations of data browsers, query languages, and query engines have already been deployed for XML, culminating most recently in the introduction of the Quilt query language [8].

Incorporating well-studied data storage and querying schemes from a variety of authors [4] [5] [6] [7] [9], we have implemented the first Quilt query engine (to our knowledge) -- Quilt2Sql. At its heart is a relational storage schema and PostgreSQL relational query interface. In this paper we present the important components of our engine: an XML parser, XML-to-relational translator and storage schema, Quilt query parser, Quilt to SQL query translator, and XML result formatter. It should be noted that the Quilt language is rapidly changing: at the time of this publication, the Quilt grammar we employed was already dated.

Keywords:
Quilt, XML Query Language, Databases, Relational Storage Schema, PostgreSQL.

Please download our paper here:    Quilt2Sql.ps


References

  1. Don Chamberlin, Jonathan Robie, and Daniela Florescu. "Quilt: an XML Query Language for Heterogeneous Data Sources." WebDB 2000, May 2000.
  2. World Wide Web Consortium. XML Path Language (XPath) Version 1.0. W3C Recommendation, 1999. http://www.w3.org/TR/xpath.html.
  3. Mary Fernández, Wang-Chiew Tan, and Dan Suciu. "SilkRoute: Trading Between Relations and XML". Technical report, AT&T Labs -- Research and University of Pennsylvania, November 1999.
  4. Daniela Florescu and Donald Kossmann. "A Performance Evaluation of Alternative Maping Schemes for Storing XML Data in a Relational Database." Unpublished, Inria, France, and University of Passau, Germany, August 1999.
  5. Goetz Graefe. "Query Evaluation Techniques for Large Databases". ACM Computing Surveys, 25(2), June 1993.
  6. Zachary G. Ives, Michael Carey, Eugene Shekita, Subbu Subramanian, and Ying Lu. "XPERANTO: Publishing Object-Relational Data as XML." Third International Workshop on the Web and Databases, 1999. Paper #349.
  7. Donald Kossmann. "The State of the Art in Distributed Query Processing". Technical Report, University of Passau, 1997.
  8. Jonathan Robie, Don Chamberlin, and Daniela Florescu. "Quilt: An XML Query Language". XML Europe, June 2000. Advance copy received by request from authors in March, 2000.
  9. Jayavel Shanmugasundaram, Kristin Tufte, Gang He, Chun Zhang, David DeWitt, and Jeffrey Naughton. "Relational Databases for Querying XML Documents: Limitations and Opportunities." Proceedings of the 25th VLDB Conference, 1999. Edinburgh, Scotland.

This page last updated: Tuesday, June 27, 2000.
E-mail the authors: Justin Campbell, Daniel Grossman, Ana-Maria Popescu