Get in Touch

Course Outline

Introduction to XQuery

  • Understanding XQuery
  • Path Expressions
  • FLWOR Expressions (for, let, where, order by, return)
  • Functions
  • Joins

Fundamentals of XQuery

  • The Architecture of XQuery
  • Contextualizing XQuery
  • Query Processing
  • The XQuery Data Model
  • Data Types
  • Namespaces

Expressions

  • Categories of Expressions
  • Keywords and Identifiers
  • Whitespace Handling
  • Literals
  • Variables
  • Invoking Functions
  • Comments
  • Evaluation Sequence
  • Comparison Operators
  • Conditional "if-then-else" Expressions
  • Logical "and/or" Expressions

Paths

  • Path Expressions
  • Predicates
  • Dynamic Paths
  • Source Documents
  • Context Nodes

Constructors

  • Incorporating Elements and Attributes from Source Documents
  • Literal Result Constructors
  • Computed Constructors

Selection and Joins via FLWORs

  • Selection Using Path Expressions
  • FLWOR Expressions in Detail
  • Quantified Expressions
  • Retrieving Distinct Values
  • Join Operations

Sorting and Grouping

  • Sorting Data in XQuery
  • Grouping Operations
  • Aggregating Values

Functions

  • Built-in Functions
  • User-Defined Functions

Advanced Query Techniques

  • Modifying and Copying Input Elements
  • Manipulating Positions and Sequence Numbers
  • Merging Results
  • Utilizing Intermediate XML Documents

XML Namespace Management

  • Namespaces in XQuery
  • Namespace Declarations

Types and Typing

  • The XQuery Type System
  • Built-in Types
  • Types, Nodes, and Atomic Values
  • Type Checking in XQuery
  • Automatic Type Conversions
  • Sequence Types
  • Constructors and Type Casting

Prolog and Module Structure

  • Query Structure: Prolog and Body
  • Assembling Queries from Multiple Modules
  • Variable Declarations
  • Declaring External Functions

Working with Schemas

  • Understanding Schemas
  • Benefits of Using Schemas with Queries
  • W3C XML Schema: Overview
  • Schema Definitions in Scope
  • Schema Validation and Type Assignment
  • Sequence Types and Schemas

Static Typing

  • Concept of Static Typing
  • The Typeswitch Expression
  • The Treat Expression
  • Type Declarations
  • The zero-or-one, one-or-more, and exactly-one Functions

Principles of Query Design

  • Key Design Principles:
    • Clarity
    • Modularity
    • Robustness
  • Error Handling Strategies
  • Performance Optimization

Numeric Types

  • Constructing and Comparing Numeric Values
  • Arithmetic Operations
  • Numeric Functions

String Handling

  • The xs:string Type
  • Constructing, Comparing, and Manipulating Strings
  • Substrings and Length
  • Concatenation and Splitting Strings
  • Whitespace Management
  • Internationalization Support

Regular Expressions

  • Structure of Regular Expressions
  • Matching Individual Characters
  • Matching Any Character
  • Matching Groups of Characters
  • Character Classes
  • Reluctant Quantifiers
  • Anchors
  • Back-References
  • Using Flags
  • Using Sub-Expressions with Replacement Variables

Date and Time Types

  • Extracting Components of Dates, Times, and Durations
  • Performing Arithmetic on Dates, Times, and Durations
  • Date Component Types

Qualified Names

  • Working with Qualified Names
  • URIs and IDs

Other XML Components

  • Documents
  • Text Nodes
  • Comments
  • PI (Processing Instructions)
  • XML Entities
  • CDATA Sections

XQuery-Related Standards

  • XML Serialization
  • XQueryX
  • XQuery Update Facility
  • Full-Text Search
  • XQJ - XQuery API for Java

Implementation-Specific Features

  • XML Version Support
  • Setting the Query Context
  • Option Declarations and Extension Expressions
  • Serialization Parameters

XQuery vs. SQL

  • XML Data vs. Relational Data
  • SQL Syntax vs. XQuery Syntax
  • Integrating SQL and XQuery

XQuery vs. XSLT

  • XQuery and XPath Relationship

Requirements

Basic understanding of XML is required. While advanced knowledge of XML-related technologies is helpful, it is not mandatory.

 14 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories