Synopses & Reviews
"The individual perspectives on the concepts behind the XQuery language offered by XQuery from the Experts will be of great value to those who are seeking to understand the implications, opportunities, and challenges of XQuery as they design future information systems based on XML." —Michael Champion, Advisory Research and Development Specialist, Software AG
XQuery answers the growing need for a functional XML search and transformation standard. Backed by the full weight of the World Wide Web Consortium (W3C), XQuery is being extremely well received by the IT community worldwide. The first major XML language that takes advantage of the benefits of strong typing provided by XML Schema, XQuery has the versatility to manipulate both XML and non-XML data and provides a valuable connection between the world of XML and relational databases.
In XQuery from the Experts , select members of the W3C's XML Query working group come together to discuss every facet of XQuery. From Jonathan Robie's introductory "XQuery: A Guided Tour" to Mary Mary Fernández, Jérôme Siméon, and Philip Wadler's "Introduction to the Formal Semantics," XQuery is revealed in a way that both novice programmers and industry experts can appreciate.
Edited by long-time XML expert and programmer Howard Katz, coverage ranges from strictly technical chapters to comparative essays such as Michael Kay's "XQuery, XPath, and XSLT," which explores the common ancestry of all three languages, and Don Chamberlin's "Influences on the Design of XQuery," which details the process behind XQuery's design.
Key coverage includes:
Denise Draper on "Mapping Between XML and Relational Data" Michael Rys exploring "Integrating XQuery and Relational Database Systems" Jim Tivy's analysis of "A Native XML DBMS" Mary Mary Fernández, Jérôme Siméon, and Philip Wadler, presenting "Static Typing in XQuery" Information presented in both a tutorial and a reference framework for use by XML professionals of any level For IT managers, professionals, programmers, or anyone involved with XML, XQuery from the Experts is an invaluable resource.
0321180607B07212003
Synopsis
Includes bibliographical references (p. 437-442) and index.
About the Author
Howard Katz is the owner of Fatdog Software, a company that specializes in software for searching XML documents, and is the author of XQEngine, a Java-based open-source XQuery implementation. He has more than 35 years of programming experience and is a long-time contributor of technical articles to the computer trade press, including columns on programming matters for both Microsoft and Apple.
Denise Draper is chief technology officer for Nimble Technology in Seattle and holds several patents for XML-based technology. She holds degrees from both CalTech and the University of Washington and is an editor of the Formal Semantics document.
Mary Fernández is a principal technical staff member in Large-Scale Programming Research at AT&T Labs—Research. She has been there since receiving a Ph.D. in Computer Science from Princeton in 1995. Mary is an editor of the Formal Semantics, XPath 2.0, and Data Model documents.
Michael Kay is the developer of Saxon, a highly-regarded XSLT processor, and is the author of the best-selling XSLT Programmer's Reference. He is an editor of the XSL Transformations, XQuery Serialization, and XPath 2.0 documents.
Jonathan Robie is the XML product architect at DataDirect Technologies, working on products that integrate XML and traditional data sources. He is a coauthor of Quilt, the immediate predecessor of XQuery, and is an editor of the main XQuery 1.0, XML Query Requirements, XQueryX, and XPath 2.0 documents.
Michael Rys sits on the Query Working Group on behalf of Microsoft, where he is the Product Manager for SQL Server XML Technologies. He is an editor of the Formal Semantics, XML Query Requirements, and XPath Full-Text Requirements documents.
Jérôme Siméon is a member of the technical staff at Bell Labs. He is one of the implementers of Galax, one of the first XQuery implementations. He is an editor of the XQuery 1.0, XPath 2.0, and Formal Semantics documents.
Jim Tivy has spent over ten years working on database technology. He represents XML Global Technologies on the Working Group. His own company, BlueStream Database Software Corporation, develops and markets XStreamDB, a native XML database product.
Philip Wadler is a researcher at Avaya Labs in New Jersey. He edits the Journal of Functional Programming for Cambridge University Press and is an editor of the Formal Semantics document.
Don Chamberlin, coauthor of the well-known SQL database language standard, is IBM's representative on the XML Query Working Group and is an editor of both the W3C's XML Query Use Cases and Data Model documents. In
Table of Contents
Preface.
Contributors.
Acknowledgments.
I. BASICS. 1. XQuery: A Guided Tour.
Sample Data: A Bibliography.
Data Model.
Literals and Comments.
Input Functions.
Locating Nodes: Path Expressions.
Creating Nodes: Element, Attribute, and Document Constructors.
Combining and Restructuring Nodes.
FLWOR Expressions.
Quantifiers.
Conditional Expressions.
Operators.
Arithmetic Operators.
Comparison Operators.
Sequence Operators.
Built-in Functions.
User-Defined Functions.
Variable Definitions.
Library Modules.
External Functions and Variables.
Types in XQuery.
Introduction to XQuery Types.
Schemas and Types.
Sequence Types.
Working with Types.
Summary.
II. BACKGROUND. 2. Influences on the Design of XQuery.
The Need for an XML Query Language.
Basic Principles.
The Query Data Model.
Related Languages and Standards.
XML and Namespaces.
XML Schema.
XPath.
Other Query Languages.
Watershed Issues.
Issue 1: Handling of Untyped Data.
Issue 2: Unknown and Inapplicable Data.
Issue 3: What Is a Type?
Issue 4: Element Constructors.
Issue 5: Static Typing.
Issue 6: Function Resolution.
Issue 7: Error Handling.
Issue 8: Ordering Operators.
Conclusion. 3. XQuery, XPath, and XSLT.
XSLT: A Quick Introduction.
XPath 1.0.
Why Was a New Query Language Needed?
Differing Requirements.
Differing Cultures.
Convergence: XPath 2.0.
XSLT and XQuery Compared.
XML-Based Syntax.
Semantics of Element Construction.
Functions and Named Templates.
FLWOR Expressions.
Template Rules.
Axes.
Type Strictness.
Optimization Techniques.
Where Does the Time Go?
Internal Coding Efficiency.
Pipelining and Lazy Evaluation.
Expression Rewriting.
Using Type Information.
Conclusion.
III. FORMAL UNDERPINNINGS. 4. Static Typing in XQuery.
The Benefits of Static Typing.
An XQuery Programming Scenario.
Debugging.
Validation.
Static Typing.
Getting Started with Types.
XML Schema and XQuery Types.
Values.
Sequence Types.
Schema Import.
Relating Values and Types.
Literals and Operators.
Variables.
Functions.
Conditionals.
Path Expressions.
Predicates.
FLWOR Expressions.
Element Construction.
Validation Context.
Validation Mode.
A Final Example: Grouping.
Conclusions. 5. Introduction to the Formal Semantics.
The Benefits of a Formal Semantics.
Getting Started with the Formal Semantics.
Dynamic Semantics.
Environments.
Matching Values and Types.
Errors.
Static Semantics.
Type Soundness.
Evaluation Order.
Normalization.
Finishing Getting Started.
Learning More about XQuery.
Values and Types.
Matching and Subtyping.
FLWOR Expressions.
Path Expressions.
Implicit Coercions and Function Calls.
Node Identity and Element Constructors.
The Forest through the Trees.
IV. DATABASES. 6. Mapping between XML and Relational Data.
Framing the Problem.
Processing Models.
Application Types.
Sources of XML Data.
LOB or Compose?
Composition Techniques: Common Concepts.
Generation of XML Structure through Hierarchical Joins.
Generation of XML Structure through Hierarchical Grouping.
Composition Techniques: Examples.
Default Mapping.
Extended SQL.
Annotated XML Template.
Additional Mapping Languages.
Shredding.
Creation of the Database.
Adding Extra Information to the Composition.
Inlining and Consolidation.
Support of Full XML.
Schema-Independent Representation.
Implementation Concepts.
Emitting XML Documents.
Querying and Updating XML Documents.
Conclusion. 7. Integrating XQuery and Relational Database Systems.
Getting Started.
Relational Storage of XML: The XML Type.
Logical Models for the XML Datatype.
Physical Models for the XML Datatype.
Encodings and Collations.
Typing an XML Datatype.
Other Aspects of the XML Datatype.
Integrating XQuery and SQL: Querying XML Datatypes.
XQuery Functionality in SQL.
Augmenting the XQuery Static Context.
Providing Access to SQL Data inside XQuery.
Adding XQuery Function Libraries.
A Note on the XQuery Data Modification Language.
Physical Mappings of XQuery.
Issues of Combining SQL, XML Datatype, and XQuery.
Top-Level XQuery.
XML Document (Fragment) Collections.
XML Views over Relational Data.
Conclusion and Issues. 8. A Native XML DBMS.
What Is XML Data?
XML as Text.
XML Data Model.
Interfaces to a Native XML Database.
Interoperability.
Data-Definition Interfaces.
Update Interfaces.
Database Configuration Interfaces.
A Database Command Language.
Collections and Storage.
XQuery Client APIs.
Full-Text Search in a Native XML Database.
Sample Applications.
Invoice Archive.
A Content Management Application.
Conclusion. References.
Glossary.
Index.