Books & Videos

Table of Contents

  1. Chapter 1 Introduction to XQuery

    1. What Is XQuery?

    2. Easing into XQuery

    3. Path Expressions

    4. FLWORs

    5. Adding XML Elements and Attributes

    6. Functions

    7. Joins

    8. Aggregating and Grouping Values

  2. Chapter 2 XQuery Foundations

    1. The Design of the XQuery Language

    2. XQuery in Context

    3. Processing Queries

    4. The XQuery Data Model

    5. Types

    6. Namespaces

  3. Chapter 3 Expressions: XQuery Building Blocks

    1. Categories of Expressions

    2. Keywords and Names

    3. Whitespace in Queries

    4. Literals

    5. Variables

    6. Function Calls

    7. Comments

    8. Evaluation Order and Parentheses

    9. Comparison Expressions

    10. Conditional (if-then-else) Expressions

    11. Logical (and/or) Expressions

  4. Chapter 4 Navigating Input Documents Using Paths

    1. Path Expressions

    2. Predicates

    3. Dynamic Paths

    4. Input Documents

    5. A Closer Look at Context

  5. Chapter 5 Adding Elements and Attributes to Results

    1. Including Elements and Attributes from the Input Document

    2. Direct Element Constructors

    3. Computed Constructors

  6. Chapter 6 Selecting and Joining Using FLWORs

    1. Selecting with Path Expressions

    2. FLWOR Expressions

    3. Quantified Expressions

    4. Selecting Distinct Values

    5. Joins

  7. Chapter 7 Sorting and Grouping

    1. Sorting in XQuery

    2. Grouping

    3. Aggregating Values

  8. Chapter 8 Functions

    1. Built-in Versus User-Defined Functions

    2. Calling Functions

    3. User-Defined Functions

  9. Chapter 9 Advanced Queries

    1. Copying Input Elements with Modifications

    2. Working with Positions and Sequence Numbers

    3. Combining Results

    4. Using Intermediate XML Documents

  10. Chapter 10 Namespaces and XQuery

    1. XML Namespaces

    2. Namespaces and XQuery

    3. Namespace Declarations in Queries

    4. Controlling Namespace Declarations in Your Results

  11. Chapter 11 A Closer Look at Types

    1. The XQuery Type System

    2. The Built-in Types

    3. Types, Nodes, and Atomic Values

    4. Type Checking in XQuery

    5. Automatic Type Conversions

    6. Sequence Types

    7. Constructors and Casting

  12. Chapter 12 Queries, Prologs, and Modules

    1. Structure of a Query: Prolog and Body

    2. Assembling Queries from Multiple Modules

    3. Variable Declarations

    4. Declaring External Functions

  13. Chapter 13 Using Schemas with XQuery

    1. What Is a Schema?

    2. Why Use Schemas with Queries?

    3. W3C XML Schema: A Brief Overview

    4. In-Scope Schema Definitions

    5. Schema Validation and Type Assignment

    6. Sequence Types and Schemas

  14. Chapter 14 Static Typing

    1. What Is Static Typing?

    2. The Typeswitch Expression

    3. The Treat Expression

    4. Type Declarations

    5. The zero-or-one, one-or-more, and exactly-one Functions

  15. Chapter 15 Principles of Query Design

    1. Query Design Goals

    2. Clarity

    3. Modularity

    4. Robustness

    5. Error Handling

    6. Performance

  16. Chapter 16 Working with Numbers

    1. The Numeric Types

    2. Constructing Numeric Values

    3. Comparing Numeric Values

    4. Arithmetic Operations

    5. Functions on Numbers

  17. Chapter 17 Working with Strings

    1. The xs:string Type

    2. Constructing Strings

    3. Comparing Strings

    4. Substrings

    5. Finding the Length of a String

    6. Concatenating and Splitting Strings

    7. Manipulating Strings

    8. Whitespace and Strings

    9. Internationalization Considerations

  18. Chapter 18 Regular Expressions

    1. The Structure of a Regular Expression

    2. Representing Individual Characters

    3. Representing Any Character

    4. Representing Groups of Characters

    5. Character Class Expressions

    6. Reluctant Quantifiers

    7. Anchors

    8. Back-References

    9. Using Flags

    10. Using Sub-Expressions with Replacement Variables

  19. Chapter 19 Working with Dates, Times, and Durations

    1. The Date and Time Types

    2. The Duration Types

    3. Extracting Components of Dates, Times, and Durations

    4. Using Arithmetic Operators on Dates, Times, and Durations

    5. The Date Component Types

  20. Chapter 20 Working with Qualified Names, URIs, and IDs

    1. Working with Qualified Names

    2. Working with URIs

    3. Working with IDs

  21. Chapter 21 Working with Other XML Components

    1. XML Comments

    2. Processing Instructions

    3. Documents

    4. Text Nodes

    5. XML Entity and Character References

    6. CDATA Sections

  22. Chapter 22 Additional XQuery-Related Standards

    1. Serialization

    2. XQueryX

    3. XQuery Update Facility

    4. Full-Text Search

    5. XQuery API for Java (XQJ)

  23. Chapter 23 Implementation-Specific Features

    1. Conformance

    2. XML Version Support

    3. Setting the Query Context

    4. Option Declarations and Extension Expressions

    5. Specifying Serialization Parameters

  24. Chapter 24 XQuery for SQL Users

    1. Relational Versus XML Data Models

    2. Comparing SQL Syntax with XQuery Syntax

    3. Combining SQL and XQuery

    4. SQL/XML

  25. Chapter 25 XQuery for XSLT Users

    1. XQuery and XPath

    2. XQuery Versus XSLT

    3. Differences Between XQuery 1.0/XPath 2.0 and XPath 1.0

  1. Appendix A Built-in Function Reference

  2. Appendix B Built-in Types

    1. xs:anyAtomicType

    2. xs:anyType

    3. xs:anyURI

    4. xs:base64Binary

    5. xs:boolean

    6. xs:byte

    7. xs:date

    8. xs:dateTime

    9. xs:dayTimeDuration

    10. xs:decimal

    11. xs:double

    12. xs:duration

    13. xs:ENTITIES

    14. xs:ENTITY

    15. xs:float

    16. xs:gDay

    17. xs:gMonth

    18. xs:gMonthDay

    19. xs:gYear

    20. xs:gYearMonth

    21. xs:hexBinary

    22. xs:ID

    23. xs:IDREF

    24. xs:IDREFS

    25. xs:int

    26. xs:integer

    27. xs:language

    28. xs:long

    29. xs:Name

    30. xs:NCName

    31. xs:negativeInteger

    32. xs:NMTOKEN

    33. xs:NMTOKENS

    34. xs:nonNegativeInteger

    35. xs:nonPositiveInteger

    36. xs:normalizedString

    37. xs:NOTATION

    38. xs:positiveInteger

    39. xs:QName

    40. xs:short

    41. xs:string

    42. xs:time

    43. xs:token

    44. xs:unsignedByte

    45. xs:unsignedInt

    46. xs:unsignedLong

    47. xs:unsignedShort

    48. xs:untyped

    49. xs:untypedAtomic

    50. xs:yearMonthDuration

  3. Appendix C Error Summary

    1. FOAR0001

    2. FOAR0002

    3. FOCA0001

    4. FOCA0002

    5. FOCA0003

    6. FOCA0005

    7. FOCA0006

    8. FOCH0001

    9. FOCH0002

    10. FOCH0003

    11. FOCH0004

    12. FODC0001

    13. FODC0002

    14. FODC0003

    15. FODC0004

    16. FODC0005

    17. FODT0001

    18. FODT0002

    19. FODT0003

    20. FOER0000

    21. FONS0004

    22. FONS0005

    23. FORG0001

    24. FORG0002

    25. FORG0003

    26. FORG0004

    27. FORG0005

    28. FORG0006

    29. FORG0008

    30. FORG0009

    31. FORX0001

    32. FORX0002

    33. FORX0003

    34. FORX0004

    35. FOTY0012

    36. SENR0001

    37. SEPM0004

    38. SEPM0009

    39. SEPM0010

    40. SEPM0016

    41. SERE0003

    42. SERE0005

    43. SERE0006

    44. SERE0008

    45. SERE0012

    46. SERE0014

    47. SERE0015

    48. SESU0007

    49. SESU0011

    50. SESU0013

    51. XPDY0002

    52. XPDY0050

    53. XPST0001

    54. XPST0003

    55. XPST0005

    56. XPST0008

    57. XPST0010

    58. XPST0017

    59. XPST0051

    60. XPST0080

    61. XPST0081

    62. XPTY0004

    63. XPTY0018

    64. XPTY0019

    65. XPTY0020

    66. XQDY0025

    67. XQDY0026

    68. XQDY0027

    69. XQDY0041

    70. XQDY0044

    71. XQDY0061

    72. XQDY0064

    73. XQDY0072

    74. XQDY0074

    75. XQDY0084

    76. XQDY0091

    77. XQDY0092

    78. XQST0009

    79. XQST0012

    80. XQST0013

    81. XQST0016

    82. XQST0022

    83. XQST0031

    84. XQST0032

    85. XQST0033

    86. XQST0034

    87. XQST0035

    88. XQST0036

    89. XQST0038

    90. XQST0039

    91. XQST0040

    92. XQST0045

    93. XQST0046

    94. XQST0047

    95. XQST0048

    96. XQST0049

    97. XQST0054

    98. XQST0055

    99. XQST0057

    100. XQST0058

    101. XQST0059

    102. XQST0060

    103. XQST0065

    104. XQST0066

    105. XQST0067

    106. XQST0068

    107. XQST0069

    108. XQST0070

    109. XQST0071

    110. XQST0073

    111. XQST0075

    112. XQST0076

    113. XQST0079

    114. XQST0085

    115. XQST0087

    116. XQST0088

    117. XQST0089

    118. XQST0090

    119. XQST0093

    120. XQTY0024

    121. XQTY0030

    122. XQTY0086

  4. Colophon