XQuery Training Course

Primary tabs

Client Testimonials

XQuery

I was very lucky to have one-to-one training and it gave me a good grounding in the subject as well as exploring some of my real use-cases that were really complex

Melissa Harrison - eLife

Course Code

xquery

Duration Duration

14 hours (usually 2 days including breaks)

Requirements Requirements

Some knowledge of XML basics. Advanced knowledge of XML-related technologies is beneficial but not required.

Overview Overview

This training provides:

  • A high-level overview and quick tour of XQuery
  • Information to write sophisticated queries, without being bogged down by the details of types, namespaces, and schemas
  • Advanced concepts for users who want to take advantage of modularity, namespaces, typing and schemas
  • Guidelines for working with specific types of data, such as numbers, strings, dates, URIs and processing instructions
  • A complete alphabetical reference to the built-in functions and types

Participants will also learn about XQuery's support for filtering, sorting, and grouping data, as well as how to use FLWOR expressions, XPath, and XQuery tools for extracting and combining information. During the training they will find out how to apply all of these tools to a wide variety of data sources, and how to recombine information from multiple sources into a single final output result.

Course Outline Course Outline

XQuery Introduction

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

XQuery Basics

  • The Design of the XQuery Language
  • XQuery in Context
  • Processing Queries
  • The XQuery Data Model
  • Types
  • Namespaces

Expressions

  • Categories of Expressions
  • Keywords and Names
  • Whitespace in Queries
  • Literals
  • Variables
  • Function Calls
  • Comments
  • Evaluation Order
  • Comparison Expressions
  • "if-then-else" Expressions
  • "and/or" Expressions

Paths

  • Path Expressions
  • Predicates
  • Dynamic Paths
  • Input Documents
  • Context

Constructors

  • Including Elements and Attributes from the Input Document
  • Direct Constructors
  • Computed Constructors

Selecting and Joining Using FLWORs

  • Selecting with Path Expressions
  • FLWOR Expressions
  • Quantified Expressions
  • Selecting Distinct Values
  • Joins

Sorting and Grouping

  • Sorting in XQuery
  • Grouping
  • Aggregating Values

Functions

  • Built-in Functions
  • User-Defined Functions

Advanced Queries

  • Copying Input Elements with Modifications
  • Working with Positions and Sequence Numbers
  • Combining Results
  • Using Intermediate XML Documents

XML Namespace

  • XQuery and an Namespace 
  • Namespace Declaration

Types

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

Prolog and Module

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

Using Schemas

  • What Is a Schema?
  • Why Use Schemas with Queries?
  • W3C XML Schema: A Brief Overview
  • In-Scope Schema Definitions
  • Schema Validation and Type Assignment
  • Sequence Types and Schemas

Static Typing

  • What Is 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

  • Query Design:
    • Clarity
    • Modularity
    • Robustness
  • Error Handling
  • Performance

Numbers

  • Constructing and comparing Numeric Values
  • Arithmetic Operations
  • Functions on Numbers

Strings

  • xs:string Type
  • Constructing, comparing and manipulating Strings
  • Substrings, length
  • Concatenating and Splitting Strings
  • Whitespace
  • Internationalization

Regular Expressions

  • The Structure of a Regular Expression
  • Representing Individual Characters
  • Representing Any Character
  • Representing Groups of Characters
  • Character Class Expressions
  • Reluctant Quantifiers
  • Anchors
  • Back-References
  • Using Flags
  • Using Sub-Expressions with Replacement Variables

Date and Time Types

  • Extracting Components of Dates, Times, and Durations
  • Using Arithmetic Operators on Dates, Times, and Durations
  • The Date Component Types

Qualified Names

  • Working with Qualified Names
  • URIs, IDs

Other XML Components

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

XQuery-Related Standards

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

Implementation-Specific Features

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

XQuery vs. SQL

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

XQuery vs. XSLT

  • XQuery and XPath
  • XQuery vs. XSLT

Guaranteed to run even with a single delegate!
Public Classroom Public Classroom
Participants from multiple organisations. Topics usually cannot be customised
From 1263PLN
(60)
Private Classroom Private Classroom
Participants are from one organisation only. No external participants are allowed. Usually customised to a specific group, course topics are agreed between the client and the trainer.
Private Remote Private Remote
The instructor and the participants are in two different physical locations and communicate via the Internet
From 2590PLN
Request quote

The more delegates, the greater the savings per delegate. Table reflects price per delegate and is used for illustration purposes only, actual prices may differ.

Number of Delegates Public Classroom Private Remote
1 1263PLN 2590PLN
2 857PLN 1520PLN
3 721PLN 1163PLN
4 653PLN 985PLN
Cannot find a suitable date? Choose Your Course Date >>
Too expensive? Suggest your price

Related Categories


Upcoming Courses

VenueCourse DateCourse Price [Remote / Classroom]
Szczecin, ul. Małopolska 23Tue, 2016-12-27 09:002590PLN / 1363PLN
Bielsko-Biała, Al. Armii Krajowej 220Thu, 2016-12-29 09:002590PLN / 1563PLN
Kielce, ul. Warszawska 19Thu, 2016-12-29 09:002590PLN / 1563PLN
Wroclaw, ul.Ludwika Rydygiera 2a/22Thu, 2016-12-29 09:002590PLN / 1263PLN
Opole, Wladyslawa Reymonta 29Tue, 2017-01-03 09:002590PLN / 1763PLN

Course Discounts

Course Discounts Newsletter

We respect the privacy of your email address. We will not pass on or sell your address to others.
You can always change your preferences or unsubscribe completely.

Some of our clients