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 and History 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. Precedence and Parentheses

    9. Comparison Expressions

    10. Conditional (if-then-else) Expressions

    11. Switch Expressions

    12. Logical (and/or) Expressions

  4. Chapter 4 Navigating XML by Using Paths

    1. Path Expressions

    2. Predicates

    3. A Closer Look at Context

    4. Dynamic Paths

    5. The Simple Map Operator

  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. Working with Positions and Sequence Numbers

    2. Windowing

    3. Copying Input Elements with Modifications

    4. Combining Results

    5. 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

    5. URI-Qualified Names

  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 Prologs, Modules, and Variables

    1. Structure of a Query: Prolog and Body

    2. Assembling Queries from Multiple Modules

    3. Variable Declarations

    4. Private Functions and Variables

    5. Declaring External Functions

  13. Chapter 13 Inputs and Outputs

    1. Types of Input and Output Documents

    2. Accessing Input Documents

    3. Serializing Output

  14. Chapter 14 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

  15. Chapter 15 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

  16. Chapter 16 Writing Better Queries

    1. Query Design Goals

    2. Clarity

    3. Modularity

    4. Robustness

    5. Error Handling

    6. Performance

  17. Chapter 17 Working with Numbers

    1. The Numeric Types

    2. Constructing Numeric Values

    3. Comparing Numeric Values

    4. Arithmetic Operations

    5. Functions on Numbers

    6. Formatting Numbers

  18. Chapter 18 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

  19. Chapter 19 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

  20. Chapter 20 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. Formatting Dates and Times

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

    6. The Date Component Types

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

    1. Working with Qualified Names

    2. Working with URIs

    3. Working with IDs

  22. Chapter 22 Working with Other XML Constructs

    1. XML Comments

    2. Processing Instructions

    3. Documents

    4. Text Nodes

    5. XML Entity and Character References

    6. CDATA Sections

  23. Chapter 23 Function Items and Higher-Order Functions

    1. Why Higher-Order Functions?

    2. Constructing Functions and Calling Them Dynamically

    3. Functions and Sequence Types

    4. Higher-Order Functions

  24. Chapter 24 Maps, Arrays, and JSON

    1. Maps

    2. Arrays

    3. JSON

  25. Chapter 25 Implementation-Specific Features

    1. Conformance

    2. Version Support

    3. Setting the Query Context

    4. The Option Declaration

    5. Extension Expressions

    6. Annotations

  26. Chapter 26 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

  27. Chapter 27 XQuery for XSLT Users

    1. XQuery and XPath

    2. XQuery Versus XSLT

    3. Using XQuery and XSLT Together

    4. XQuery Backward Compatibility with XPath 1.0

  28. Chapter 28 Additional XQuery-Related Standards

    1. XQuery Update Facility

    2. Full-Text Search

    3. XQueryX

    4. RESTXQ

    5. XQuery API for Java (XQJ)

  29. Appendix Built-in Function Reference

  30. Appendix Built-in Types

    1. xs:anyAtomicType

    2. xs:anySimpleType

    3. xs:anyType

    4. xs:anyURI

    5. xs:base64Binary

    6. xs:boolean

    7. xs:byte

    8. xs:date

    9. xs:dateTime

    10. xs:dateTimeStamp

    11. xs:dayTimeDuration

    12. xs:decimal

    13. xs:double

    14. xs:duration

    15. xs:ENTITIES

    16. xs:ENTITY

    17. xs:error

    18. xs:float

    19. xs:gDay

    20. xs:gMonth

    21. xs:gMonthDay

    22. xs:gYear

    23. xs:gYearMonth

    24. xs:hexBinary

    25. xs:ID

    26. xs:IDREF

    27. xs:IDREFS

    28. xs:int

    29. xs:integer

    30. xs:language

    31. xs:long

    32. xs:Name

    33. xs:NCName

    34. xs:negativeInteger

    35. xs:NMTOKEN

    36. xs:NMTOKENS

    37. xs:nonNegativeInteger

    38. xs:nonPositiveInteger

    39. xs:normalizedString

    40. xs:NOTATION

    41. xs:numeric

    42. xs:positiveInteger

    43. xs:QName

    44. xs:short

    45. xs:string

    46. xs:time

    47. xs:token

    48. xs:unsignedByte

    49. xs:unsignedInt

    50. xs:unsignedLong

    51. xs:unsignedShort

    52. xs:untyped

    53. xs:untypedAtomic

    54. xs:yearMonthDuration

  31. Appendix Error Summary

    1. FOAP0001

    2. FOAR0001

    3. FOAR0002

    4. FOAY0001

    5. FOAY0002

    6. FOCA0001

    7. FOCA0002

    8. FOCA0003

    9. FOCA0005

    10. FOCA0006

    11. FOCH0001

    12. FOCH0002

    13. FOCH0003

    14. FOCH0004

    15. FODC0001

    16. FODC0002

    17. FODC0003

    18. FODC0004

    19. FODC0005

    20. FODC0006

    21. FODC0010

    22. FODF1280

    23. FODF1310

    24. FODT0001

    25. FODT0002

    26. FODT0003

    27. FOER0000

    28. FOFD1340

    29. FOFD1350

    30. FOJS0001

    31. FOJS0003

    32. FOJS0004

    33. FOJS0005

    34. FOJS0006

    35. FOJS0007

    36. FONS0004

    37. FONS0005

    38. FOQM0001

    39. FOQM0002

    40. FOQM0003

    41. FOQM0004

    42. FOQM0005

    43. FOQM0006

    44. FORG0001

    45. FORG0002

    46. FORG0003

    47. FORG0004

    48. FORG0005

    49. FORG0006

    50. FORG0008

    51. FORG0009

    52. FORG0010

    53. FORX0001

    54. FORX0002

    55. FORX0003

    56. FORX0004

    57. FOTY0012

    58. FOTY0013

    59. FOTY0014

    60. FOTY0015

    61. FOUT1170

    62. FOUT1190

    63. FOUT1200

    64. FOXT0001

    65. FOXT0002

    66. FOXT0003

    67. FOXT0004

    68. SENR0001

    69. SEPM0004

    70. SEPM0009

    71. SEPM0010

    72. SEPM0016

    73. SEPM0017

    74. SEPM0018

    75. SEPM0019

    76. SERE0003

    77. SERE0005

    78. SERE0006

    79. SERE0008

    80. SERE0012

    81. SERE0014

    82. SERE0015

    83. SERE0020

    84. SERE0021

    85. SERE0022

    86. SERE0023

    87. SESU0007

    88. SESU0011

    89. SESU0013

    90. XPDY0002

    91. XPDY0050

    92. XPDY0130

    93. XPST0001

    94. XPST0003

    95. XPST0005

    96. XPST0008

    97. XPST0017

    98. XPST0051

    99. XPST0080

    100. XPST0081

    101. XPTY0004

    102. XPTY0018

    103. XPTY0019

    104. XPTY0020

    105. XPTY0117

    106. XQDY0025

    107. XQDY0026

    108. XQDY0027

    109. XQDY0041

    110. XQDY0044

    111. XQDY0054

    112. XQDY0061

    113. XQDY0064

    114. XQDY0072

    115. XQDY0074

    116. XQDY0084

    117. XQDY0091

    118. XQDY0092

    119. XQDY0096

    120. XQDY0101

    121. XQDY0102

    122. XQDY0137

    123. XQST0009

    124. XQST0012

    125. XQST0013

    126. XQST0016

    127. XQST0022

    128. XQST0031

    129. XQST0032

    130. XQST0033

    131. XQST0034

    132. XQST0035

    133. XQST0038

    134. XQST0039

    135. XQST0040

    136. XQST0045

    137. XQST0046

    138. XQST0047

    139. XQST0048

    140. XQST0049

    141. XQST0052

    142. XQST0055

    143. XQST0057

    144. XQST0058

    145. XQST0059

    146. XQST0060

    147. XQST0065

    148. XQST0066

    149. XQST0067

    150. XQST0068

    151. XQST0069

    152. XQST0070

    153. XQST0071

    154. XQST0075

    155. XQST0076

    156. XQST0079

    157. XQST0085

    158. XQST0087

    159. XQST0088

    160. XQST0089

    161. XQST0090

    162. XQST0094

    163. XQST0097

    164. XQST0098

    165. XQST0099

    166. XQST0103

    167. XQST0104

    168. XQST0106

    169. XQST0108

    170. XQST0109

    171. XQST0110

    172. XQST0111

    173. XQST0113

    174. XQST0114

    175. XQST0115

    176. XQST0116

    177. XQST0118

    178. XQST0119

    179. XQST0125

    180. XQST0129

    181. XQST0134

    182. XQTY0024

    183. XQTY0030

    184. XQTY0086

    185. XQTY0105