XML and XLink for the SGML-Knowledgeable (or, How to Go from SGML Geek to XML Geek in One Day)

6/18/98


Click here to start


Table of Contents

XML and XLink for the SGML-Knowledgeable (or, How to Go from SGML Geek to XML Geek in One Day)

Getting started

Agenda

The XML effort

XML work

XML Working Group mandate

XML specification

XLink specifications

XSL specification

XUA specification

Whence XML

Cast of characters

XML design principles

XML and SGML are very similar

Most of XML is familiar territory

XML in the SGML context

Opportunities with XML

Where XML and SGML part company

Overview of differences

Differences in the mindset

Processing model

Processing model, cont’d

Partial and missing DTDs

Partial and missing DTDs, cont’d

Web usage

Schemas

Schemas, cont'd

Overview of differences

General language differences

Well-formedness and markup regularity

Whitespace handling

Language usage

Error handling

Overview of differences

XML and the SGML declaration

XML’s “SGML declaration”

Character repertoire

Variant concrete syntax

Variant concrete syntax, cont'd

Variant concrete syntax, cont'd

Variant concrete syntax, cont'd

Feature usage

Feature usage, cont’d

Overview of differences

Detailed functionality differences

Components of a document

Components of a document, cont'd

Components of a document, cont'd

Components of a document, cont'd

Elements

Elements, cont'd

Elements, cont'd

Elements, cont'd

Attributes

Attributes, cont'd

Attributes, cont'd

Attributes, cont'd

General entities and character references

General entities and character references, cont'd

General entities and character references, cont'd

General entities and character references, cont'd

General entities and character references, cont'd

Parameter entities

Notations

Marked sections

Marked sections, cont'd

Processing instructions

Comments

Identifiers

Making existing DTDs XML-compliant

Deciding when to make full SGML DTDs XML-compliant

If you decide to convert your DTD

Even if you decide not to convert your DTD

Cosmetic changes

DTD change for the round trip

The WebSGML Adaptations Annexes

WebSGML status

What the WebSGML annexes do

Partial overview of WebSGML

Terms and concepts

Terms and concepts, cont’d

SGML declaration changes

SGML declaration changes, cont’d

SGML declaration changes, cont’d

SGML declaration changes, cont’d

SGML declaration changes, cont’d

SGML declaration changes, cont’d

SGML declaration changes, cont’d

SGML declaration changes, cont’d

Attribute list declaration changes

Other changes

XML Linking Language (XLink)

Overview

Some hyperlinking history

History repeats itself

Hypermedia in the 60s (!)

Early hypermedia features

Consequences for end users

Then came HTML linking

Then came HTML linking limitations

1: Two elements: A and IMG

2: One link behavior for A, one for IMG

3: No real typology

4: URLs as pointing mechanism

4: URLs as pointing mechanism, cont’d

5: Privileged end lives inline in origin document

5: Privileged end lives inline in origin document, cont’d

6: Destination is a whole document

7: One end: No aggregate destinations

8: One way: A or IMG to somewhere

Overview

The XML linking effort

The XML linking effort, cont’d

The XML linking effort, cont’d

Goal #1 of the XLink family

Goal #2 of the XLink family

Status and schedule

Documents available today for the XLink family

Overview

XPointer is…

XPointer is also…

XPointer syntax

XPointer advantages

XPointers operate on tree nodes

XPointers operate on tree nodes, cont’d

Location term types

Example XML document

Absolute location terms

root() and origin()

Absolute location terms, cont’d

id() and html()

Relative location terms

Relative location terms

Relative location terms, cont’d

child() and descendant()

Relative location terms, cont’d

ancestor()

Relative location terms, cont’d

fsibling() etc.

Another way to think of relative location terms

Node types

String-match location term

Attribute location term

XPointers cannot be 100% robust

Advanced XPointers: spans

Overview

XLink is a language that...

XLink terminology

Basic XLink link types

Inline links

Out-of-line links

Simple and extended links

Link databases let you…

Link recognition

Link recognition, cont'd

Link recognition, cont'd

Types of links

Simple links

Simple links, cont’d

Extended links

Extended links, cont’d

Extended links, cont’d

Simple capers

Extended capers

Extended link groups

URI is the main locator syntax

Overview

Two axes of behavior policies

Replacement behavior

New behavior

Embedding behavior

Where to go for more information

Official resources

Other useful resources

Questions?

Thank you for your attention!

Author: Eve Maler, Steve DeRose