Bachelor + Master Publishing
811 Bachelorarbeiten, 533 Masterarbeiten, 10.103 Diplomarbeiten

Implementation of a declarative query and data manipulation language for X-Ray

Implementation of a declarative query and data manipulation language for X-Ray
Über dieses Buch
  • Art: Diplomarbeit
  • Autor: Christian Hiebl
  • Abgabedatum: Oktober 2002
  • Umfang: 135 Seiten
  • Dateigröße: 813,1 KB
  • Note: 1,0
  • Institution / Hochschule: Johannes Kepler Universität Linz Österreich
  • ISBN (eBook): 978-3-8324-7580-2
  • ISBN (Paperback) :
    978-3-8324-7580-2 P
  • ISBN (CD) :978-3-8324-7580-2 CD
  • Sprache: Englisch
  • Prämierung:
  • Arbeit zitieren: Hiebl, Christian Oktober 2002: Implementation of a declarative query and data manipulation language for X-Ray, Hamburg: Diplomica Verlag
  • Schlagworte: XML, Relationale Datenbank, Meta Datenbank, Abbildung, Datenmanipulationssprache

Diplomarbeit von Christian Hiebl

Abstract:

Nowadays, database management systems (DBMS) play a central role in the realization of modern information systems for efficient storage, management and retrieval of large amount of data. At the same time, the eXtensible Markup Language (XML) is emerging fast as de facto standard for electronic data exchange. In order to be able to benefit from both technologies, a number of approaches have already been developed, aiming at the integration of XML and DBMS. They allow processing XML data on the basis of declarative query languages, don’t pay however much attention to the manipulation of XML data.

The objective of this diploma thesis is to implement X-Ray QL, a declarative query and data manipulation language for X-Ray, an integration approach using the idea of a meta database. X-Ray QL allows besides creating, editing and deleting XML data in a declarative way, to retrieve the XML data using simple select queries.

The implementation of X-Ray QL consequently provides an operative runtime part of the X-Ray architecture with features like session management, authorisation mechanism and transaction control. An additional Web Service demonstrates the practical use of the X-Ray QL implementation.

Zusammenfassung:

Datenbankmanagementsysteme (DBMS) spielen heutzutage eine zentrale Rolle bei der Realisierung moderner Informationssysteme zur effizienten Speicherung, Verwaltung und Verarbeitung großer Datenmengen. Gleichzeitig steht mit der eXtensible Markup Language (XML) eine erweiterbare Auszeichnungssprache zur Verfügung, die unter anderem als Quasi-Standard für den elektronischen Datenaustausch gilt. Um die Vorteile beider Technologien nutzen zu können, existiert bereits eine Reihe von Ansätzen, die eine Integration von XML und DBMS zum Ziel haben. Diese Ansätze erlauben es XML Datenbestände auf Basis deklarativer Abfragesprachen zu verarbeiten, jedoch wurde das Verändern von bestehenden Datenbeständen noch nicht genauer behandelt ([KIM02]).

Ziel dieser Diplomarbeit ist es X-Ray QL, eine deklarative Abfrage- und Datenmanipulationssprache für X-Ray, ein Integrationsansatz unter Verwendung einer Metadatenbank, zu implementieren. X-Ray QL ermöglicht, neben dem deklarativen Erzeugen, Ändern und Löschen von XML Datenbeständen, auch einfache Abfragen durchzuführen.

Durch die Implementierung von X-Ray QL entsteht der Laufzeitteil der X-Ray Architektur, welcher sich durch Sessionmanagement, Autorisierungsmechanismus und Transaktionskontrolle auszeichnet. Ein Web Service dient zur praktischen Demonstration der X-Ray QL Implementierung.

Inhaltsverzeichnis:

