Home Page Icon
Home Page
Table of Contents for
.NET and XML
Close
.NET and XML
by Niel M. Bornstein
.NET & XML
A Note Regarding Supplemental Files
Copyright
Preface
Organization of This Book
Who Should Read This Book?
About XML and Web Services
About the Sample Code
Why C#?
Running the Examples
Style Conventions
How to Contact Us
Acknowledgments
I. Processing XML with .NET
1. Introduction to .NET and XML
1.1. The .NET Framework
1.2. The XML Family of Standards
1.3. Introduction to XML in .NET
1.4. Key Concepts
1.5. Moving On
2. Reading XML
2.1. Reading Data
2.1.1. Filesystem I/O
2.1.2. Network I/O
2.1.3. Network Access Through a Web Proxy
2.2. XmlReader
2.2.1. Pull Parser Versus Push Parser
2.2.2. When to Use XmlReader
2.2.3. Using the XmlReader
2.2.3.1. XmlTextReader
2.2.3.2. XmlValidatingReader
2.2.3.3. XmlNodeReader
2.3. Moving On
3. Writing XML
3.1. Writing Data
3.1.1. Filesystem I/O
3.1.1.1. File access and permissions
3.1.1.2. Encodings and StreamWriter
3.1.2. Network I/O
3.1.2.1. Writing data with Sockets
3.1.2.2. Writing data with WebRequest
3.2. XmlWriter and Its Subclasses
3.2.1. When to Use XmlWriter
3.2.2. Using the XmlWriter
3.3. Moving On
4. Reading and Writing Non-XML Formats
4.1. Reading Non-XML Documents with XmlReader
4.1.1. Reading a PYX Document
4.1.2. Writing an XmlPyxReader
4.1.2.1. Writing the skeleton
4.1.2.2. Defining the PYX traversal mechanism
4.1.2.3. Storing the Node instance data
4.1.2.4. Writing the tests
4.1.2.5. Filling in the stubs
4.1.3. Testing XmlPyxReader
4.1.4. Using XmlPyxReader
4.2. Writing an XmlPyxWriter
4.3. Moving On
5. Manipulating XML with DOM
5.1. What Is the DOM?
5.1.1. A Brief Introduction to the DOM Specification
5.1.2. When to Use the DOM
5.2. The .NET DOM Implementation
5.2.1. The XmlImplementation
5.2.2. The XmlNode Type Hierarchy
5.2.3. Creating an XmlDocument
5.2.4. Reading an XmlDocument
5.2.5. Changing an XmlDocument
5.3. Moving On
6. Navigating XML with XPath
6.1. What Is XPath?
6.1.1. Introduction to the XPath Specification
6.1.1.1. Parts of an XPath expression
6.1.1.2. Selecting elements
6.1.1.3. Selecting attributes
6.1.1.4. Selecting text, comments, and processing instructions
6.1.1.5. Selecting nodes by value
6.1.2. When to Use XPath
6.2. Using XPath
6.2.1. XmlNode
6.2.1.1. Selecting a single node
6.2.1.2. Selecting multiple nodes
6.2.1.3. Creating an XPathNavigator
6.2.2. XPathDocument
6.2.3. Navigating a Non-XML Document with XPath
6.2.3.1. Using a custom XmlReader
6.2.3.2. Using a custom XPathNavigator
6.3. Moving On
7. Transforming XML with XSLT
7.1. The Standards
7.2. Introducing XSLT
7.2.1. A Brief Introduction to the XSLT Specification
7.2.2. When to Use XSLT
7.3. Using XSLT
7.3.1. Transforming an XML Document
7.3.2. Associating a Stylesheet with an XML Document
7.3.3. Working with a Stylesheet Programmatically
7.3.3.1. Creating a stylesheet
7.3.3.2. Manipulating an existing stylesheet
7.3.4. Scripting with XslTransform
7.3.4.1. Embedded scripts
7.3.4.2. Adding parameters with XsltArgumentList
7.3.4.3. Adding extensions with XsltArgumentList
7.4. Moving On
8. Constraining XML with Schemas
8.1. Introducing W3C XML Schema
8.1.1. Using W3C XML Schema
8.1.2. When to Use W3C XML Schema
8.1.3. Other Ways to Constrain XML Structure
8.2. Using the XSD Tool
8.2.1. Generating a Schema from an XML Document
8.2.2. Generating a Schema from a DLL or Executable
8.2.3. Generating Types from a Schema
8.2.4. Generating a DataSet Subclass from a Schema
8.3. Working with Schemas
8.3.1. Creating a Schema Programmatically
8.3.2. Manipulating an Existing Schema
8.4. Moving On
9. SOAP and XML Serialization
9.1. Defining Serialization
9.1.1. Introducing the SOAP Specification
9.1.1.1. The SOAP envelope
9.1.1.2. Encoding rules
9.1.1.3. RPC representation
9.1.2. When to Use Serialization
9.1.3. SOAP Versus XML-RPC
9.2. Runtime Serialization
9.3. XML Serialization
9.4. SOAP Serialization
9.5. Moving On
10. XML and Web Services
10.1. Defining Web Services
10.1.1. HTTP
10.1.2. XML
10.1.3. XML Schema
10.1.4. SOAP
10.1.5. WSDL
10.1.6. UDDI
10.1.7. Where to Learn More About Web Services
10.2. Using Web Services
10.2.1. Choosing a Web Services Provider
10.2.2. Creating a Web Service
10.2.3. Issuing a Web Service Request
10.2.3.1. Issuing an HTTP GET request
10.2.3.2. Issuing an HTTP POST request
10.2.3.3. Issuing a SOAP request
10.2.4. Generating Client Code
10.2.5. Building Requests with Remoting
10.2.6. Publishing a Web Service
10.2.6.1. The UDDI data model
10.2.6.2. The UDDI APIs
10.3. Moving On
11. XML and Databases
11.1. Introduction to ADO.NET
11.1.1. Reading Data
11.1.2. Updating Data
11.1.3. Building a SQL Command
11.2. Manipulating Data Offline
11.2.1. Creating a DataSet
11.2.2. Populating a DataSet
11.2.3. Generating a DataSet
11.2.4. Connecting a DataSet to the Database
11.2.5. Tracking Changes to a DataSet
11.3. Reading XML from a Database
11.3.1. Reading XML Data Directly
11.3.2. Reading Data Into a DOM Tree
11.4. Hierarchical XML
11.4.1. Transformation
11.4.2. Synchronizing Data
II. .NET XML Namespace Reference
12. How to Use These Quick Reference Chapters
12.1. Finding a Quick-Reference Entry
12.2. Reading a Quick-Reference Entry
12.2.1. Type Name, Namespace, Assembly, Type Category, and Flags
12.2.2. Description
12.2.3. Synopsis
12.2.3.1. Member availability and flags
12.2.3.2. Functional grouping of members
12.2.4. Class Hierarchy
12.2.5. Cross References
12.2.6. A Note About Type Names
13. The Microsoft.XmlDiffPatch Namespace
13.1. Using the XmlDiffPatch Namespace
13.1.1. The XDL Diffgram format
13.2. Using the XmlDiff and XmlPatch Executables
13.3. Microsoft.XmlDiffPatch Namespace Reference
14. The Microsoft.XsdInference Namespace
14.1. Using the XsdInference Namespace
14.2. Using the Infer Executable
14.3. Microsoft.XsdInference Namespace Reference
15. The System.Configuration Namespace
15.1. The Configuration Files
15.1.1. The Security Configuration Files
15.1.2. The Machine Configuration File
15.1.3. The Application Configuration File
15.2. Adding Your Own Configuration Settings
15.2.1. Using the appSettings Element
15.2.2. Custom Elements
15.2.2.1. Choosing a configuration section handler
15.2.2.2. Defining the configuration section
15.2.2.3. Adding the configuration section
15.2.2.4. Reading the custom configuration programmatically
15.3. System.Configuration Namespace Reference
16. The System.Xml Namespace
EntityHandling — System.Xml (system.xml.dll) CF 1.0, serializable enum
Formatting — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0, serializable enum
IHasXmlNode — System.Xml (system.xml.dll) interface
IXmlLineInfo — System.Xml (system.xml.dll) CF 1.0 interface
NameTable — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 class
ReadState — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0, serializable enum
ValidationType — System.Xml (system.xml.dll) serializable enum
WhitespaceHandling — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0, serializable enum
WriteState — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0, serializable enum
XmlAttribute — System.Xml (system.xml.dll) CF 1.0 class
XmlAttributeCollection — System.Xml (system.xml.dll) CF 1.0 class
XmlCDataSection — System.Xml (system.xml.dll) CF 1.0 class
XmlCharacterData — System.Xml (system.xml.dll) CF 1.0 abstract class
XmlComment — System.Xml (system.xml.dll) CF 1.0 class
XmlConvert — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 class
XmlDataDocument — System.Xml (system.data.dll) class
XmlDeclaration — System.Xml (system.xml.dll) CF 1.0 class
XmlDocument — System.Xml (system.xml.dll) CF 1.0 class
XmlDocumentFragment — System.Xml (system.xml.dll) CF 1.0 class
XmlDocumentType — System.Xml (system.xml.dll) class
XmlElement — System.Xml (system.xml.dll) CF 1.0 class
XmlEntity — System.Xml (system.xml.dll) class
XmlEntityReference — System.Xml (system.xml.dll) CF 1.0 class
XmlException — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0, serializable class
XmlImplementation — System.Xml (system.xml.dll) CF 1.0 class
XmlLinkedNode — System.Xml (system.xml.dll) CF 1.0 abstract class
XmlNamedNodeMap — System.Xml (system.xml.dll) CF 1.0 class
XmlNamespaceManager — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 class
XmlNameTable — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 abstract class
XmlNode — System.Xml (system.xml.dll) CF 1.0 abstract class
XmlNodeChangedAction — System.Xml (system.xml.dll) CF 1.0, serializable enum
XmlNodeChangedEventArgs — System.Xml (system.xml.dll) CF 1.0 class
XmlNodeChangedEventHandler — System.Xml (system.xml.dll) CF 1.0, serializable delegate
XmlNodeList — System.Xml (system.xml.dll) CF 1.0 abstract class
XmlNodeOrder — System.Xml (system.xml.dll) serializable enum
XmlNodeReader — System.Xml (system.xml.dll) CF 1.0 class
XmlNodeType — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0, serializable enum
XmlNotation — System.Xml (system.xml.dll) class
XmlParserContext — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 class
XmlProcessingInstruction — System.Xml (system.xml.dll) CF 1.0 class
XmlQualifiedName — System.Xml (system.xml.dll) CF 1.0 class
XmlReader — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 abstract class
XmlResolver — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 abstract class
XmlSecureResolver — System.Xml (system.xml.dll) .NET 1.1 class
XmlSignificantWhitespace — System.Xml (system.xml.dll) CF 1.0 class
XmlSpace — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0, serializable enum
XmlText — System.Xml (system.xml.dll) CF 1.0 class
XmlTextReader — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 class
XmlTextWriter — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 class
XmlTokenizedType — System.Xml (system.xml.dll) serializable enum
XmlUrlResolver — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 class
XmlValidatingReader — System.Xml (system.xml.dll) class
XmlWhitespace — System.Xml (system.xml.dll) CF 1.0 class
XmlWriter — System.Xml (system.xml.dll) CF 1.0, ECMA 1.0 abstract class
17. The System.Xml.Schema Namespace
ValidationEventArgs — System.Xml.Schema (system.xml.dll) sealed class
ValidationEventHandler — System.Xml.Schema (system.xml.dll) serializable delegate
XmlSchema — System.Xml.Schema (system.xml.dll) CF 1.0 class
XmlSchemaAll — System.Xml.Schema (system.xml.dll) class
XmlSchemaAnnotated — System.Xml.Schema (system.xml.dll) class
XmlSchemaAnnotation — System.Xml.Schema (system.xml.dll) class
XmlSchemaAny — System.Xml.Schema (system.xml.dll) class
XmlSchemaAnyAttribute — System.Xml.Schema (system.xml.dll) class
XmlSchemaAppInfo — System.Xml.Schema (system.xml.dll) class
XmlSchemaAttribute — System.Xml.Schema (system.xml.dll) class
XmlSchemaAttributeGroup — System.Xml.Schema (system.xml.dll) class
XmlSchemaAttributeGroupRef — System.Xml.Schema (system.xml.dll) class
XmlSchemaChoice — System.Xml.Schema (system.xml.dll) class
XmlSchemaCollection — System.Xml.Schema (system.xml.dll) sealed class
XmlSchemaCollectionEnumerator — System.Xml.Schema (system.xml.dll) sealed class
XmlSchemaComplexContent — System.Xml.Schema (system.xml.dll) class
XmlSchemaComplexContentExtension — System.Xml.Schema (system.xml.dll) class
XmlSchemaComplexContentRestriction — System.Xml.Schema (system.xml.dll) class
XmlSchemaComplexType — System.Xml.Schema (system.xml.dll) class
XmlSchemaContent — System.Xml.Schema (system.xml.dll) abstract class
XmlSchemaContentModel — System.Xml.Schema (system.xml.dll) abstract class
XmlSchemaContentProcessing — System.Xml.Schema (system.xml.dll) serializable enum
XmlSchemaContentType — System.Xml.Schema (system.xml.dll) serializable enum
XmlSchemaDatatype — System.Xml.Schema (system.xml.dll) abstract class
XmlSchemaDerivationMethod — System.Xml.Schema (system.xml.dll) serializable, flag enum
XmlSchemaDocumentation — System.Xml.Schema (system.xml.dll) class
XmlSchemaElement — System.Xml.Schema (system.xml.dll) class
XmlSchemaEnumerationFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaException — System.Xml.Schema (system.xml.dll) CF 1.0, serializable class
XmlSchemaExternal — System.Xml.Schema (system.xml.dll) abstract class
XmlSchemaFacet — System.Xml.Schema (system.xml.dll) abstract class
XmlSchemaForm — System.Xml.Schema (system.xml.dll) serializable enum
XmlSchemaFractionDigitsFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaGroup — System.Xml.Schema (system.xml.dll) class
XmlSchemaGroupBase — System.Xml.Schema (system.xml.dll) abstract class
XmlSchemaGroupRef — System.Xml.Schema (system.xml.dll) class
XmlSchemaIdentityConstraint — System.Xml.Schema (system.xml.dll) class
XmlSchemaImport — System.Xml.Schema (system.xml.dll) class
XmlSchemaInclude — System.Xml.Schema (system.xml.dll) class
XmlSchemaKey — System.Xml.Schema (system.xml.dll) class
XmlSchemaKeyref — System.Xml.Schema (system.xml.dll) class
XmlSchemaLengthFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaMaxExclusiveFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaMaxInclusiveFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaMaxLengthFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaMinExclusiveFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaMinInclusiveFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaMinLengthFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaNotation — System.Xml.Schema (system.xml.dll) class
XmlSchemaNumericFacet — System.Xml.Schema (system.xml.dll) abstract class
XmlSchemaObject — System.Xml.Schema (system.xml.dll) CF 1.0 abstract class
XmlSchemaObjectCollection — System.Xml.Schema (system.xml.dll) class
XmlSchemaObjectEnumerator — System.Xml.Schema (system.xml.dll) sealed class
XmlSchemaObjectTable — System.Xml.Schema (system.xml.dll) class
XmlSchemaParticle — System.Xml.Schema (system.xml.dll) abstract class
XmlSchemaPatternFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaRedefine — System.Xml.Schema (system.xml.dll) class
XmlSchemaSequence — System.Xml.Schema (system.xml.dll) class
XmlSchemaSimpleContent — System.Xml.Schema (system.xml.dll) class
XmlSchemaSimpleContentExtension — System.Xml.Schema (system.xml.dll) class
XmlSchemaSimpleContentRestriction — System.Xml.Schema (system.xml.dll) class
XmlSchemaSimpleType — System.Xml.Schema (system.xml.dll) class
XmlSchemaSimpleTypeContent — System.Xml.Schema (system.xml.dll) abstract class
XmlSchemaSimpleTypeList — System.Xml.Schema (system.xml.dll) class
XmlSchemaSimpleTypeRestriction — System.Xml.Schema (system.xml.dll) class
XmlSchemaSimpleTypeUnion — System.Xml.Schema (system.xml.dll) class
XmlSchemaTotalDigitsFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaType — System.Xml.Schema (system.xml.dll) class
XmlSchemaUnique — System.Xml.Schema (system.xml.dll) class
XmlSchemaUse — System.Xml.Schema (system.xml.dll) serializable enum
XmlSchemaWhiteSpaceFacet — System.Xml.Schema (system.xml.dll) class
XmlSchemaXPath — System.Xml.Schema (system.xml.dll) class
XmlSeverityType — System.Xml.Schema (system.xml.dll) serializable enum
18. The System.Xml.Serialization Namespace
SoapAttributeAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
SoapAttributeOverrides — System.Xml.Serialization (system.xml.dll) class
SoapAttributes — System.Xml.Serialization (system.xml.dll) class
SoapElementAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
SoapEnumAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
SoapIgnoreAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
SoapIncludeAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
SoapReflectionImporter — System.Xml.Serialization (system.xml.dll) class
SoapTypeAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
UnreferencedObjectEventArgs — System.Xml.Serialization (system.xml.dll) class
UnreferencedObjectEventHandler — System.Xml.Serialization (system.xml.dll) serializable delegate
XmlAnyAttributeAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlAnyElementAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlAnyElementAttributes — System.Xml.Serialization (system.xml.dll) class
XmlArrayAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlArrayItemAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlArrayItemAttributes — System.Xml.Serialization (system.xml.dll) class
XmlAttributeAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlAttributeEventArgs — System.Xml.Serialization (system.xml.dll) class
XmlAttributeEventHandler — System.Xml.Serialization (system.xml.dll) serializable delegate
XmlAttributeOverrides — System.Xml.Serialization (system.xml.dll) class
XmlAttributes — System.Xml.Serialization (system.xml.dll) class
XmlChoiceIdentifierAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlElementAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlElementAttributes — System.Xml.Serialization (system.xml.dll) class
XmlElementEventArgs — System.Xml.Serialization (system.xml.dll) class
XmlElementEventHandler — System.Xml.Serialization (system.xml.dll) serializable delegate
XmlEnumAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlIgnoreAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlIncludeAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlNamespaceDeclarationsAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlNodeEventArgs — System.Xml.Serialization (system.xml.dll) class
XmlNodeEventHandler — System.Xml.Serialization (system.xml.dll) serializable delegate
XmlRootAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlSerializer — System.Xml.Serialization (system.xml.dll) class
XmlSerializerNamespaces — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlTextAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlTypeAttribute — System.Xml.Serialization (system.xml.dll) CF 1.0 class
XmlTypeMapping — System.Xml.Serialization (system.xml.dll) class
19. The System.Xml.XPath Namespace
IXPathNavigable — System.Xml.XPath (system.xml.dll) interface
XmlCaseOrder — System.Xml.XPath (system.xml.dll) serializable enum
XmlDataType — System.Xml.XPath (system.xml.dll) serializable enum
XmlSortOrder — System.Xml.XPath (system.xml.dll) serializable enum
XPathDocument — System.Xml.XPath (system.xml.dll) class
XPathException — System.Xml.XPath (system.xml.dll) serializable class
XPathExpression — System.Xml.XPath (system.xml.dll) abstract class
XPathNamespaceScope — System.Xml.XPath (system.xml.dll) serializable enum
XPathNavigator — System.Xml.XPath (system.xml.dll) abstract class
XPathNodeIterator — System.Xml.XPath (system.xml.dll) abstract class
XPathNodeType — System.Xml.XPath (system.xml.dll) serializable enum
XPathResultType — System.Xml.XPath (system.xml.dll) serializable enum
20. The System.Xml.Xsl Namespace
IXsltContextFunction — System.Xml.Xsl (system.xml.dll) interface
IXsltContextVariable — System.Xml.Xsl (system.xml.dll) interface
XsltArgumentList — System.Xml.Xsl (system.xml.dll) sealed class
XsltCompileException — System.Xml.Xsl (system.xml.dll) serializable class
XsltContext — System.Xml.Xsl (system.xml.dll) abstract class
XsltException — System.Xml.Xsl (system.xml.dll) serializable class
XslTransform — System.Xml.Xsl (system.xml.dll) sealed class
21. Type, Method, Property, and Field Index
About the Author
Colophon
Copyright
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Prev
Previous Chapter
Cover
Next
Next Chapter
A Note Regarding Supplemental Files
.NET and XML
Niel M. Bornstein
Beijing • Cambridge • Farnham • Köln • Sebastopol • Tokyo
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset