Get in Touch

Course Outline

Introduction to XQuery

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

Fundamentals of XQuery

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

Expressions

  • Categories of Expressions
  • Keywords and Identifiers
  • Whitespace Handling in Queries
  • Literals
  • Variables
  • Function Invocations
  • Comments
  • Evaluation Sequence
  • Comparison Expressions
  • "if-then-else" Constructs
  • "and/or" Logical Operators

Path Traversal

  • Path Expressions
  • Predicates
  • Dynamic Pathing
  • Input Documents
  • Contextual Navigation

Construction Techniques

  • Incorporating Elements and Attributes from Source Documents
  • Direct Construction
  • Computed Construction

Selection and Joining via FLWORs

  • Selection Using Path Expressions
  • FLWOR Expressions
  • Quantified Expressions
  • Extracting Distinct Values
  • Joins

Sorting and Grouping

  • Sorting Mechanisms in XQuery
  • Grouping Data
  • Aggregating Values

Functions

  • Built-in Functions
  • User-Defined Functions

Advanced Querying Strategies

  • Replicating Input Elements with Modifications
  • Managing Positions and Sequence Numbers
  • Merging Results
  • Utilizing Intermediate XML Documents

XML Namespace Management

  • XQuery Interaction with Namespaces
  • Namespace Declaration Procedures

Typing Systems

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

Prolog and Module Structure

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

Schema Utilization

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

Static Typing Concepts

  • Defining Static Typing
  • The Typeswitch Expression
  • The Treat Expression
  • Type Declarations
  • Functions for zero-or-one, one-or-more, and exactly-one Constraints

Query Design Principles

  • Core Design Goals:
    • Clarity
    • Modularity
    • Robustness
  • Error Handling Strategies
  • Performance Optimization

Numeric Data Handling

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

String Management

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

Regular Expressions

  • Structure of Regular Expressions
  • Representing Individual Characters
  • Representing Any Character
  • Representing Character Groups
  • Character Class Expressions
  • Reluctant Quantifiers
  • Anchors
  • Back-References
  • Utilizing Flags
  • Employing Sub-Expressions with Replacement Variables

Date and Time Data Types

  • Extracting Components of Dates, Times, and Durations
  • Applying Arithmetic Operators to 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 Entity
  • CDATA Sections

XQuery-Related Standards

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

Implementation-Specific Features

  • XML Version Compatibility
  • Configuring the Query Context
  • Option Declarations and Extension Expressions
  • Serialization Parameters

XQuery vs. SQL

  • XML Data Compared to Relational Data
  • SQL Syntax Versus XQuery Syntax
  • Interplay Between SQL and XQuery

XQuery vs. XSLT

  • XQuery and XPath Integration
  • XQuery Compared to XSLT

Requirements

A foundational understanding of XML is required. While advanced knowledge of XML-related technologies is advantageous, it is not mandatory.

 14 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories