schema involves the following steps. The structure
of the XML schema is a hierarchical structure. Each
element in the XML schema is assigned a unique ID.
A table is created for each element. The ID of the
element is set as the primary key of the table. To
represent the relationship between parent element
and child element, the primary key of the parent
element is set as foreign key in the child element.
The technique to derive XML view schema from
a given relational schema is more complicated and
user input is required. The process comprises two
steps. The first step is to transform the relational
schema into a directed graph. The second step is to
use graph-processing technique to find candidate
XML view schemas. The process requires user
guidance to make some decisions. For example, the
graph may have cycles and the user decides on the
root element and the sub-element to break the cycle.
Chen, et al (2002) propose a technique to design
XML views, which are guaranteed to be valid. A
valid XML view is an XML view that does not
violate the integrity constraint and the semantics of
the original XML document. The approach
comprises two parts:
• ORA-SS schema, which is built based on the
XML document. The schema describes the tree
structure of the XML document and the
relationships among elements in the document.
• A set of rules to guide the design of the valid
XML views. An XML view is designed by
applying selection, projection, join and/or swap
operation. The swap operation is to exchange the
position of parent element and child element.
When applying these operations to the design of a
view some rules must remain valid in order to
guarantee the validity of the XML view.
Braganholo, et al (2003) study the problem of
updating relational databases through XML views.
In other words, how to guarantee that translating an
update on an XML view into a set of update on the
underlying relations will not introduce additional
updates to the XML view. Not all XML views over
relational database are updateable. They focus on
Nest-Last XML views and Nest-Last-Project-Select-
Join XML views (NLPSJ view). NLPSJ XML is a
special sub-set of Nest-Last XML.
A Nest-Last XML view is a view expressed in
the nested relational algebra; the nest operator is the
last operator to be applied. Update to Nest-Last
XML views could be translated into a set of
corresponding relational view updates. If the
corresponding relational views are updateable, the
Nest-Last XML view is updateable.
By updating relational databases through XML
views, the approach hides the underlying relational
databases from users. Because the problem of
updating XML views is translated into updating
relational view, we argue that the techniques from
the relational model can be utilized.
Shah and Chirkova (2003) use materialized XML
views to improve query performance over relational
databases. To query XML data from relational
databases, XML query is first translated into SQL
query. Then the SQL query is executed. At last the
result is translated back into XML document. To
reduce the response time of a query, this approach
selects frequently accessed data and translates them
into XML document. When answering a XML
query, the database first checks materialized XML
views to determine whether they could be used to
answer the query. If yes, the answer is extracted
from the view directly. Otherwise the
aforementioned steps are executed to get the result.
This approach assumes the stored data in database
do not change frequently; otherwise it would involve
the overhead of updating XML views frequently.
To decide which data to select, a column called
access count is added into the relation. Initially,
access count is set as null. Each time a tuple is
accessed by a query, the access count value for the
tuple increments by one. When access count value
reaches the predefined threshold value, the data in
the tuple is added into XML views.
This approach could reduce the query response
time if data in XML views is carefully selected.
However, this approach can not guarantee that the
result retrieved from XML views is correct since the
data to be selected is determined only by the access
count value, not by some filtering conditions that
specify the XML view.
Kang and Lim (2002) discuss how to update
XML views over relational databases in deferred
way. XML view is update when the view is
requested by an application. Each update to the
underlying relational database will be recorded to
the update log chronologically for later use by XML
view update. Our approach presented in this paper
has some common points with this approach. Both
update XML views incrementally. However, the
approach we adopted does not constrain the database
engine to relational database only. Instead it could
be applied to any database at the backend.
The approach that will be discussed in this paper
utilizes some techniques from our previous work on
materialized views (Alhajj and elnagar, 1999). The
latter approach is a mechanism to incrementally
update materialized object-oriented views over
object-oriented database. The basic idea is a view is
updated when it is requested. Modification
information is recorded to be used when performing
ICEIS 2006 - DATABASES AND INFORMATION SYSTEMS INTEGRATION
152