The most comprehensive guide available to XML and Databases!
Covers both native XML databases such as Tamino and using XML in existing databases such as Oracle 9i and SQL Server 2000
Provides state-of-the-art information written by top experts on the subject areas.
Gives practical guidance based on first-hand experience.
User Level: Intemediate to Advanced Audience:
Programmers who are experienced in both database technology and XML, and wish to learn how these technologies can be used together.
Akmal Chaudhri is editor of the Open Source Projects area of IBMs DeveloperWorks Web site. He has been a regular presenter on Java, XML, and databases at a number of conferences, and is the editor of three previous books, including Object Databases in Practice, Prentice-Hall, 1998. Awais Rashid teaches courses on database technology at Lancaster University. He was previously a researcher at the Xerox Research Center Europe. He writes regularly for technical journals, and serves regularly on the program committees for conferences. Roberto Zicari is a full professor of computer science at Goethe University in Germany, and is the co-editor of three previous books. Product Description
Within a very short amount of time XML has become an essential part of almost every developer's arsenal of tools. It has affected every area of software. One of the fields where the impact of XML is still being worked out is in the world of databases and data management. Will XML and native XML databases replace traditional relational databases? How can XML be used as a tool to make relational databases even stronger? This book is intended to address these questions. It provides a discusssion of the various XML data management approaches employed in a range of products and applications. The book is based on a series of presentations at last year's OOPSLA conference. Topics covered range from using XML with Oracle9i or SQL Server to embedded XML databases to Tamino. Individual chapters are written by experts in those fields. In all cases the authors use concrete, practical examples, explore alternative approaches, and examine their strengths and weaknesses. There is no other book with the breadth of coverage offered here.
Backcover
This is an excellent book that combines a practical and analytical look at the subject.
-Leo Korman, Principal Software Engineer, KANA Software
As organizations begin to employ XML within their information-management and exchange strategies, data management issues pertaining to storage, retrieval, querying, indexing, and manipulation increasingly arise. Moreover, new information-modeling challenges also appear. XML Data Management-with its contributions from experts at the forefront of the XML field-addresses these key issues and challenges, offering insights into the advantages and drawbacks of various XML solutions, best practices for modeling information with XML, and developing custom, in-house solutions.
In this book, you will find discussions on the newest native XML databases, along with information on working with XML-enabled relational database systems. In addition, XML Data Management thoroughly examines benchmarks and analysis techniques for performance of XML databases.
Topics covered include:
The power of good grammar and style in modeling information to alleviate the need for redundant domain knowledge
Tamino's XML storage, indexing, querying, and data access features
The features and APIs of open source eXist
Berkeley DB XML's ability to store XML documents natively
IBM's DB2 Universal Database and its support for XML applications
Xperanto's method of addressing information integration requirements
Oracle's XMLType for managing document centric XML documents
Microsoft SQL Server 2000's support for exporting and importing XML data
A generic architecture for storing XML documents in a relational database
X007, XMach-1, XMark, and other benchmarks for evaluating XML database performance Numerous case studies demonstrate real-world problems, industry-tested solutions, and creative applications of XML data management solutions.
Written for both XML and relational database professionals, XML Data Management provides a promising new approach to data management, one that is sure to positively impact the way organizations manage and exchange information.
0201844524B01302003
Preface.
Acknowledgments.
I. WHAT IS XML?
1. Information Modeling with XML.
Introduction.
XML as an Information Domain.
How XML Expresses Information.
Patterns in XML.
Common XML Information-Modeling Pitfalls.
Attributes Used as Data Elements.
Data Elements Used as Metadata.
Inadequate Use of Tags.
A Very Simple Way to Design XML.
Conclusion.
II. NATIVE XML DATABASES.
2. TaminoSoftware AG's Native XML Server.
Introduction.
Tamino Architecture and APIs.
XML Storage.
Collections and Doctypes.
Schemas.
Access to Other DatabasesTamino X-Node.
Mapping Data to FunctionsTamino X-Tension.
Internationalization Issues.
Indexing.
Organization on Disk.
Querying XML.
Query LanguageTamino X-Query.
Sessions and Transactions.
Handling of Results.
Query Execution.
Tools.
Database Browsing.
Schema Editing.
WebDAV Access.
X-Application.
Full Database Functionality.
Conclusion.
3. eXist Native XML Database.
Introduction.
Features.
Schema-less XML Data Store.
Collections.
Index-Based Query Processing.
Extensions for Full-Text Searching.
System Architecture Overview.
Pluggable Storage Backends.
Deployment.
Application Development.
Getting Started.
Query Language Extensions.
Specifying the Input Document Set.
Querying Text.
Outstanding Features.
Application Development.
Programming Java Applications with the XML:DB API.
Accessing eXist with SOAP.
Integration with Cocoon.
Technical Background.
Approaches to Query Execution.
Indexing Scheme.
Index and Storage Implementation.
Query Language Processing.
Query Performance.
Conclusion.
4. Embedded XML Databases.
Introduction.
A Primer on Embedded Databases.
Embedded XML Databases.
Building Applications for Embedded XML Databases.
Overview of Berkeley DB XML.
Configuration.
Indexing and Index Types.
XPath Query Processing.
Programming for Transactions.
Two-Phase Locking and Deadlocks.
Reducing Contention.
Checkpoints.
Recovery Processing after Failures.
Conclusion.
III. XML AND RELATIONAL DATABASES.
5. IBM XML-Enabled Data Management Product Architecture and Technology.
Introduction.
Product and Technology Offering Summaries.
DB2 Universal Database.
Information Integration Technology.
Current Architecture and Technology.
Shared Architecture and Technology.
XML Extender Architecture.
XML Extender Technology.
Using Both XML Collections and XML Columns.
Transforming XML Data.
Searching, Parsing, and Validating XML Data.
XML Extender Federated Support.
SQL XML Support Architecture.
SQL XML Support Technology.
Data Management Web Services Architecture.
Data Management Web Services Technology.
Information Integration-Specific Architecture and Technology.
Future Architecture and Technology.
The Vision.
Application Interface, Data Type, and API Goals.
Storage, Engine, and Data Manager Goals.
Why Support Both XML and Relational Storage in One System?
Why Not Object-Relational Long Term?
Impacted Technology Areas.
Conclusion.
Notices.
6. Supporting XML in Oracle9i.
Introduction.
Storing XML as CLOB.
Using CLOB and the OracleText Cartridge.
Search Predicates in OracleText.
XML-Specific Functionality.
Prerequisites.
XMLType.
Object Type XMLType.
Processing of XMLType in Java.
Using XSU for Fine-Grained Storage.
Canonical Mapping.
Retrieval.
Modifications.
Building XML Documents from Relational Data.
SQL Functions existsNode and extract.
The SQL Function SYS_XMLGen.
The SQL Function SYS_XMLAgg.
PL/SQL Package DBMS_XMLGen.
Web Access to the Database.
The Principle of XSQL.
Posting XML Data into the Database.
Parameterization.
Servlet Invocations.
Special Oracle Features.
URI Support.
Parsers.
Class Generator.
Special Java Beans.
Conclusion.
7. XML Support in Microsoft SQL Server 2000 165
Introduction.
XML and Relational Data.
XML Access to SQL Server.
Access via HTTP.
Using the XML Features through SQLOLEDB, ADO, and .NET.
Serializing SQL Query Results into XML.
The Raw Mode.
The Auto and Nested Modes.
The Explicit Mode.
Providing Relational Views over XML.
SQLXML Templates.
Providing XML Views over Relational Data.
Annotated Schemata.
Querying Using XPath.
Updating Using Updategrams.
Bulk Loading.
Conclusion.
8. A Generic Architecture for Storing XML Documents in a Relational Database.
Introduction.
System Architecture.
Installing Xerces.
The Data Model.
DOM Storage in Relational Databases.
The Nested Sets Model.
Creating the Database.
The Physical Data Model.
Creating User-Defined Data Types.
Creating the Tables.
Serializing a Document out of the Repository.
Building an XML Document Manually.
Connecting to the Repository.
The xmlrepDB Class.
Uploading XML Documents.
The xmlrepSAX Class.
Stored Procedures for Data Entry.
The uploadXML Class.
The extractXML Class.
Querying the Repository.
Ad Hoc SQL Queries.
Searching for Text.
Some More Stored Procedures.
Generating XPath Expressions.
Further Enhancements.
Conclusion.
9. An Object-Relational Approach to Building a High-Performance XML Repository.
Introduction.
Overview of XML Use-Case Scenario.
High-Level System Architecture.
Detailed Design Descriptions.
Conclusion.
IV. APPLICATIONS OF XML.
10. Knowledge Management in Bioinformatics.
Introduction.
A Brief Molecular Biology Background.
Life Sciences Are Turning to XML to Model Their Information.
A Genetic Information Model.
NeoCore XMS.
Integration of BLAST into NeoCore XMS.
Sequence Search Types.
Conclusion.
11. Case Studies of XML Used with IBM DB2 Universal Database.
Introduction.
In this book, you will find discussions on the newest native XML databases, along with information on working with XML-enabled relational database systems. In addition, XML Data Management thoroughly examines benchmarks and analysis techniques for performance of XML databases. This book is best used by students that are knowledgeable in database technology and are familiar with XML.
Covers both native XML databases such as Tamino and using XML in existing databases such as Oracle 9i and SQL Server 2000
Provides state-of-the-art information written by top experts on the subject areas.
Gives practical guidance based on first-hand experience.
User Level: Intemediate to Advanced Audience:
Programmers who are experienced in both database technology and XML, and wish to learn how these technologies can be used together.
Akmal Chaudhri is editor of the Open Source Projects area of IBMs DeveloperWorks Web site. He has been a regular presenter on Java, XML, and databases at a number of conferences, and is the editor of three previous books, including Object Databases in Practice, Prentice-Hall, 1998. Awais Rashid teaches courses on database technology at Lancaster University. He was previously a researcher at the Xerox Research Center Europe. He writes regularly for technical journals, and serves regularly on the program committees for conferences. Roberto Zicari is a full professor of computer science at Goethe University in Germany, and is the co-editor of three previous books. Product Description
Within a very short amount of time XML has become an essential part of almost every developer's arsenal of tools. It has affected every area of software. One of the fields where the impact of XML is still being worked out is in the world of databases and data management. Will XML and native XML databases replace traditional relational databases? How can XML be used as a tool to make relational databases even stronger? This book is intended to address these questions. It provides a discusssion of the various XML data management approaches employed in a range of products and applications. The book is based on a series of presentations at last year's OOPSLA conference. Topics covered range from using XML with Oracle9i or SQL Server to embedded XML databases to Tamino. Individual chapters are written by experts in those fields. In all cases the authors use concrete, practical examples, explore alternative approaches, and examine their strengths and weaknesses. There is no other book with the breadth of coverage offered here.
Backcover
This is an excellent book that combines a practical and analytical look at the subject.
-Leo Korman, Principal Software Engineer, KANA Software
As organizations begin to employ XML within their information-management and exchange strategies, data management issues pertaining to storage, retrieval, querying, indexing, and manipulation increasingly arise. Moreover, new information-modeling challenges also appear. XML Data Management-with its contributions from experts at the forefront of the XML field-addresses these key issues and challenges, offering insights into the advantages and drawbacks of various XML solutions, best practices for modeling information with XML, and developing custom, in-house solutions.
In this book, you will find discussions on the newest native XML databases, along with information on working with XML-enabled relational database systems. In addition, XML Data Management thoroughly examines benchmarks and analysis techniques for performance of XML databases.
Topics covered include:
The power of good grammar and style in modeling information to alleviate the need for redundant domain knowledge
Tamino's XML storage, indexing, querying, and data access features
The features and APIs of open source eXist
Berkeley DB XML's ability to store XML documents natively
IBM's DB2 Universal Database and its support for XML applications
Xperanto's method of addressing information integration requirements
Oracle's XMLType for managing document centric XML documents
Microsoft SQL Server 2000's support for exporting and importing XML data
A generic architecture for storing XML documents in a relational database
X007, XMach-1, XMark, and other benchmarks for evaluating XML database performance Numerous case studies demonstrate real-world problems, industry-tested solutions, and creative applications of XML data management solutions.
Written for both XML and relational database professionals, XML Data Management provides a promising new approach to data management, one that is sure to positively impact the way organizations manage and exchange information.
0201844524B01302003
Preface.
Acknowledgments.
I. WHAT IS XML?
1. Information Modeling with XML.
Introduction.
XML as an Information Domain.
How XML Expresses Information.
Patterns in XML.
Common XML Information-Modeling Pitfalls.
Attributes Used as Data Elements.
Data Elements Used as Metadata.
Inadequate Use of Tags.
A Very Simple Way to Design XML.
Conclusion.
II. NATIVE XML DATABASES.
2. TaminoSoftware AG's Native XML Server.
Introduction.
Tamino Architecture and APIs.
XML Storage.
Collections and Doctypes.
Schemas.
Access to Other DatabasesTamino X-Node.
Mapping Data to FunctionsTamino X-Tension.
Internationalization Issues.
Indexing.
Organization on Disk.
Querying XML.
Query LanguageTamino X-Query.
Sessions and Transactions.
Handling of Results.
Query Execution.
Tools.
Database Browsing.
Schema Editing.
WebDAV Access.
X-Application.
Full Database Functionality.
Conclusion.
3. eXist Native XML Database.
Introduction.
Features.
Schema-less XML Data Store.
Collections.
Index-Based Query Processing.
Extensions for Full-Text Searching.
System Architecture Overview.
Pluggable Storage Backends.
Deployment.
Application Development.
Getting Started.
Query Language Extensions.
Specifying the Input Document Set.
Querying Text.
Outstanding Features.
Application Development.
Programming Java Applications with the XML:DB API.
Accessing eXist with SOAP.
Integration with Cocoon.
Technical Background.
Approaches to Query Execution.
Indexing Scheme.
Index and Storage Implementation.
Query Language Processing.
Query Performance.
Conclusion.
4. Embedded XML Databases.
Introduction.
A Primer on Embedded Databases.
Embedded XML Databases.
Building Applications for Embedded XML Databases.
Overview of Berkeley DB XML.
Configuration.
Indexing and Index Types.
XPath Query Processing.
Programming for Transactions.
Two-Phase Locking and Deadlocks.
Reducing Contention.
Checkpoints.
Recovery Processing after Failures.
Conclusion.
III. XML AND RELATIONAL DATABASES.
5. IBM XML-Enabled Data Management Product Architecture and Technology.
Introduction.
Product and Technology Offering Summaries.
DB2 Universal Database.
Information Integration Technology.
Current Architecture and Technology.
Shared Architecture and Technology.
XML Extender Architecture.
XML Extender Technology.
Using Both XML Collections and XML Columns.
Transforming XML Data.
Searching, Parsing, and Validating XML Data.
XML Extender Federated Support.
SQL XML Support Architecture.
SQL XML Support Technology.
Data Management Web Services Architecture.
Data Management Web Services Technology.
Information Integration-Specific Architecture and Technology.
Future Architecture and Technology.
The Vision.
Application Interface, Data Type, and API Goals.
Storage, Engine, and Data Manager Goals.
Why Support Both XML and Relational Storage in One System?
Why Not Object-Relational Long Term?
Impacted Technology Areas.
Conclusion.
Notices.
6. Supporting XML in Oracle9i.
Introduction.
Storing XML as CLOB.
Using CLOB and the OracleText Cartridge.
Search Predicates in OracleText.
XML-Specific Functionality.
Prerequisites.
XMLType.
Object Type XMLType.
Processing of XMLType in Java.
Using XSU for Fine-Grained Storage.
Canonical Mapping.
Retrieval.
Modifications.
Building XML Documents from Relational Data.
SQL Functions existsNode and extract.
The SQL Function SYS_XMLGen.
The SQL Function SYS_XMLAgg.
PL/SQL Package DBMS_XMLGen.
Web Access to the Database.
The Principle of XSQL.
Posting XML Data into the Database.
Parameterization.
Servlet Invocations.
Special Oracle Features.
URI Support.
Parsers.
Class Generator.
Special Java Beans.
Conclusion.
7. XML Support in Microsoft SQL Server 2000 165
Introduction.
XML and Relational Data.
XML Access to SQL Server.
Access via HTTP.
Using the XML Features through SQLOLEDB, ADO, and .NET.
Serializing SQL Query Results into XML.
The Raw Mode.
The Auto and Nested Modes.
The Explicit Mode.
Providing Relational Views over XML.
SQLXML Templates.
Providing XML Views over Relational Data.
Annotated Schemata.
Querying Using XPath.
Updating Using Updategrams.
Bulk Loading.
Conclusion.
8. A Generic Architecture for Storing XML Documents in a Relational Database.
Introduction.
System Architecture.
Installing Xerces.
The Data Model.
DOM Storage in Relational Databases.
The Nested Sets Model.
Creating the Database.
The Physical Data Model.
Creating User-Defined Data Types.
Creating the Tables.
Serializing a Document out of the Repository.
Building an XML Document Manually.
Connecting to the Repository.
The xmlrepDB Class.
Uploading XML Documents.
The xmlrepSAX Class.
Stored Procedures for Data Entry.
The uploadXML Class.
The extractXML Class.
Querying the Repository.
Ad Hoc SQL Queries.
Searching for Text.
Some More Stored Procedures.
Generating XPath Expressions.
Further Enhancements.
Conclusion.
9. An Object-Relational Approach to Building a High-Performance XML Repository.
Introduction.
Overview of XML Use-Case Scenario.
High-Level System Architecture.
Detailed Design Descriptions.
Conclusion.
IV. APPLICATIONS OF XML.
10. Knowledge Management in Bioinformatics.
Introduction.
A Brief Molecular Biology Background.
Life Sciences Are Turning to XML to Model Their Information.
A Genetic Information Model.
NeoCore XMS.
Integration of BLAST into NeoCore XMS.
Sequence Search Types.
Conclusion.
11. Case Studies of XML Used with IBM DB2 Universal Database.
Introduction.
In this book, you will find discussions on the newest native XML databases, along with information on working with XML-enabled relational database systems. In addition, XML Data Management thoroughly examines benchmarks and analysis techniques for performance of XML databases. This book is best used by students that are knowledgeable in database technology and are familiar with XML.