XML Indexing & Storage System
HOME PEOPLE PAPERS XISS XISS/R DOWNLOAD LINKS
 
Introduction
Numbering
Algorithms
Data Set
Experiments
Introduction
Schemas
Architecture
Query
Data Set

This research is being sponsored by National Science Foundation CAREER Award IIS-9876037 and Research Infrastructure program EIA-0080123


XISS/R -- XISS using RDBMS

The extended preorder numbering scheme provides opportunities for storing XML data using relational databases. In our work, we implemented the XML Indexing and Storage System (XISS) on top of a relational database system (XISS/R). Since there are several choices on how to store the XML data using the numbering scheme, we implemented several relational schemas and compared their performances. The XISS/R system provides a web interface for user to issue queries, which are handled by a query engine written in PHP on server side. The query engine contacts a database server to process queries and return the results.

The current implementation of XISS/R uses Oracle 9i to store XML data and indexes, and provides a web query interface to a XPath query engine that processes XPath statements on stored XML documents. Included in this implementation are a loader application that parses XML documents and stores the contents in database according to the XISS algorithms specifications, and the query engine written in PHP that parses XPath queries into ANSI-92 compliant SQL queries on the relations stored in Oracle 9i and returns the results set to the user.

The system diagram for query processing is shown in the above figure. In the diagram, the user sends an XPath query through the query web page to the web server. The web server then passes the request to the XPath query engine, which translates the XPath query into SQL statements according to the relational schema in use. The database server running Oracle 9i processes the SQL query and returns the result to the XPath query engine, which tags the result and sends it to the user to display.

The features of the XISS using relational database (XISS/R) are:

bullet

XISS/R accepts queries expressed in XPath 2.0 abbreviated syntax.

bullet

XISS/R provides different relational schemas for comparison.

bullet

It automatically translates XPath queries to SQL statements corresponding to different schemas.

bullet

Along with the query result, the query statistics is also returned, which can be used to analyze the performance.