Search our courses

In this Mastering XML for SOA and Web Services training course you will learn fundamentals necessary to use XML in the data-driven applications in SOA and Web Services. 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 options. You will also learn best practices for how to evolve XML syntax and structure over time and how XML related to some of the fundamental technologies used by Web Services.

Mastering XML for SOA and Web Services

Course Code



3 Days

Course Fee




Target Audience

Anyone who needs an introduction to XML, including application developers, Web developers, XML document authors, and webmasters.

Attendee Requirements

Familiarity with Web and data processing concepts. HTML and programming experience is helpful.

HTML skills are taught in the following course:

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

Expand all

Course Description

In this Mastering XML for SOA and Web Services training course you will learn fundamentals necessary to use XML in the data-driven applications in SOA and Web Services. 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 options. You will also learn best practices for how to evolve XML syntax and structure over time and how XML related to some of the fundamental technologies used by Web Services.

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
  23.     Summary


  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.     Data Modeling
  2.     Sample Modeling
  3.     Capturing Information
  4.     Modeling Techniques
  5.     Modeling Properties
  6.     Naming Guidelines
  7.     Naming Rules
  8.     Name Separators
  9.     Vocabulary Differences
  10.     Creating A Schema
  11.     Schema Types
  12.     Available Schema Types
  13.     Schema Data Type Facets
  14.     Data Type Facets
  15.     Databases and Schema Data Types
  16.     Modeling For Reuse


  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.     Historical Context for XML Performance
  2.     Parsing Strategies
  3.     XML Parsing Strategies – DOM
  4.     XML Parsing Strategies – SAX
  5.     XML Parsing Strategies – Pull
  6.     Comparing Parsing Strategies
  7.     Optimizing and Accelerating XML Messaging
  8.     Asynchronous Messaging
  9.     Web 1.0 vs Web 2.0
  10.     Asynchronous Performance
  11.     Performance Best Practices
  12.     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.     WSDL Overview
  2.     WSDL Document Tags
  3.     WSDL Namespaces
  4.     <definitions>
  5.     <import>
  6.     <types>
  7.     <message>
  8.     <portType>
  9.     <operation>
  10.     One-way <operation>
  11.     Request-Response <operation>
  12.     Solicit-Response <operation>
  13.     Notification <operation>
  14.     Modeling Simple Operation
  15.     Modeling Complex Operation
  16.     Modeling Complex Message
  17.     <binding>
  18.     More on <binding>
  19.     <binding> Syntax
  20.     SOAP Binding Example
  21.     <service> and <port>
  22.     More on <port>
  23.     WSDL SOAP Binding Extensions
  24.     soap:binding
  25.     soap:operation
  26.     RPC or Document Style?
  27.     WSDL API for Java
  28.     Summary


  1.     SOAP Overview
  2.     SOAP in Protocol Stack
  3.     SOAP Document Components
  4.     Example SOAP Request Document
  5.     Example SOAP Response Document
  6.     The <Envelope> Element
  7.     The <Header> Element
  8.     The <Body> Element
  9.     SOAP Communication Style
  10.     Communication Style Example
  11.     Setting the Style in WSDL
  12.     RPC/Encoded Style
  13.     RPC/Literal Style
  14.     Document/Literal Style
  15.     Document/Literal Wrapped Style
  16.     Summary
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

“Given the breadth of the course, I think it was very well structured and organised, I got a lot
out of it.”     


JVM Tuning - Bespoke Course

Live Online - May 2020


“This was an excellent course and was lots of fun to attend. Instructor started with basic intro to
containerization, then explained Kubernetes and the different components (Container
engine, orchestrator, control plane) which all made sense because of the containerization
intro. The parts of the course layered on top of one another to give a good understanding of


Kubernetes for App Developers - GTLFKAD

Live Online - Nov 2020


“Really enjoyed the course, it has been an eye opener on opportunities to steer how we approach the cloud from a IT Service Management perspective.”


Professional Cloud Service Manager - GTC13

Live Online May 2020


''Fantastic course, looking forward to applying this in my work and home life. Excellent, practical approach, very motivational. I think the entire company should attend training.''


Being Agile in Business - GTBAB

Sept 2019

“The instructor was great! I didn't expect such a good level of teaching with what some may
consider a dry subject. This was simply great!”  


Linux LPIC-1 - GTU8

Live Online - August 2020


"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

31 May - 4 June 2021

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


22 - 25 June 2021 

Live Online

This Linux certification training course teaches in-depth skills in the basics of Linux Administration.

Learn More


14 - 15 June 2021

Live Online

The purpose of the certification and its associated course is to impart, test and validate knowledge of DevOps basic vocabulary, principles and practices.

Learn More


May 18 – 20 2021

Live Online        

A comprehensive introduction to the core syntax and functions provided by Python, including coverage of its object-oriented and functional programming features.

Learn More


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

Subscribe to our Newsletter