Search our courses

In this XML Fundamentals training course you will learn fundamentals necessary to use XML on the Web or in data processing applications. Through lecture and hands-on lab exercises, you will learn the essentials of data interoperability using XML, write well-formed XML documents, enforce document validity, use XSLT and stylesheets to transform XML documents, and get an introduction to XML programming APIs in languages such as Java and Perl.

XML Fundamentals

Course Code



3 Days

Course Fee




Target Audience

This XML Fundamentals training course is suitable for anyone who needs an introduction to XML, including application developers, Web developers, XML document authors, and webmasters.

Attendee Requirements

Those who wish to attend this XML Fundamentals training course require familiarity with Web and data processing concepts. HTML and programming experience is helpful. HTML skills are taught in the following courses:

If you have any questions or doubts as to whether you meet the pre-requisites for this course, or indeed are wondering which course best suits you, please Contact Us to discuss your suitability for course attendance.

Expand all

Course Description

In this XML Fundamentals training course you will learn fundamentals necessary to use XML on the Web or in data processing applications. Through lecture and hands-on lab exercises, you will learn the essentials of data interoperability using XML, write well-formed XML documents, enforce document validity, use XSLT and stylesheets to transform XML documents, and get an introduction to XML programming APIs in languages such as Java and Perl.

Course Outline


  1.     Unstructured Text Document
  2.     An Employee Document
  3.     What is XML ?
  4.     Why Study XML?
  5.     Data and Document Structure
  6.     Elements
  7.     First XML
  8.     Another Example of XML
  9.     Well-formed vs. Valid XML Document
  10.     Presentation Style
  11.     Goals of XML
  12.     Usage of XML
  13.     Summary


  1.     XML Elements
  2.     Empty and Non-Empty Elements
  3.     XML Naming Rules
  4.     Rules for XML Tags
  5.     Nesting and Hierarchy of XML Elements
  6.     Simple XML
  7.     Sections of an XML Document
  8.     XML Constructs…
  9.     XML Declaration
  10.     Processing Instructions
  11.     Is the XML Declaration a Processing Instruction ?
  12.     XML Elements
  13.     Tag Attributes
  14.     Comment Tags
  15.     CDATA Tags
  16.     Entity References
  17.     Character References
  18.     Namespaces
  19.     Namespace URLS
  20.     Namespaces
  21.     Using XML Namespaces
  22.     Working with Binary Data
  23.     Encoding Binary Data
  24.     Specifying Content Type of Binary Data
  25.     Summary


  1.      What is XML Schema ?
  2.     Goals of Schema
  3.     Converting DTDs to Schema
  4.     Recall: Namespaces
  5.     The equivalent schema
  6.     Sample instance document
  7.     Documents Needed
  8.     XML Schema Namespaces
  9.     Link Documents to Schemas
  10.     Inline element declarations
  11.     XSchema Data Types
  12.     XSchema Type Definitions
  13.     XSchema Simple Data Types
  14.     Primitive Data Types
  15.     Simple Types
  16.     Facet – Restrictions on Element Content
  17.     Using the Facet
  18.     More Samples
  19.     Define Simple Element Type
  20.     Element Declaration
  21.     Element Occurrence Indicators
  22.     Complex Type
  23.     Attribute Declaration
  24.     Attribute Declarations
  25.     Occurrence of Attributes
  26.     Value Constraints on Attributes
  27.     Sequence Element
  28.     Element Choices
  29.     Express any order
  30.     Annotations


  1.     Xpath
  2.     Tree Structure
  3.     Example
  4.     XPath Examples
  5.     XPath Core Definitions
  6.     Wildcards and Multiple Matches
  7.     Other Node Operators
  8.     Path Operators
  9.     Predicates
  10.     Predicate Relationships and Attributes
  11.     More Predicate Examples
  12.     Predicates Chaining and Indexing
  13.     XPath Expressions
  14.     XPath Numbers
  15.     XPath Strings
  16.     XPath Booleans
  17.     XPath Functions
  18.     String Functions
  19.     Boolean Functions
  20.     Number Functions
  21.     XSLT and XPath
  22.     XPath and Content Based Routing


  1.     What Is XQuery?
  2.     XQuery Uses
  3.     XQuery Properties
  4.     XPath and XSLT
  5.     XQuery Flow
  6.     XQuery Participants
  7.     Sample XQuery Source
  8.     Simple Example Queries
  9.     FLWOR Queries
  10.     F-WOR Explained
  11.     L Explained
  12.     Wrapping Output
  13.     Converting Output
  14.     Inline Output
  15.     Data Rendering
  16.     Functions
  17.     Joins
  18.     Join Example
  19.     Summary


  1.     Formatting XML Documents
  2.     XSL
  3.     Three Parts of XSL
  4.     XSLT – XSL Transformation
  5.     <xsl:stylesheet>
  6.     <?xml-stylesheet>
  7.     <xsl:template>
  8.     <xsl:template>
  9.     <xsl:value-of>
  10.     Navigating with XPath
  11.     Navigating With XPath
  12.     <xsl:for-each>
  13.     <xsl:if>
  14.     XPath Boolean expressions
  15.     XPath Boolean Expressions
  16.     <xsl:choose>
  17.     <xsl:apply-templates>
  18.     <xsl:sort>
  19.     The Music Collection Example – Introduction
  20.     The Music Collection Example – Sample XML file
  21.     The Music Collection Example – Retrieving owner details
  22.     The Music Collection Example – Retrieving the core data
  23.     The Music Collection Example – Current Output
  24.     The Music Collection Example – Retrieving canadianContent data
  25.     The Music Collection Example – Current Output
  26.     The Music Collection Example – Retrieving media data
  27.     The Music Collection Example – Final Output
  28.     Formatting XML Documents


  1.     Topics
  2.     Needs for Using XML in Applications
  3.     Basic Functionalities Required for XML Applications
  4.     XML Parser
  5.     Obtaining a Parser
  6.     SAX
  7.     How it Works
  8.     DOM
  9.     DOM Parsing
  10.     Applying XML Across System Boundaries
  11.     Using XML on the Client Side
  12.     Using XML on the Server Side
  13.     Using XML in Non-Networked Systems
  14.     Using XML in RDBMS
  15.     The J2EE Blueprint
  16.     A Typical Architecture Using XML in J2EE Applications
  17.     Using XML in Applets
  18.     Using XML Parser in Applets
  19.     Using XML in Servlets
  20.     Creating XML Middleware for Accessing Databases
  21.     Transforming RDBMS Data to XML Data
  22.     Transforming XML Data to RDBMS Data
  23.     Storing XML Data in DB2


  1.     Evolving Schema
  2.     Managing XML Schema
  3.     Management Techniques
  4.     Internal Techniques
  5.     Schema Version Attribute
  6.     Adding An Attribute
  7.     Namespace Change
  8.     File-Based Mechanisms
  9.     External
  10.     Which To Use?
  11.     Summary


  1.     A Conceptual Look at Services
  2.     Defining Services
  3.     Service Communication Analogy
  4.     Three Key Service Questions
  5.     Connecting the Dots
  6.     SOA: Runtime Implementation
  7.     What Is a Web Service?
  8.     Enterprise Assets as Services
  9.     Typical Development Workflow
  10.     Advantages of Web Services
  11.     Web Service Business Models
  12.     Example: Internal System Integration
  13.     Example: Business Process Externalization
  14.     Web Services Standards
  15.     Binding via SOAP
  16.     SOAP in Protocol Stack
  17.     SOAP Structure
  18.     SOAP Message Architecture
  19.     Applying SOAP
  20.     Interface via WSDL
  21.     WSDL Structure
  22.     Applying WSDL
  23.     Locating a Service
  24.     UDDI Overview
  25.     UDDI Terminology
  26.     UDDI Structure
  27.     Applying UDDI
  28.     WS-I Overview
  29.     WS-I Deliverables
  30.     Summary


  1.     Cascading Style Sheets
  2.     The xml-stylesheet processing instruction
  3.     CSS details
  4.     An example
  5.     Common CSS tags – display
  6.     Common CSS tags – Colors and Backgrounds
  7.     Common CSS tags – Fonts


  1.     DTD
  2.     DOCTYPE Declaration
  3.     Types of DTDs
  4.     DOCTYPE
  5.     Internal DTDs
  6.     External DTDs
  7.     Basic DTD Markup
  8.     Element Type Declaration
  9.     Elements Declarations
  10.     Declaring Children
  11.     Declaring Multiple Children
  12.     Declaring Optional Childrens
  13.     Declaring Zero or More Children
  14.     Declaring One or More Children
  15.     Combination of Children
  16.     Putting It All Together – DTD
  17.     Putting It All Together – XML
  18.     Mixed Content
  19.     Mixed Content – An Example
  20.     Attributes Declaration
  21.     Attribute Default Values
  22.     Attribute Types
  23.     String Attribute Type
  24.     Tokenized Attribute Type
  25.     Enumerated Attribute Type
  26.     ENTITY Declaration
  27.     Parsed General Entities
  28.     Parsed Parameter Entities
