XQuery Training Course

Course CodeCourse 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 OutlineCourse 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

TestimonialsTestimonials

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

Bookings, Prices and EnquiriesBookings, Prices and Enquiries

Guaranteed to run even with a single delegate!
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
From 2590PLN
Private Remote
The instructor and the participants are in two different physical locations and communicate via the Internet. More Information

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 Private Remote
1 2590PLN
2 1520PLN
3 1163PLN
4 985PLN
Public Classroom
From 1263PLN
(70)
Public Classroom
Participants from multiple organisations. Topics usually cannot be customised

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
1 1263PLN
2 857PLN
3 721PLN
4 653PLN
Cannot find a suitable date? Choose Your Course Date >>
Too expensive? Suggest your price

Upcoming Courses

Course Discounts

Course Venue Course Date Course Price [Remote / Classroom]
BPMN 2.0 for Business Analysts Katowice ul. Opolska 22 Mon, 2018-01-22 09:00 5940PLN / 3030PLN
Adobe Creative Cloud - Montaż video Katowice ul. Opolska 22 Mon, 2018-01-29 09:00 3861PLN / 2455PLN
DTP (InDesign, Photoshop, Illustrator, Acrobat) Kielce, ul. Warszawska 19 Mon, 2018-01-29 09:00 5940PLN / 2980PLN
Angular 4 - dobre praktyki Katowice ul. Opolska 22 Tue, 2018-01-30 09:00 7920PLN / 3450PLN
Psychology of interpersonal cooperation Wrocław, ul.Ludwika Rydygiera 2a/22 Tue, 2018-01-30 09:00 5148PLN / 1430PLN
Effective interpersonal communication with elements of assertiveness Warszawa, ul. Złota 3/11 Wed, 2018-01-31 09:00 5148PLN / 1430PLN
Agile Software Testing Zielona Góra, ul. Reja 6 Thu, 2018-02-01 09:00 4257PLN / 2629PLN
PostgreSQL Administration and Development Katowice ul. Opolska 22 Mon, 2018-02-05 09:00 7821PLN / 4007PLN
DTP (InDesign, Photoshop, Illustrator, Acrobat) Opole, Wladyslawa Reymonta 29 Mon, 2018-02-05 09:00 5940PLN / 4230PLN
Międzynarodowe Standardy Rachunkowości i Sprawozdawczości Finansowej (MSR, MSSF) (IAS, IFRS) Poznan, Garbary 100/63 Fri, 2018-02-09 09:00 3950PLN / 1188PLN
Creating and managing Web sites Katowice ul. Opolska 22 Mon, 2018-02-12 09:00 5841PLN / 3048PLN
Javascript Basics Poznan, Garbary 100/63 Tue, 2018-02-13 09:00 4455PLN / 1885PLN
Social Media - facebook, twitter, blog, youtube, google+ Rzeszów, Plac Wolności 13 Tue, 2018-02-13 09:00 1881PLN / 952PLN
SQL in Microsoft Access Kraków, ul. Rzemieślnicza 1 Thu, 2018-02-15 09:00 10266PLN / 3911PLN
Effective interpersonal communication with elements of assertiveness Gdynia, ul. Ejsmonda 2 Mon, 2018-02-19 09:00 5148PLN / 1530PLN
DTP (InDesign, Photoshop, Illustrator, Acrobat) Katowice ul. Opolska 22 Mon, 2018-03-05 09:00 5940PLN / 3730PLN
Visual Basic for Applications (VBA) in Excel - Introduction to programming Katowice ul. Opolska 22 Mon, 2018-03-05 09:00 3564PLN / 2291PLN
Certified Agile Tester Katowice ul. Opolska 22 Mon, 2018-04-02 09:00 8910PLN / 4720PLN
Perfect tester Szczecin, ul. Sienna 9 Wed, 2018-04-04 09:00 5920PLN / 2294PLN
Quality Assurance and Continuous Integration Katowice ul. Opolska 22 Thu, 2018-04-12 09:00 2673PLN / 2037PLN
Oracle 12c – wprowadzenie do języka SQL Łódź, ul. Tatrzańska 11 Tue, 2018-06-12 09:00 3960PLN / 1920PLN

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