Cutting Edge XML Programming
Outline
Please turn off all
Part I: SAX 2.1
Goals
Specified vs. Defaulted Attributes
standalone declaration
The version and encoding properties
Feature/Property discovery
DefaultHandler infoset extensions
Parser identification
A Verifier Class as in JDOM
To Learn More
Questions?
Part II: DOM Level 3
DOM Evolution
New Features in DOM Level 3
DOM Level 3 Core Additions
DOMKey
New methods in Node
New methods in Entity
New methods in Document
New methods in Text
Questions?
Bootstrapping
DOM3 Bootstrapping
Questions?
Load and Save
The DOM Process
Parsing documents with DOM2
Parsing documents with DOM3
Load and Save
DOMImplementationLS
DOMBuilder
DOMInputSource
DOMEntityResolver
DOMWriter
DOMBuilderFilter
DOMCMBuilder
DOMCMWriter
DocumentLS
ParserErrorEvent
Questions?
Grammar Access/Abstract Schemas
Abstract Schema Interfaces
Abstract Schema and AS-Editing Interfaces
The ASModel Interface
The ASExternalModel Interface
The ASNode Interface
The ASNodeList Interface
The ASNamedNodeMap Interface
The ASDataType Interface
The ASPrimitiveDataType Interface
The ASElementDeclaration Interface
The ASChildren Interface
The ASAttributeDeclaration Interface
The EntityDeclaration Interface
The ASNotationDeclaration Interface
Validation and Other Interfaces:
The Document Interface
The DocumentAS Interface
The DOMImplementationAS Interface
Schema-guided Document-Editing Interfaces:
The NodeAS Interface
The ElementAS Interface
The CharacterDataAS Interface
The DocumentTypeAS Interface
The AttributeAS Interface
Questions?
DOM Error Handler Interfaces
The DOMErrorHandler Interface
The DOMLocator Interface
To Learn More
Questions?
Part III: XSLT 2.0 and Beyond
XPath 2.0
XPath 2.0 Goals
XPath 2.0 Requirements
XSLT 2.0
XSLT 2.0 Goals
XSLT 2.0 Non-goals
XSLT 2.0 Requirements
Some specific improvements that are likely
Identifying 2.0 compliant stylesheets
No result tree fragments
Multiple Output Documents
xsl:document Example
xsl:script Top-level Element
xsl:script with Java
xsl:script with JavaScript
XQuery
XQuery Language
Documents to Query
Physical Representations to Query
Where is XQuery used?
The XML Model vs. the Relational Model
Query Data Types
An example document to query
The XQuery FLWR
Query: List titles of all books
Query Result: Book Titles
XQueryX
Element Constructors
Query Result: Book Titles
Query with WHERE
Query Result: Titles of books published by Addison-Wesley
Query with Booleans
Query Result: books published by Addison-Wesley after 1993
Attribute Constructors
Query Result: books published by Addison-Wesley after 1993, including their year and title.
Query with multiple variables
Query Result: A list of all the title-author pairs
Nested Queries
Query Result: A list of the title and authors of each book in the bibliography
Query with distinct
Query Result
Query with sorting
Query Result
Queries with functions
Query Result
Tentative Function List
A different document about books
This document uses a different DTD
Query that joins two documents
Result
prices.xml Query Sample Data
Query with reused variables
Query Result
Multiple FLWR Queries
Query Result
Query Software
To Learn More
Questions?
To Learn More
Questions?
Entire Presentation as Single File
Start
|
Cafe con Leche
Copyright 2000, 2001 Elliotte Rusty Harold
Last Modified September 13, 2001