Topics | |
|
|
Audience | |
Anyone who needs an introduction to XML, including application developers, Web developers, XML document authors, and webmasters. | |
Prerequisites | |
Familiarity with Web and data processing concepts. HTML and programming experience is helpful. | |
Duration | |
Three days. |
Outline for Fundamentals of XML 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
- XML Elements
- 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
- Samples using Regular Expressions
- 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
- Obtaining a 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
- The J2EE Blueprint
- A Typical Architecture Using XML in J2EE Applications
- Using XML in Applets
- Using XML Parser in Applets
- 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 DB2
Chapter 8 - 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 9 - Introduction to 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 10 - Cascading Style Sheets
- Cascading Style Sheets
- The xml-stylesheet processing instruction
- CSS details
- An example
- Common CSS tags – display
- Common CSS tags – Colors and Backgrounds
- Common CSS tags – Fonts
Appendix-A - Writing DTDs
- DTD
- DOCTYPE Declaration
- Types of DTDs
- DOCTYPE
- Internal DTDs
- External DTDs
- Basic DTD Markup
- Element Type Declaration
- Elements Declarations
- Declaring Children
- Declaring Multiple Children
- Declaring Optional Children
- Declaring Zero or More Children
- Declaring One or More Children
- Combination of Children
- Putting It All Together – DTD
- Putting It All Together – XML
- Mixed Content
- Mixed Content – An Example
- Attributes Declaration
- Attribute Default Values
- Attribute Types
- String Attribute Type
- Tokenized Attribute Type
- Enumerated Attribute Type
- ENTITY Declaration
- Parsed General Entities
- Parsed Parameter Entities
Labs
- 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
- Lab 12. Writing DTDs (Optional)
- Lab 13. Presenting XML for the Web – CSS
- Appendix A
- Appendix B