XQuery Training Course

Primary tabs

Course Language

This course is delivered in Polish or English.

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
(90)
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.
From 1263PLN
Request quote
Private Remote Private Remote
The instructor and the participants are in two different physical locations and communicate via the Internet
From 2590PLN
Request quote
SelfStudy SelfStudy
Self-study courses allow you to learn at your own pace on your own time. There is no live instructor involved. The participants use recorded video, quizzes and reading at their own convenience.
Price not set yet
Register Interest

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 Classroom Private Remote
1 1263PLN 1263PLN 2590PLN
2 957PLN 857PLN 1520PLN
3 854PLN 721PLN 1163PLN
4 803PLN 653PLN 985PLN
Cannot find a suitable date? Choose Your Course Date >>
Too expensive? Suggest your price

Related Categories


Course Discounts

Course Venue Course Date Course Price [Remote/Classroom]
Programming in C# 5.0 with Visual Studio 2012 Poznan, Garbary Mon, 2016-05-30 09:00 2685PLN / 1822PLN
Introduction to Machine Learning Wrocław, ul.Ludwika Rydygiera 2a/22 Mon, 2016-05-30 09:00 2730PLN / 1940PLN
Adobe Captivate Kielce Tue, 2016-05-31 09:00 1318PLN / 1127PLN
Excel and VBA Programming for Audit and Finance Professionals Szczecin Tue, 2016-05-31 09:00 1913PLN / 1513PLN
Programming in WPF 4.5 Warszawa, ul. Złota 3/11 Tue, 2016-05-31 09:00 2359PLN / 1355PLN
SQL Fundamentals Warszawa, ul. Złota 3/11 Wed, 2016-06-01 09:00 1358PLN / 853PLN
MS Excel - poziom średniozaawansowany Łódź, ul. Tatrzańska 11 Wed, 2016-06-01 09:00 1044PLN / 840PLN
SQL language in MSSQL Toruń, ul. Żeglarska 10/14 Wed, 2016-06-01 09:00 1568PLN / 1198PLN
Bezpieczeństwo aplikacji internetowych Katowice Wed, 2016-06-01 09:30 3606PLN / 2531PLN
Test Automation with Selenium Kraków Mon, 2016-06-06 09:00 3200PLN / 2433PLN
Test Automation with Selenium Katowice Tue, 2016-06-07 09:30 3431PLN / 2469PLN
MS Excel - poziom średniozaawansowany Katowice Wed, 2016-06-08 09:00 700PLN / 771PLN
Programming in C++ Olsztyn, ul. Kajki 3/1 Mon, 2016-06-13 09:00 2936PLN / 2395PLN
Container management with Docker Trójmiasto Tue, 2016-06-14 09:00 4360PLN / 2774PLN
Excel Advanced Katowice Mon, 2016-06-20 09:00 775PLN / 933PLN
Test Automation with Selenium Warszawa, ul. Złota 3/11 Mon, 2016-06-20 09:00 3431PLN / 2327PLN
PostgreSQL Administration and Development Lublin Mon, 2016-06-20 09:30 4025PLN / 3134PLN
Introduction to R Warszawa, ul. Złota 3/11 Tue, 2016-06-21 09:00 3058PLN / 2123PLN
Creating and managing Web sites Wrocław, ul.Ludwika Rydygiera 2a/22 Mon, 2016-06-27 09:00 3410PLN / 2555PLN
Programming in C Gdynia Mon, 2016-06-27 09:00 1590PLN / 1143PLN
Distributed Messaging with Apache Kafka Katowice Mon, 2016-06-27 09:30 4998PLN / 3288PLN
Design Patterns in C# Wrocław, ul.Ludwika Rydygiera 2a/22 Wed, 2016-06-29 09:00 1865PLN / 1392PLN
Visual Basic for Applications (VBA) for Analysts Poznan, Garbary Mon, 2016-07-04 09:00 1912PLN / 1278PLN
Debian Administration Poznan, Garbary Mon, 2016-07-04 09:00 3157PLN / 2083PLN
A Practical Guide to Successful Pricing Strategies Poznan, Garbary Wed, 2016-07-06 09:00 1427PLN / 1093PLN
Excel and VBA Programming for Audit and Finance Professionals Warszawa, ul. Złota 3/11 Mon, 2016-07-11 09:00 1913PLN / 1441PLN
Machine Learning Fundamentals with R Warszawa, ul. Złota 3/11 Mon, 2016-07-18 09:00 2523PLN / 1828PLN
Building Web Apps using the MEAN stack Szczecin Mon, 2016-07-18 09:00 5538PLN / 3351PLN
Microsoft Access - download the data Poznan, Garbary Wed, 2016-07-20 09:00 1117PLN / 856PLN
Python Programming Warszawa, ul. Złota 3/11 Mon, 2016-08-01 09:00 5790PLN / 3753PLN
Programming in WPF 4.5 Warszawa, ul. Złota 3/11 Mon, 2016-09-05 09:00 2359PLN / 1355PLN
BPMN 2.0 for Business Analysts Wrocław, ul.Ludwika Rydygiera 2a/22 Tue, 2016-09-27 09:00 3110PLN / 2337PLN

Upcoming Courses

VenueCourse DateCourse Price [Remote/Classroom]
Poznan, GarbaryMon, 2016-06-13 09:00985PLN / 687PLN
Wrocław, ul.Ludwika Rydygiera 2a/22Mon, 2016-06-13 09:00985PLN / 687PLN
OpoleMon, 2016-06-13 09:00985PLN / 849PLN
KielceTue, 2016-06-14 09:00985PLN / 791PLN
Warszawa, ul. Złota 3/11Tue, 2016-06-14 09:00985PLN / 687PLN

Some of our clients