Topics
 
  • Getting Started with XML
  • XML Syntax
  • XML Schemas
  • XPath
  • XQuery
  • Transforming XML Using XSLT
  • XML in Applications
  • Modeling Data with XML Schema
  • Impact of Schema Changes
  • XML Performance
  • Web Services, WSDL, SOAP
 
Audience
  Anyone who needs an introduction to XML, including application developers, Web developers, XML document authors, and webmasters.
 
Hands on Labs
  This course contains hands on labs to reinforce the lecture topics. The labs use the Eclipse "Web Tools Project" although the XML tools available in any other Eclipse-based development tool, like Rational Application Developer, MyEclipse, or BEA Workshop would be the same. The XML tools in these other products are the same ones inherited from Eclipse. Students who take this course will be able to apply their knowledge of the Eclipse XML tools even if they use one of these other tools.
 
Prerequisites
  Familiarity with Web and data processing concepts. HTML and programming experience is helpful.
 
Duration
  Three days.
Download Sample Labs Lab Setup Guide

Outline for Mastering XML for SOA and Web Services Training

Chapter 1. Getting Started with XML

  • Unstructured Text Document
  • An Employee Document
  • What is XML ?
  • Why Study XML?
  • Data and Document Structure
  • Elements
  • First XML
  • Another Example of XML
  • Well-formed vs. Valid XML Document
  • Presentation Style
  • Goals of XML
  • Usage of XML
  • Summary

Chapter 2. XML Syntax

  • Empty and Non-Empty Elements
  • XML Naming Rules
  • Rules for XML Tags
  • Nesting and Hierarchy of XML Elements
  • Simple XML
  • Sections of an XML Document
  • XML Constructs…
  • XML Declaration
  • Processing Instructions
  • Is the XML Declaration a Processing Instruction ?
  • XML Elements
  • Tag Attributes
  • Comment Tags
  • CDATA Tags
  • Entity References
  • Character References
  • Namespaces
  • Namespace URLs
  • Namespaces
  • Using XML Namespaces
  • Working with Binary Data
  • Encoding Binary Data
  • Specifying Content Type of Binary Data
  • Summary

Chapter 3. Basic XML Schemas

  • What is XML Schema ?
  • Goals of Schema
  • Converting DTDs to Schema
  • Recall: Namespaces
  • The equivalent schema
  • Sample instance document
  • Documents Needed
  • XML Schema Namespaces
  • Link Documents to Schemas
  • Inline element declarations
  • Schema Data Types
  • Schema Type Definitions
  • Schema Simple Data Types
  • Primitive Data Types
  • Simple Types
  • Facet – Restrictions on Element Content
  • Using the Facet
  • More Samples
  • Define Simple Element Type
  • Element Declaration
  • Element Occurrence Indicators
  • Complex Type
  • Attribute Declaration
  • Attribute Declarations
  • Occurrence of Attributes
  • Value Constraints on Attributes
  • Sequence Element
  • Element Choices
  • Express any order
  • Annotations

Chapter 4. XPath Fundamentals

  • Xpath
  • Tree Structure
  • Example
  • XPath Examples
  • XPath Core Definitions
  • Wildcards and Multiple Matches
  • Other Node Operators
  • Path Operators
  • Predicates
  • Predicate Relationships and Attributes
  • More Predicate Examples
  • Predicates Chaining and Indexing
  • XPath Expressions
  • XPath Numbers
  • XPath Strings
  • XPath Booleans
  • XPath Functions
  • String Functions
  • Boolean Functions
  • Number Functions
  • XSLT and XPath
  • XPath and Content Based Routing
  • Summary

Chapter 5. Introduction to XQuery

  • What Is XQuery?
  • XQuery Uses
  • XQuery Properties
  • XPath and XSLT
  • XQuery Flow
  • XQuery Participants
  • Sample XQuery Source
  • Simple Example Queries
  • FLWOR Queries
  • F-WOR Explained
  • L Explained
  • Wrapping Output
  • Converting Output
  • Inline Output
  • Data Rendering
  • Functions
  • Joins
  • Join Example
  • Summary

Chapter 6. Introduction to XSL

  • Formatting XML Documents
  • XSL
  • Three Parts of XSL
  • XSLT – XSL Transformation
  • <xsl:stylesheet>
  • <?xml-stylesheet>
  • <xsl:template>
  • <xsl:template>
  • <xsl:value-of>
  • Navigating with XPath
  • Navigating With XPath
  • <xsl:for-each>
  • <xsl:if>
  • XPath Boolean expressions
  • XPath Boolean Expressions
  • <xsl:choose>
  • <xsl:apply-templates>
  • <xsl:sort>
  • The Music Collection Example – Introduction
  • The Music Collection Example – Sample XML file
  • The Music Collection Example – Retrieving owner details
  • The Music Collection Example – Retrieving the core data
  • The Music Collection Example – Current Output
  • The Music Collection Example – Retrieving canadianContent data
  • The Music Collection Example – Current Output
  • The Music Collection Example – Retrieving media data
  • The Music Collection Example – Final Output
  • Formatting XML Documents