Learning Path
Ways to Attend
  • Attend a public course, if there is one available. Please check our Schedule, or Register Your Interest in joining a course in your area.
  • Private onsite Team training also available, please Contact Us to discuss. We can customise this course to suit your business requirements.

Private Team Training is available for this course

We deliver this course either on or off-site in various regions around the world, and can customise your delivery to suit your exact business needs. Talk to us about how we can fine-tune a course to suit your team's current skillset and ultimate learning objectives.

Private Team Training | Contact us

Technical ICT learning & mentoring services

Private Team Training

Our instructors are specialist consultants with vast real world experience and expertise allowing them to design and deliver client-focused courses for your organisation.

Learn more about our Private Team Training

What Our Clients Say

"Absolutely fantastic training. Thoroughly enjoyed it thanks to our highly enthusiastic tutor.  It wouldn't be an understatement to say that it was the best professional training that I have ever received."


Customised Linux with Networking

Live Online -  February 2022


"The course content was very good. When needed, the Instructor was extending the content of the course with hints and tips to help us understand different topics that were covered in the course."


Kubernetes Administration Certification - GTLFK

Live Online June 2021




“The course was held at the highest possible standards, the instructor was excellent, well prepared, well informed, and clearly an SME. Top marks.”


Professional Cloud Service Manager - GTC13

