Announcement of a book for XML developers

Michael Leventhal michael at textscience.com
Tue May 12 20:58:51 BST 1998


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 at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)




More information about the Xml-dev mailing list