Chapter 7. XML in Applications

  • Topics
  • Needs for Using XML in Applications
  • Basic Functionalities Required for XML Applications
  • XML Parser
  • SAX
  • How it Works
  • DOM
  • DOM Parsing
  • Applying XML Across System Boundaries
  • Using XML on the Client Side
  • Using XML on the Server Side
  • Using XML in Non-Networked Systems
  • Using XML in RDBMS
  • J2EE Patterns
  • Using XML in Servlets
  • Creating XML Middleware for Accessing Databases
  • Transforming RDBMS Data to XML Data
  • Transforming XML Data to RDBMS Data
  • Storing XML Data in Oracle RDBMS, MySQL or SQL Server
  • Storing XML Data in Oracle RDBMS, MySQL or SQL Server
  • Storing XML Data in Oracle RDBMS, MySQL or SQL Server (or another more commonly used database)
  • Storing XML Data in Oracle RDBMS, MySQL or SQL Server

Chapter 8. Data Modeling With XML Schema

  • Data Modeling
  • Sample Modeling
  • Capturing Information
  • Modeling Techniques
  • Modeling Properties
  • Naming Guidelines
  • Naming Rules
  • Name Separators
  • Vocabulary Differences
  • Creating A Schema
  • Schema Types
  • Available Schema Types
  • Schema Data Type Facets
  • Data Type Facets
  • Databases and Schema Data Types
  • Modeling For Reuse

Chapter 9. Schema Configuration Management

  • Evolving Schema
  • Managing XML Schema
  • Management Techniques
  • Internal Techniques
  • Schema Version Attribute
  • Adding An Attribute
  • Namespace Change
  • File-Based Mechanisms
  • External
  • Which To Use?
  • Summary

Chapter 10. XML Performance

  • Historical Context for XML Performance
  • Parsing Strategies
  • XML Parsing Strategies – DOM
  • XML Parsing Strategies – SAX
  • XML Parsing Strategies – Pull
  • Comparing Parsing Strategies
  • Optimizing and Accelerating XML Messaging
  • Asynchronous Messaging
  • Web 1.0 vs Web 2.0
  • Asynchronous Performance
  • Performance Best Practices
  • Summary

Chapter 11. Introduction to SOAP Web Services

  • A Conceptual Look at Services
  • Defining Services
  • Service Communication Analogy
  • Three Key Service Questions
  • Connecting the Dots
  • SOA: Runtime Implementation
  • What Is a Web Service?
  • Enterprise Assets as Services
  • Typical Development Workflow
  • Advantages of Web Services
  • Web Service Business Models
  • Example: Internal System Integration
  • Example: Business Process Externalization
  • Web Services Standards
  • Binding via SOAP
  • SOAP in Protocol Stack
  • SOAP Structure
  • SOAP Message Architecture
  • Applying SOAP
  • Interface via WSDL
  • WSDL Structure
  • Applying WSDL
  • Locating a Service
  • UDDI Overview
  • UDDI Terminology
  • UDDI Structure
  • Applying UDDI
  • WS-I Overview
  • WS-I Deliverables
  • Summary

Chapter 12. Web services Description Language (WSDL)

  • WSDL Overview
  • WSDL Document Tags
  • WSDL Namespaces
  • <definitions>
  • <import>
  • <types>
  • <message>
  • <portType>
  • <operation>
  • One-way <operation>
  • Request-Response <operation>
  • Solicit-Response <operation>
  • Notification <operation>
  • Modeling Simple Operation
  • Modeling Complex Operation
  • Modeling Complex Message
  • <binding>
  • More on <binding>
  • <binding> Syntax
  • SOAP Binding Example
  • <service> and <port>
  • More on <port>
  • WSDL SOAP Binding Extensions
  • soap:binding
  • soap:operation
  • RPC or Document Style?
  • WSDL API for Java
  • Summary

Chapter 13. Simple Object Access Protocol (SOAP)

  • SOAP Overview
  • SOAP Document Components
  • Example SOAP Request Document
  • Example SOAP Response Document
  • The <Envelope> Element
  • The <Header> Element
  • The <Body> Element
  • SOAP Communication Style
  • Communication Style Example
  • Setting the Style in WSDL
  • RPC/Encoded Style
  • RPC/Literal Style
  • Document/Literal Style
  • Document/Literal Wrapped Style
  • Summary

Chapter 14. REST Services

  • Many Flavors of Services
  • Understanding REST
  • Principles of RESTful Services
  • REST Example – Create
  • REST Example – Retrieve
  • REST Example – Update
  • REST Example – Delete
  • REST Example – Client Generated ID
  • SOAP Equivalent Examples
  • REST Example – JSON
  • REST vs SOAP Communication
  • More REST vs SOAP
  • REST vs SOAP Summary
  • Famous RESTful Services
  • Additional Resources
  • Summary

Lab Exercises

Lab 1. Getting Started with XML
Lab 2. XML Overview
Lab 3. XML Syntax
Lab 4. Basic XML Schemas
Lab 5. Xpath
Lab 6. Xquery
Lab 7. Transforming XML using XSLT
Lab 8. Defining XML Schema Based Off a Relational Model
Lab 9. Leveraging XML Schema, XPath/XQuery, and XSLT
Lab 10. Create a WSDL File
Lab 11. Working with SOAP Messages

10/30/2023 - 11/01/2023
10:00 AM - 06:00 PM
Eastern Standard Time
Online Virtual Class
USD $1,880.00
Enroll
11/06/2023 - 11/08/2023
10:00 AM - 06:00 PM
Eastern Standard Time
Online Virtual Class
USD $1,880.00
Enroll
11/13/2023 - 11/15/2023
10:00 AM - 06:00 PM
Eastern Standard Time
Online Virtual Class
USD $1,880.00
Enroll