Live Online December 2021


“Very engaging and practical course so hope to be able to put the learning into practice.”


Being Agile in Business - GTBAB

Live Online September 2021


“Great instructor, who encouraged active participation. The breakout groups and exercises kept the group engaged and the content relevant to our own products”.


Site Reliability Engineering Foundation - GTDSRE

Live Online January 2022




"Intelligence is the ability to avoid doing work, yet
getting the work done"

Linus Torvalds, creator of Linux and GIT

Technical ICT learning & mentoring services

About GuruTeam

GuruTeam is a high-level ICT Learning, Mentoring and Consultancy services company. We specialise in delivering instructor-led on and off-site training in Blockchain, Linux, Cloud, Big Data, DevOps, Kubernetes, Agile, Software & Web Development technologies. View our Testimonials

Download our eBrochure
Our Accreditation Partners


Upcoming Courses

Kubernetes Administration

11th - 24th June 2024

18th - 21st June 2024

 Live Online


This Kubernetes Administration Certification training course is suitable for anyone who wants to learn the skills necessary to build and administer a Kubernetes cluster

Learn More


11th - 14th June 2024

18th - 21st June 2024

 Live Online

This course will help you understand what Rust applications look like, how to write Rust applications properly, and how to get the most out of the language and its libraries.

Learn More

Introduction to Python 3 

7th - 9th May 2024

4th - 6th June 2024


Live Online

This Introduction to Python 3 training course is designed for anyone who needs to learn how to write programs in Python or support/modify existing programs.


Learn More


11th - 14th June 2024

18th - 21st June 2024


Live Online        


This Go language programming training course will help you understand how Go works, and immediately be more productive. If you are building a team using Go, this will be a great opportunity to get your team on the same page and speaking the same language. Innovative lab exercises and code samples are provided to reinforce skills and quickly master the topics.

Learn More


Stay up to date, receive updates on scheduled dates, new courses, offers, and events.

Subscribe to our Newsletter