1. Introduction 9
1.1 Motivation 9
1.2 Goals of this Thesis 10
1.3 Structure of this Thesis 11
2. X-Ray Architecture 12
2.1 Motivation 12
2.2 X-Ray Architecture in Detail 12
2.2.1 The Definition Part 13
2.2.2 The Runtime Part 14
2.2.3 The Meta Database Interface 15
2.3 Architectural Terminology 16
2.3.1 X-Ray Source 16
2.3.2 XML Document 16
2.3.3 Repository 18
3. X-Ray Runtime Implementation 23
3.1 Authorisation 23
3.1.1 Motivation 23
3.1.2 Authorisation Engine 23
3.2 Session Management 25
3.3 QL Engine 27
3.3.1 X-Ray QL Query Execution 28
3.3.2 X-Ray QL Query Verification 31
3.4 Syntax Check 31
3.5 XPath Engine 34
3.6 SQL Engine 37
3.7 SQL Queries 38
3.7.1 Select Query 39
3.7.2 Update Query 41
3.7.3 Insert Query 42
3.7.4 Delete Query 42
3.8 Select Engine 42
3.8.1 Initialisation 43
3.8.2 Execution 44
3.8.2.1 Target Attributes 45
3.8.2.2 Query Source 48
3.8.2.3 Predicates 49
3.8.2.3.1 Predicates with Position Information 50
3.8.2.3.2 Predicates without Position Information 51
3.8.2.4 Query Processing 51
3.8.2.5 Query Result 52
3.9 Update Engine 52
3.9.1 Simple Update 53
3.9.2 Cascading Update 54
3.10 Insert Engine 56
3.10.1 Direct Insert Operations 56
3.10.2 Indirect Insert Operation 58
3.11 Delete Engine 60
3.11.1 Direct Delete Operation 60
3.11.2 Indirect Delete Operation 61
3.12 Transaction Control 62
3.12.1 Commit 62
3.12.2 Rollback 64
4. X-Ray Language Definition 65
4.1 Commit / Rollback 66
4.2 Select 66
4.2.1 XPath Expression 66
4.2.2 X-Ray Source 68
4.3 Update 69
4.4 Insert 69
4.5 Delete 73
5. X-Ray QL Web Service 75
5.1 X-Ray QL Deployment Descriptor 75
5.2 Web Service Client 77
6. Outlook 81
6.1 Extension of the X-Ray Runtime Part 81
6.1.1 Authorisation Engine 81
6.1.2 Document-oriented Data 82
6.2 Extension of the Web Service Client 82
6.3 Extension of X-Ray QL 83
6.3.1 X-Ray Architecture Extensions 83
6.3.2 XML Mixed Content Types 84
6.3.3 X-Ray QL Rename Operation 84
6.3.4 X-Ray QL Assign Operation 84
7. Conclusion 86

Automatisiert erstellter Textauszug:

3.8.2.2 Query Source In the second step of the execution process the source of the query is processed. The source (see section 2.3.1) of the X-Ray QL query is a XML document defined on a repository. Therefore the associated XML document is retrieved from the source of the X-Ray QL select operation and used for building an XRaySource object. The X-Ray source contains the XML document, on which a X-Ray QL operation operates, in case of the select engine, the XML document the select operation operates on. The database attributes and values contained in the XML document object (see section 2.3.2 about “XML Document”) are therefore used to contain the result set of the SQL select query. So they are added to the where clause of the target select query. So if the source of our example was the XML document “europe” with the following definition, the target SQL query would then contain a where clause that selects only result rows with the database attribute AUTHOR.Id set to the value “author1” and “author2”. [...]

The X-Ray select operation is executed on the XML document with the name “europe”, which is defined in the repository “literature”. So the source for the select operation is the repository “literature” with the XML document “europe”. This X-Ray source is used to construct the select engine. The XPath engine is then executed by the QL engine to find the predicate [name/lname=”Mann”], which is added to the select engine, and the target XML element born_year, which is also added to the select engine. After the XPath engine was executed, the QL engine will execute the select engine to process the X-Ray QL select operation. 3.8.2 Execution [...]

The SQL engine is a static abstract super class that holds information passed by the XPath engine. This information consists of predicates extracted from the XPath expression of an XRay QL query, and the target XML element of the XPath expression. The QL engine for every new X-Ray QL query initialises the SQL engine. Therefore the source (see section 2.3.1) of the X-Ray QL query is passed to the SQL engine’s init method. The XML document name of the source is used to retrieve the XML document the X-Ray QL query operates on. With the alias name of the source a repository is associated. This repository is fetched from the repository cache or from the meta database. The SQL engine opens a connection to the relational database of the repository. This database connection is used for the execution of several SQL queries. [...]

Arbeit zitieren:
Hiebl, Christian Oktober 2002: Implementation of a declarative query and data manipulation language for X-Ray, Hamburg: Diplomica Verlag

Schlagworte:
XML, Relationale Datenbank, Meta Datenbank, Abbildung, Datenmanipulationssprache

diplom.de
Bachelor + Master Publishing

Hermannstal 119 k
22119 Hamburg

Fon: +49 (0) 40 655992-0
Fax: +49 (0) 40 655992-22

Service-Telefon

Rufen Sie uns an:
+49 (0) 40 655992-0

Mo-Fr
09.00-16.00 Uhr

diplom.de in den Medien

Folgen Sie uns bei Twitter & werden Sie diplom.de-Fan bei Facebook!
Schreibtipps unserer Lektoren, Neuigkeiten aus dem Verlagsalltag und das Expertenwissen unserer Autoren als Tweet & Post!
Wir freuen uns auf Sie!

diplom.de BACHELOR + MASTER PUBLISHING

Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Magisterarbeiten, Dissertationen und andere Abschlussarbeiten aus allen Fachbereichen und Hochschulen können Sie bei uns als eBook sofort per Download beziehen oder sich auf CD oder als Buch zusenden lassen. Seit mehr als 15 Jahren ist diplom.de der seriöse, professionelle und erfolgreiche Partner für die Veröffentlichung wissenschaftlicher Abschlussarbeiten.

© Diplomica Verlag GmbH 1996-2011, AG Hamburg HRB 80293 - GF Björn Bedey, USt-IdNr.: DE214910002 - Verkehrsnummer: 12285 - Impressum
Index der Arbeiten - Index der Autoren