Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Introduction to XQuery
- Understanding XQuery
- Path Expressions
- FLWOR Expressions (for, let, where, order by, return)
- Functions
- Joins
Fundamentals of XQuery
- Design Principles of XQuery
- Contextualizing XQuery
- Query Processing Mechanisms
- The XQuery Data Model
- Types
- Namespaces
Expressions
- Classification of Expressions
- Keywords and Identifiers
- Handling Whitespace in Queries
- Literals
- Variables
- Invoking Functions
- Comments
- Evaluation Sequence
- Comparison Expressions
- Conditional 'if-then-else' Expressions
- Logical 'and/or' Expressions
Paths
- Path Expressions
- Predicates
- Dynamic Paths
- Input Documents
- Context Nodes
Constructors
- Incorporating Elements and Attributes from Input Documents
- Direct Constructors
- Computed Constructors
Selection and Joining Using FLWORs
- Selecting Data via Path Expressions
- FLWOR Expressions in Detail
- Quantified Expressions
- Retrieving Distinct Values
- Joins
Sorting and Grouping
- Sorting Data in XQuery
- Grouping Techniques
- Aggregating Values
Functions
- Built-in Functions
- Custom User-Defined Functions
Advanced Query Techniques
- Modifying and Copying Input Elements
- Managing Positions and Sequence Numbers
- Merging Results
- Leveraging Intermediate XML Documents
XML Namespaces
- XQuery in Relation to Namespaces
- Declaring Namespaces
Types
- Overview of the XQuery Type System
- Predefined Built-in Types
- Interplay Between Types, Nodes, and Atomic Values
- Type Checking in XQuery
- Automatic Type Conversion
- Sequence Types
- Constructors and Casting Techniques
Prolog and Module Structure
- Query Anatomy: Prolog and Body Sections
- Assembling Queries from Multiple Modules
- Declaring Variables
- Declaring External Functions
Working with Schemas
- Definition of a Schema
- Benefits of Using Schemas with Queries
- Brief Overview of W3C XML Schema
- Managing In-Scope Schema Definitions
- Schema Validation and Type Assignment
- Sequence Types in Relation to Schemas
Static Typing
- Understanding Static Typing
- The 'typeswitch' Expression
- The 'treat' Expression
- Type Declarations
- Functions for zero-or-one, one-or-more, and exactly-one Constraints
Principles of Query Design
-
Key Aspects of Query Design:
- Clarity
- Modularity
- Robustness
- Error Handling Strategies
- Performance Optimization
Numeric Data Types
- Creating and Comparing Numeric Values
- Arithmetic Operations
- Functions for Numeric Data
String Data Types
- The xs:string Type
- Constructing, Comparing, and Manipulating Strings
- Extracting Substrings and Determining Length
- Concatenating and Splitting Strings
- Managing Whitespace
- Internationalization Support
Regular Expressions
- Structure of Regular Expressions
- Representing Individual Characters
- Matching Any Character
- Representing Groups of Characters
- Character Class Expressions
- Reluctant Quantifiers
- Anchors
- Back-References
- Utilizing Flags
- Using Sub-expressions with Replacement Variables
Date and Time Types
- Extracting Components from Dates, Times, and Durations
- Applying Arithmetic Operators to Dates, Times, and Durations
- Components of Date 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 Versioning
- 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
- Integration of SQL and XQuery
XQuery vs. XSLT
- Relationship Between XQuery and XPath
- XQuery Versus XSLT
Requirements
Basic knowledge of XML is required. While advanced familiarity with XML-related technologies is advantageous, it is not mandatory.
14 Hours
Testimonials (3)
Theory and excises not separated but after every bigger Topic there were exercises to remember theory in practice
Krzysztof - Nordea
Course - XQuery
The pacing was good enough
Daniel - Nordea
Course - 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.