Comprehensive XML Training (XML501)
Course Length: 5 days
This comprehensive XML training class teaches students to create well-formed XML documents, to build sophisticated XML Schema for validating XML documents, and to build eXtensible Stylesheets (XSLs) for transforming XML documents into XHTML, and other XML structures.

Register or Request Training
- Private class for your team
- Live expert instructor
- Online or on‑location
- Customizable agenda
- Proposal turnaround within 1–2 business days
Course Overview
This comprehensive XML training class teaches students to create well-formed XML documents, to build sophisticated XML Schema for validating XML documents, and to build eXtensible Stylesheets (XSLs) for transforming XML documents into XHTML, and other XML structures.
Course Benefits
- Learn the basics of XML - a skill that can be applied across many programming languages.
- Learn to build XML Schema to validate XML documents.
- Learn to write XSLTs to transform XML documents into any arbitrary format.
Delivery Methods
Delivered for your team at your site or online.
Course Outline
- XML Basics
- What is XML?
- XML Benefits
- XML in Practice
- XML Documents
- A Simple XML File
- Editing an XML File (exercise)
- Recognizing XML (exercise)
- DTDs
- Well-formed vs. Valid
- The Purpose of DTDs
- Creating DTDs
- Validating an XML Document with a DTD
- Writing a DTD (exercise)
- XML Schema Basics
- The Purpose of XML Schema
- The Power of XML Schema
- A First Look
- Validating an XML Instance Document
- Simple-Type Elements
- Overview
- Built-in Simple Types
- Building a Simple Schema (exercise)
- User-derived Simple Types
- Restricting Element Content (exercise)
- Specifying Element Type Locally
- Nonatomic Types
- Adding Nonatomic Types (exercise)
- Declaring Global Simple-Type Elements
- Converting Simple-Type Element Declarations from Local to Global (exercise)
- Default Values
- Fixed Values
- Nil Values
- Complex-Type Elements
- Overview
- Content Models
- Complex Model Groups
- Occurrence Constraints
- Adding Complex-Type Elements (exercise)
- Declaring Global Complex-Type Elements
- Converting Complex-Type Elements from Local to Global (exercise)
- Mixed Content
- Defining Complex Types Globally
- Attributes
- Empty Elements
- Adding Attributes to Elements with Complex Content
- Adding Attributes to Elements with Simple Content
- Restricting Attribute Values
- Default and Fixed Values
- Requiring Attributes
- Adding Attributes to Elements (exercise)
- Reusing Schema Components
- Overview
- Groups
- Extending Complex Types
- Tying It All Together - XSD
- Tying it all Together
- Tying It All Together (exercise)
- Annotating XML Schemas
- Overview
- Annotating a Schema
- Annotating an XML Schema (exercise)
- Namespaces
- Overview
- Purpose of Namespaces
- Target Namespaces
- Default Namespaces
- Locally Declared Elements and Attributes
- Qualified Locals
- The XMLSchema-instance Namespace
- Using Multiple Namespaces
- XSLT Basics
- eXtensible Stylesheet Language
- The Transformation Process
- Performing the Transform
- An XSLT Stylesheet
- Whitespace
- Output Types
- Elements and Attributes
- XPath
- XPath in XSLT
- XPath Expression
- Path Expressions
- Node Test
- Axis
- Predicate
- Accessing Nodes (exercise)
- Abbreviated Syntax
- Accessing Nodes with Abbreviated Syntax (exercise)
- Understanding the Enhanced Data Model in XPath 2.0 and Beyond
- XPath Functions
- XPath Operators
- Using XPath Functions and Operators (exercise)
- Flow Control
- Looping in XSLT
- Looping with xsl:for-each (exercise)
- Sorting with XSLT
- Looping and Sorting (exercise)
- Conditions with XSLT
- Conditionals (exercise)
- Templates, Parameters, and Variables
- xsl:apply-templates
- Using xsl:apply-templates (exercise)
- xsl:call-template
- Passing Parameters
- Using xsl:call-template (exercise)
- Removing Content
- Template Modes
- Template Priority
- XSLT Variables
- Multiple Documents
- Including XSLTs
- Importing XSLTs
- Conflict Resolution
- Multiple Input and Output Documents
- Reusing Templates (exercise)
- Grouping and Keys
- Grouping
- Grouping Songs By Artist (exercise)
- Key Basics
- Creating a Simple Key (exercise)
- Improving Performance with Keys
- Improving Performance with Keys (exercise)
- Regular Expressions
- Regular Expression Syntax
- Functions that Use Regular Expressions
- The xsl:analyze-string instruction
- Using xsl:analyze-string (exercise)
- User-defined Functions
- User-Defined Functions
- User-Defined Functions (exercise)
- Advanced XSLT Techniques
- Working with Namespaces
- Working with Numbered Lists
- Outputting Processing Instructions
- Copying Nodes
- Tying It All Together - XSLT
- Transforming the Business Letter (exercise)
Class Materials
Each student receives a comprehensive set of materials, including course notes and all class examples.
Have questions about this course?
We can help with curriculum details, delivery options, pricing, or anything else. Reach out and we’ll point you in the right direction.
