An Interpreter Approach for Exporting Relational Data into XML Documents with Structured Export Markup Language

An Interpreter Approach for Exporting Relational Data into XML Documents with Structured Export Markup Language

Joseph Fong (City University of Hong Kong, Hong Kong) and Herbert Shiu (City University of Hong Kong, Hong Kong)
Copyright: © 2012 |Pages: 29
DOI: 10.4018/jdm.2012010103
OnDemand PDF Download:
No Current Special Offers


Almost all enterprises use relational databases to handle real time business operations and most need to generate various XML documents for data exchanges internally among various departments and externally with business partners. Exporting data in a relational database to an XML document can be considered a data conversion process. Based on the four approaches for data conversion: Customized program, Interpretive transformer, Translator generator, and Logical level translation, this paper proposes a new interpretive approach using Structured Export Markup Language (SEML) interpreter for converting relational data into XML documents. The frameworks and languages proposed by other researchers are neither generic nor able to generate arbitrary XML documents. Therefore, SEML interpreter is a simple, user friendly, and complete solution with a new mark-up language ? SEML ? for data conversion. The solution can be used as a generic tool for extracting, transforming, and loading (ETL) purposes. In other words, the SEML interpreter is a solution for relational databases similar to what X-Query is for XML databases.
Article Preview

1. Introduction

While a relational database is the major facility for storing operational data, more and more data are handled in XML format that needs to be composed according to particular XML schema definitions. The following presents the general problems that software developers are facing while composing XML data based on data stored in a relational database:

No Common Facilities for Exporting Desired XML Documents from RDB into XML Databases

Even though XML databases are becoming more popular because XML documents can be retrieved quickly from the XML database servers with query languages such as XQuery (Boag et al., 2007), a common scenario is that XML documents are generated by exporting real time data from a relational database whose data is constantly changing through all the business operations.

Software Developers are not Knowledgeable Enough

Software developers are usually required to write dedicated software applications to use (a) common input/output libraries or (b) XML specific libraries such as DOM (Le Hégaret 2005) and SAX (Megginson, 2004) to construct the XML documents (Fong, Wong, & Cheng, 2003). The former approach is more error prone, because the software developers must understand the XML specifications thoroughly. The latter approach constructs the corresponding DOM tree data structure in the computer memory before the document is serialized (stored). However, it is resource-demanding at run-time, especially for constructing very large XML documents.

Tradeoff Between Data Concurrency and Query Optimization

Nonetheless, there are issues in concurrency and query optimization. In a typical programmatic approach, software developers mostly have to connect to the underlying relational databases and send SQL statements repeatedly for the necessary data to construct various parts of the XML document regardless of whether they are using common input/output libraries, XML related libraries, or DOM/SAX. If the XML document construction program is the only client that manipulates the relational database server, such an approach works without any problem. However, if the relational database is updated by other software applications at the same time, the query statements sent by the XML document construction process must be transaction protected such that all data obtained from the relational database are of the same timestamp.

Complete Article List

Search this Journal:
Open Access Articles
Volume 33: 4 Issues (2022): 1 Released, 3 Forthcoming
Volume 32: 4 Issues (2021)
Volume 31: 4 Issues (2020)
Volume 30: 4 Issues (2019)
Volume 29: 4 Issues (2018)
Volume 28: 4 Issues (2017)
Volume 27: 4 Issues (2016)
Volume 26: 4 Issues (2015)
Volume 25: 4 Issues (2014)
Volume 24: 4 Issues (2013)
Volume 23: 4 Issues (2012)
Volume 22: 4 Issues (2011)
Volume 21: 4 Issues (2010)
Volume 20: 4 Issues (2009)
Volume 19: 4 Issues (2008)
Volume 18: 4 Issues (2007)
Volume 17: 4 Issues (2006)
Volume 16: 4 Issues (2005)
Volume 15: 4 Issues (2004)
Volume 14: 4 Issues (2003)
Volume 13: 4 Issues (2002)
Volume 12: 4 Issues (2001)
Volume 11: 4 Issues (2000)
Volume 10: 4 Issues (1999)
Volume 9: 4 Issues (1998)
Volume 8: 4 Issues (1997)
Volume 7: 4 Issues (1996)
Volume 6: 4 Issues (1995)
Volume 5: 4 Issues (1994)
Volume 4: 4 Issues (1993)
Volume 3: 4 Issues (1992)
Volume 2: 4 Issues (1991)
Volume 1: 2 Issues (1990)
View Complete Journal Contents Listing