CIMT COLLEGE
Home  -  Latest News  -  Sign in  -  Course Schedule  -  Apply Now  -  Jobs  -  Blog  -  Contact Us
Skip Navigation Links
Programs
Short Courses
Students
Placements
Admissions
Corporate
About Us
TECHNOLOGY COURSES
XML Programming Using C# and .NET for Windows

Course Description: The course includes extensive programming examples, a progressively developed case study, and several tools for manipulating XML documents. All source code is in C# and is provided with the course. The main lab track uses console and Windows Forms client programs, and an optional Web lab track is available that provides ASP.NET client programs.

Audience: XML programmers who want to build XML applications or components using .NET and the C# language.

Prerequisites: Ability to read and to write well-formed XML. A working knowledge of programming the .NET Framework using C#. A working knowledge of ADO.NET is recommended for the portion of the course dealing with ADO.NET and XML.
Days: 4

Course Contents 

.NET Framework XML Overview

  • XML
  • Parsing XML
  • Using XML in .NET Applications
  • The .NET XML Classes
  • Parsing Techniques
  • .NET Parsing Techniques
  • XmlReader and XmlWriter Features
  • .NET DOM Parser Features
  • Location of .EXE File
  • Other XML Features in .NET
  • XML and the Web
  • Internet Explorer and XML

Reading XML Streams in .NET

  • The .NET XmlReader Classes
  • The XmlReader Properties
  • Accessing Nodes
  • Reading Attributes
  • MoveToNextAttribute
  • Using Streams with XmlTextReader
  • Catching the Exceptions
  • Moving Around the Document
  • Handling Whitespace
  • Parsing a Specific Document
  • Parsing the Top-Level Elements
  • Subroutines
  • Looping for Children
  • Text via Brute Force
  • ReadElementString()
  • Zenith Courseware Case Study
  • Miscellaneous Reading Methods
  • Handling Namespaces
  • The XmlNodeReader Class
  • Creating XmlReaders in .NET 2.0
  • Benefits of Using XmlReader.Create()

Validating XML Streams

  • Valid XML
  • The Trouble with Well-Formed XML
  • Formal Type Information
  • DTDs and XML Schema
  • XML Schema for a Stereo System
  • DTD and XML Schema Comparison
  • Invalid XML
  • A Validation Tool
  • Creating Schema with Visual Studio
  • Using the Schema Graphical Editor
  • Validating XML Streams
  • Validation Settings
  • Validation Flags
  • .NET Validation Code
  • Validation Events

Writing XML Streams in .NET

  • Writing XML in .NET
  • The XmlWriter Class
  • The XmlTextWriter Class
  • The State of Writer
  • Creating XmlWriters in .NET 2.0
  • Writing Out Elements
  • Writing Nested Elements
  • Writing Attributes

The Document Object Model in .NET

  • The Document Object Model (DOM)
  • Origins of the DOM
  • DOM2 Structure
  • DOM Tree Model
  • .NET DOM Classes
  • The XmlDocument Class
  • The XmlNode Class – Basic Parsing
  • Polymorphic Node Types
  • The XmlNode Class – Node Types
  • Basic Parsing
  • The XmlElement Class
  • The XmlAttribute Class
  • The XmlAttributeCollection Class
  • The XmlText Class
  • The XmlNodeList Class
  • Using a foreach Loop
  • Validation

Manipulating XML Information with the DOM

  • Modifying Documents
  • The XmlNode Class – Modifications
  • Legal and Illegal Modifications
  • Managing Children
  • Cloning
  • Modifying Elements
  • Splitting Text and Normalizing
  • Modifying Attributes

Using XML Schema

  • Validating XML Documents
  • Limitations of DTDs
  • What is an XML Schema?
  • The XML Schema Recommendation
  • Schema vs. DTDs
  • Schema and Namespaces
  • The Schema Namespaces
  • Structure of a Schema
  • Schema Documents
  • Associating Documents with Schema
  • Developing a Content Model
  • Types of Types
  • Types of Types – Diagram
  • XML Schema Tools
  • Case Study – Movie Listings
  • Defining Elements
  • Defining Complex Types
  • Attributes
  • Multiple Cardinality
  • DTD versus XML Schema
  • Constraining Value Ranges
  • Anonymous Types
  • Schema Object Model
  • Validate Schema Tool
  • Validation Code

XML Serialization

  • Serialization in .NET
  • CLR Serialization
  • Circular List and XML Serialization
  • XML Serialization Infrastructure
  • What Will Not Be Serialized
  • XML Schema
  • XSD Tool
  • The XML Designer
  • A More Complex Schema
  • A Car Dealership
  • Deserializing According to a Schema
  • Type Infidelity
  • Customizing XML Serialization
  • XML Serialization and Web Services

XML and ADO.NET

  • ADO.NET
  • ADO.NET Architecture
  • .NET Data Providers
  • DataSet Architecture
  • Why DataSet?
  • DataSet Components
  • DataAdapter
  • Filling a DataSet
  • Accessing a DataSet
  • ADO.NET and XML
  • Rendering XML from a DataSet
  • XmlWriteMode
  • Writing Data as Attributes
  • Reading XML into a DataSet
  • DataSets and XML Schema
  • CourseSchema.xsd
  • Reading XML Schema
  • XmlReadMode
  • XML Data in DataTables
  • Typed DataSets
  • Table Adapter
  • Synchronizing DataSets and XML
  • Using XmlDataDocument

XPath

  • Addressing XML Content
  • XPath
  • The XSLT/XPath Console
  • Using the XPath Console
  • The XML InfoSet
  • XPath Tree Structure
  • Document Order
  • XPath Expressions
  • Context
  • XPath Grammar, From the Top
  • Decomposing an Expression
  • Location Paths
  • Axis, Node Test, and Predicate
  • The Axis
  • The Node Test
  • The Predicate
  • Abbreviations
  • Using Abbreviations
  • XPath Functions
  • XPath and .NET
  • XPath and XmlNode
  • XPathNavigator
  • Evaluate Method
  • XPathNodeIterator
  • XPathNavigator Class in .NET 2.0

Introduction to XSLT

  • The Strange Ancestry of XSLT
  • Input and Output
  • Rule-Based Transformation
  • Stylesheets and Transforms
  • Applying a Transform to a Document
  • Referencing a Stylesheet
  • Templates
  • XSLT Tools and Setup
  • Using the XSLT Console
  • XSLT and XPath
  • Style Sheets in the Browser
  • A Style Sheet for Browser Display
  • Browser Display
  • XSLT in the .NET Framework
  • New XSLT Processor

XML Performance Tradeoffs

  • XML Performance
  • Performance Measurements
  • Instrumenting an Application
  • Instrumentation Walkthrough
  • Implementation Code
  • XmlWriter versus the DOM
  • Validating vs. Non-Validating Readers
  • XSLT Performance

Appendix A - Zenith Courseware Case Study

Canadian Institute of Management & Technology
© 1998 - 2012 Canadian Institute of Management & Technology, CANADA. All rights reserved.

Valid XHTML 1.0 Transitional Valid CSS!