Contents
Moving to XML
What we're going to do today
How we're going to get there
Breaks
Before we start: how fast this changes...
We're also going to try to do a lot more this year
Before we start: what do you know
Before we start: Namespace
A brief chautauqua on language
Words
Sentences
Language
Words
Sentences
Meta-Language [1]
Meta-Language [2]
HTML [1]
HTML [2]
Well Formedness
What is XML
Key Features
Visual Appearance and Style Sheets [1]
What's happening with XSL [1]
XSL-T
XSL-FO
What's happening with XSL [2]
XSL: Summary
Visual Appearance and Style Sheets [2]
Differences from HTML
Extensible: what does this mean for you?
Extensible: a simple example [1]
Extensible: a simple example [2]
Strictly parsed: what does this mean for you? [1]
Strictly parsed: what does this mean for you? [2]
Differences from SGML
Document Type Definitions and dialects of XML
What is a Document Type Definition?
Do I have to use a DTD?
What DTDs are available?
Who will write DTDs? (i)
Who will write DTDs? (ii)
What about Schemas?
XML in your context
Applications which will benefit greatly from XML
Applications which will benefit little from XML
Early adoption: arguments for
Organisations which should aim to be early adopters
Early Adopters: Technical information [1]
Early Adopters: Technical information [2]
Early Adopters: Specialist search [1]
Early Adopters: Specialist search [2]
Early Adopters: Gaining experience [1]
Early Adopters: Gaining experience [2]
Early Adopters: Technically competent business communities
Early Adopters: Publishers in multiple formats
Wait and see: arguments for
Anatomy of an XML system
Example: a meeting arranger system
Creating an example document (quite easy)
Creating the DTD (hard, but we'll use a trick)
Viewing it: creating a style-sheet (harder)
Using it: applications
Specifying
The Structure of an XML document
Overall Structure
Processing Instructions
XML Namespaces
Elements (i)
Elements (ii)
Attributes
When to use which
Exercise period (i)
Creating
Building XML applications: tools and technologies
Why Java?
Other languages for building XML applications
Tools, components and toolkits
Transformation engines
What we will be using today
Constructing the document
The Document Object Model
The DOM: what is a Document?
The DOM: what is an Element?
The DOM: what is a Text?
Create a document object
Add a root ('content') element
Add further elements recursively as required
Let's see that again (i) the source
Let's see that again (ii): the event element
Let's see that again: (iii) the context element
Let's see that again: (iv) the output
Exercise period (ii)
Transforming
Beginning XSL-T (i) The 'stylesheet'
Beginning XSL-T (ii) The 'stylesheet' tag
Beginning XSL-T (iii) comments
Beginning XSL-T (iv) output specifier
Beginning XSL-T (v) declaring a template
Beginning XSL-T (vi) other useful bits
XSL-T elements: reprise
Beginning XSL-T (vii): Patterns
XSL-T: A deceptively simple language
Exercise period (iii)
Communicating
Just a bit about transport
Parsers
More about parsers (i) types
More about parsers (ii) types
Parsing from XML into the database
Identifying the data to store
Other things to bear in mind
Parsing: very simple worked example
Sample XML document
Sample Java class
Exercise period (iv)
References