[
Lists Home |
Date Index |
Thread Index
]
- From: Michael Leventhal <michael@textscience.com>
- To: xml-dev@ic.ac.uk
- Date: Tue, 12 May 1998 19:43:46 +0100
We have written a book directed to XML developers. A description of
it and the table of contents can be found below. The book is available
at Amazon and should be appearing in bookstores. It will also be
available in the GCA bookstore at the SGML/XML conference in Paris
next week.
Michael Leventhal
-----------------------------------------------------------------------
Designing XML Internet Applications
Michael Leventhal, David Lewis, Matthew Fuchs with contributions
from Stuart Culshaw and Gene Kan
582 pages, CD-ROM included.
Published by Prentice Hall PTR in the Charles F. Goldfarb Series
on Open Information Management, ISBN 0-13-616822-1.
"Designing XML Internet Applications" is divided into five parts.
In the first part we will introduce you to the XML universe.
Here you will find a discussion of the role of XML in the internet
and a quick-start on the XML recommendation and XML tools. We
don't assume prior knowledge of either XML or SGML but our task
here is not to provide an extended tutorial or reference on the
language syntax. What we do do is develop the perspective of the
XML internet application designer and provide any background
that is needed to comprehend the subsequent chapters.
The next three parts consist of a series of projects using XML
in actual internet applications. Working through the projects
the reader will gain concrete experience in the design of XML
applications, DTDs, and programming. We also delve into
standards related to XML and the internet wherever relevant.
The first project spans five chapters as the construction of
several types of components is involved including a bulletin
board, forms processing tools, a search engine, and
transformation filters.
Most of the work is done in Perl and the approach is less
rigorous than that used in subsequent projects. Our
intention here is to introduce XML programming in the most
simple and "exposed" form possible.
We have chosen to use Perl in this first part for various
reasons. It is the closest thing we know of to a lingua
franca for internet programmers, it is extremely compact
allowing us to construct complete examples in relatively
few lines of code, and, most significantly, Perl is the
most versatile XML scripting language.
The second project implements SGML/XML email and digs into
the topics of entity management, catalogs, MIME, and full-
scale SGML/XML parsing. Code is presented in Perl and
C++.
Lest the reader think we are Perl bigots the third project
plunges us into Java and XML, building an application based on
the Document Object Model and making use of a Java XML
parser API. Java is the language in which most of the new
XML internet infrastructure is being built.
The fifth and final section of the book takes a rigorous,
formal look at the role of XML in software architectures
and agents based on the paradigm of negotiation.
Full source code for all the projects has been included on
the CD-OM as have all the public domain tools used in the
book.
TABLE OF CONTENTS
PART I Internets, XML, and Tools
Chapter 1 Internets
1.1 Introduction
1.2 Why XML
1.3 Structure of the Book
1.4 Let's Talk: Internets are for Communicating
1.5 The Velocity of Information
1.6 Into the Smart Network
1.7 Current Approaches-Can the Web Help?
HTML - Java
1.8 Where the Web Needs Help
1.9 Beyond the Traditional Document
1.10 Toward the Active Document
1.11 Down to the Nitty-Gritty
1.12 What Do We Do with Documents?
1.13 DTDs and Content Specifications-A Short Excursion
Search - Retrieve - Store - Send/Receive -
Import/Export - Type Transformation -
Hyperlinking - Compare - Interpret - Define -
Create
1.14 Conclusion
Chapter 2 XML, Data, and Documents
2.1 XML-What It Is, What It Does, SGML Ancestry
SGML Essential Description - The XML Subset
and HTML - How XML Simplifies SGML - Valid
versus Well-Formed XML
2.2 XML and Data-Driven Architecture
2.3 XML and Documents
Using XML to Deliver Large and Complex
Documents Efficiently - Taming the Chaos -
Production of Multiple Information Products
from a Single Source - Reuse and Preservation -
Information Interchange Standards - Cost of
Production - Safety, Regulatory, and Other
Legal Documentation Requirements, Advanced
Hypertext, Collaborative Authoring?, Advanced
Information Management-Connecting Databases
Chapter 3 XML and SGML Tools
3.1 Tool Information Sources
The SGML/XML Web Page - The Whirlwind Guide
to SGML & XML Tools and Vendors - SGML Buyer's
Guide
3.2 Evolution of SGML and XML Tools
3.3 Software
Parsers - Programming Languages - Browsers -
Search Engines - Document and Component Management -
Authoring - Conversion, Capture, and Export of XML -
DTD Design Tools - Down Conversion from XML -
HyTime
3.4 DTDs as Development Resources
Part II Perl and XML
Chapter 4 The Desperate Perl Hacker and Internet
Applications: Overview
4.1 Apropos of Perl and the Desperate Perl Hacker
Java Versus Perl - Perl and XML Compliance
4.2 System Components
Applications - Functionality - Software
4.3 System Operation
Chapter 5 An XML Bulletin Board
5.1 Overview
5.2 XML Document Types
Messages - Password Docuemnt - User State Documents
5.3 Reading and Writing XML in the Bulletin Board
Writing Messages - Reading Messages - Password and
User State Documents - Transformation from XML to
HTML
Chapter 6 An XML Contact Database
6.1 Overview
6.2 XML Data Formats
6.3 Reading and Writing XML in the Customer Database
XMLForms - Using an XML Editor and CSS to Create
Contact Database Records -
Chapter 7 Structure-based Search
7.1 Overview: Structure- and Property-Driven Search
Search Tools in Internet Applications
7.2 sgrep's Query Language
A Web Interface to sgrep
Chapter 8 Type Transformation, Import, and Export
8.1 Overview
Import, Type Transformation, Export
8.2 Approaches to Transformation
Event Stream, Groves, DSSSL/XSL Transformation
8.3 Event Stream Transformation with Perl
Core Routine - Element-in-Context Subroutines? -
Generation of Subroutine Stubs - Bulletin Board
Type Transformation - Contact Database Type
Transformation - Bulletin Board Export to RTF -
Delayed Output and Forward References
Part III XML/SGML E-mail
Chapter 9 XML E-mail
9.1 Overview
9.2 Why XML/SGML is Hard to E-mail
9.3 Entity Catalogs
Entity Catalog Structure - Catalog Entry
Syntax - Building an E-mail Message from a
Catalog
9.4 MIME
Parts of a MIME message - Handling MIME
Messages
9.5 Building the SGMaiL Agent
9.6 The Sending Agent
Modifying SP for "createCatalog"
9.7 Parsing the Catalog and Creating the E-mail
Message
9.8 The Receiving Agent
9.9 Conclusion
Part IV XML and Java - Parsers and APIs
Chapter 10 XML Parsers and Application Programmer
Interfaces
10.1 Introduction
10.2 Parser Capabilities and Applications
Well-formedness and Validity Verification -
Document Instance Decomposition - Parser
Applications
10.3 XML Parser Interfaces
Command-Line and ESIS Event Stream
Interfaces - Event Callback Interfaces -
Object Model Interfaces
10.4 Sample XML Parsers
NXP XML Parser - AElfred XML Parser
10.5 The SAX Event Callback API
10.6 The W3C Document Object Model andAPI
Support and Implementation - Acquiring
Specifications - Overview of the W3C's
DOM Level-1 Interface
10.7 Sample DOM Implementation
DOM Interface Definition - DOM Interface
Implementations - Intergrating the DOM
Implementation - The XSpecViser Application
10.8 Chapter Summary
Part V Future - Agents and all that
Chapter 11 Input Gathering and Negotiation using XML
11.1 Introduction
The Ubiquitous Problem of Input Gathering -
Input Gathering and Negotiation - Negotiation
Processes from 20,000 Feet
11.2 Negotiation and Language-Agent Architectures
Negotiation Problem Specification -
Specification Problems and Language-Agent
Architecture - Optimal Specification
Environments
11.3 Description of Negotiation Problems
Negotiation Problem Output and Structure -
Negotiation Problem Output-Agreements -
Recurring Negotiation Problems - Output
Specification Languages - Constraints on
Valid Agreement - Practical Enforcement of
Output Constraints - Examples from Current
Systems Practice
11.4 Manufacturing Negotiator Behavior
Overview of Information Used by a
Negotiator - Introductory and Ancillary
Information - Information about Negotiable
Variables - Negotiation Structure -
Output Specification Language and Instance
Generation
11.5 Chapter Summary
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)
|