FREE Trial Version TurboXML IDE & Schema Editor
FREE NeoCore XMS Native XML DatabasePersonal Edition
100,000 copies in print
ADOBE FrameMaker + SGML-FREE TRYOUT
The proven resource for the Semantic Web and Web Services100,000 copies in six languages!
Developers, managers, consultants, and VCs rely on its technical accuracy, accessible writing style, and broad and deep coverage.Learn XML
Start by learning what XML is, why it came to be, how it differs from HTML, and the handful of vital concepts that you must understand to apply XML quickly and successfullyin your business and in your code.Use XML
Experience XML through illustrated discussions of tools and applications: Web services, B2B, B2C, EDI, exchanges, e-commerce, integration, portals, content management, databases, conversion, syndication, telephony, wireless, customization, publication, presentation.Master XML
Master the details from friendly, in-depth presentations: XML, schemas, DTDs, datatypes, XSLT, XSL-FO, XLink, XPath, XPointer, XSDL, namespaces, topic maps, RDF, SOAP, UDDI, WSDL, VoiceXML.
"This book is an excellent starting point where you can learn and experiment with XML. As the inventor of SGML, Dr. Charles F. Goldfarb is one of the most respected authorities on structured information."
From the Foreword by Jean Paoli,
Microsoft XML architect and co-editor of the W3C XML specification
2 CD-ROMs: 175 no-time-limit FREE packages
Preface by Charles F. Goldfarb.
Foreword by Jean Paoli, co-editor of W3C XML Recommendation.
Prolog by Jon Bosak, chair of W3C XML Working Group.
I. THE WHO, WHAT, AND WHY OF XML.1. Why XML?
II. THREE-TIER APPLICATIONS.7. Personalized frequent-flyer website.
III. E-COMMERCE.10. From EDI to IEC: The new Web commerce.
IV. INTEGRATION.13. Application integration with Web and email.
V. CONTENT MANAGEMENT.17. “World” class content management.
VI. PORTALS.21. Portal servers for e-business.
VII. PUBLISHING.25. Personalized financial publishing.
VIII. DATABASES.28. XML and databases.
IX. CONTENT ACQUISITION.32. XML mass-conversion facility.
V. SCHEMAS AND DESIGN.36. Building a schema for a product catalog.
XI. VOICE.40. VoiceXML in a mobile environment.
XII. SEMANTIC WEB.42. Extended linking.
XIII. WEB SERVICES.46. The Web services vision.
XIV. INFRASTRUCTURE.49. XML processing.
XV. XML CORE TUTORIALS.53. XML basics.
XVI. SCHEMA TUTORIALS.58. Namespaces.
XVII. TRANSFORM & NAVIGATION TUTORIALS.61. XML Path Language (XPath).
XVIII. RESOURCES.66. Free resources on the CD-ROM.
When Paul Prescod and I wrote the first edition of this bookfour years and 100,000 copies agoXML was brand new and the subject of extraordinary hype. It promised to provide universal data interchange, revolutionize publishing on the Web, and transform distributed computing.
Those claims were amazing, not just because of the extent of the promised impact, but because of the diversity of the areas affected. More amazingly, the claims have largely been fulfilled. With the support of the entire computer industry, an XML-based infrastructure is being constructed for modern computing; indeed, for modern business itself.
In some ways, though, the construction site resembles the Tower of Babel. The professionals in the areas affected by XML tend to talk and write about it in their own way, from each area's unique perspective, and in its specialized jargon.
But not in The XML Handbook!
From the first edition, our aim has been to integrate and unify the teaching of XML so that any tech industry professional can learn it, regardless of background. And by "learn it" we mean not just the technical details but the way that XML is used. Specifically:
As a result, developers with diverse backgrounds found they could get the full picture of XML from The XML Handbook. Moreover, they also found they could encourage management to read the book and learn why XML is so important to the enterprise.
HTMLthe HyperText Markup Languagemade the Web the world's library. XMLthe Extensible Markup Languageis its sibling, and it is making the Web the world's commercial and financial hub.
In the process, the Web is becoming much more than a static library. Increasingly, users are accessing the Web for "Web pages" that aren't actually on the shelves. Instead, the pages are generated dynamically from information available to the Web server. That information can come from databases on the Web server, from the site owner's enterprise databases, or even from other websites.
And that dynamic information needn't be served up raw. It can be analyzed, extracted, sorted, styled, and customized to create a personalized Web experience for the end-user. To coin a phrase, Web pages are evolving into Web services.
For this kind of power and flexibility, XML is the markup language of choice. You can see why by comparing XML and HTML. Both are based on SGMLthe International Standard for structured informationbut look at the difference:
<p>P200 Laptop<br>Friendly Computer Shop<br>$1438
<product><model>P200 Laptop</model><dealer>Friendly Computer Shop</dealer><price>$1438</price></product>
Both of these may appear the same in your browser, but the XML data is smart data. HTML tells how the data should look, but XML tells you what it means.
With XML, your browser knows there is a product, and it knows the model, dealer, and price. From a group of these it can show you the cheapest product or closest dealer without going back to the server.
Unlike HTML, XML allows custom tags that can describe exactly what you need to know. Because of that, your client-side applications can access data sources anywhere on the Web, in any format. New "middle-tier" servers sit between the data sources and the client, translating everything into your own task-specific XML.
But XML data isn't just smart data, it's also a smart document. That means when you display the information, the model name can be in a different font from the dealer name, and the lowest price can be highlighted in green. Unlike HTML, where text is just text to be rendered in a uniform way, with XML text is smart, so it can control the rendition.
And you don't have to decide whether your information is data or documents; in XML, it is always both at once. You can do data processing or document processing or both at the same time.
With that kind of flexibility, it's no wonder that we're starting to see a new Web of smart, structured information. It's a "Semantic Web" in which computers understand the meaning of the data they share.
Your broker sends your account data to Quicken using XML. Your imaging software keeps its templates in XML. Everything from math to multi-media, chemistry to commerce, wireless to Web services, is using XML or is preparing to start.
The XML Handbook will help you get started too!
This book is about XML. You won't find feature comparisons to SGML, or footnotes with nerdy observations like "the XML empty-element tag does not contradict the rule that every element has a start-tag and an end-tag because, in SGML terms, it is actually a start-tag followed immediately by a null end-tag".
Nevertheless, for readers who use SGML, it is worth addressing the question of how XML and SGML relate. There has been a lot of speculation about this.
Some claim that XML will replace SGML because there will be so much free and low-cost software. Others assert that XML users, like HTML users before them, will discover that they need more of SGML and will eventually migrate to the full standard.
The truth is that XML is a simplified subset of SGML. The subsetting was optimized for the Web environment, which implies data-processing-oriented (rather than publishing-oriented), short life-span (in fact, usually dynamically-generated) information. The vast majority of XML documents will be created by computer programs and processed by other programs, then destroyed. Humans will never see them.
Eliot Kimber, who was a member of both the XML and SGML standards committees, says:
There are certain use domains for which XML is simply not sufficient and where you need the additional features of SGML. These applications tend to be very large scale and of long term; e.g., aircraft maintenance information, government regulations, power plant documentation, etc.
Any one of them might involve a larger volume of information than the entire use of XML on the Web. A single model of commercial aircraft, for example, requires some four million unique pages of documentation that must be revised and republished quarterly. Multiply that by the number of models produced by companies like Airbus and Boeing and you get a feel for the scale involved.
I agree with Eliot. I invented SGML, I'm proud of it, and I'm awed that such a staggering volume of the world's mission-critical information is rep-resented in it.
I'm gratified that SGML made the Web possible and that the Society for Technical Communication awarded joint Honorary Fellowships to the Web's inventor, Tim Berners-Lee, and myself in recognition of the synergy.
But I'm also proud of XML. I'm proud of my friend Jon Bosak who made it happen, and I'm glad that the World Wide Web is becoming XML-based.
If you are new to XML, don't worry about any of this. All you need to know is that the XML subset of SGML has been in use for a decade or more, so you can trust it.
SGML still keeps the airplanes flying, the nuclear plants operating safely, and the defense departments in a state of readiness. You should look into it if you produce documents on the scale of an Airbus or Boeing. For the rest of us, there's XML.
With all the buzz surrounding a hot technology like XML, it can be tough for a newcomer to distinguish the solid projects and realistic applications from the fluff and the fantasies. It is tough for authors as well, to keep track of all that is happening in a field expanding as rapidly as this one.
In this case, the solution to both problems was to seek support and expert help from friends in the industry. I know the leading companies in the XML arena and know they have experience with both proven and leading-edge applications and products.
In the usual way of doing things, had we years to write this book, we would have interviewed each company to learn about its strategies, products and/or application experiences, written some chapters, asked the companies to review them, etc., and gone on to the next company. To save time and improve accuracy, we engaged in parallel processing. I spoke with each sponsor, agreed on subject matter for a chapter that would fit the book plan, and asked them to write the first draft.
I used their materials as though they were my own interview notesediting, rewriting, deleting, and augmenting as necessary to achieve my objective for the chapter in the context of the book. I used consistent standards-based terminology and an objective factual style. All sponsored chapters are identified with the name of the sponsor, and usually with the names of the experts who contributed to it. I'd like to take this opportunity to thank them for being so generous with their time and knowledge.
We are grateful to our sponsors just as we are grateful to you, our readers. Both of you together make it possible for The XML Handbook to exist. In the interests of everyone, we make our own editorial decisions and we don't recommend or endorse any product or service offerings over any others.
Our thirty-four sponsors are:
The XML Handbook has eighteen parts, consisting of 69 chapters, that we intend for you to read in order.
Well, if authors didn't have dreams they wouldn't be authors.
In reality, we know that our readers have diverse professional and technical backgrounds and won't all take the same route through a book this large and wide-ranging. Here are some hints for planning your trip.
To start, you can get the best feel for the subject matter by reading the Table of Contents and the introductions to each part. The introductions are less than a page long and usually epitomize the subject area of the part in addition to introducing the chapters within it.
Part One contains introductory tutorials and establishes the terminology used in the remainder of the book. Please read it first.
Parts Two through Fourteen cover different application domains. The chapters are application discussions, case studies, and tool category discussions, plus some introductory discussions and tutorials. You can read them with only the preceding parts (especially Part One) as background, although technical readers may want to complete the remaining tutorials first. 2
Those can be found in Parts Fifteen through Seventeen. We strove to keep them friendly and understandable for readers without a background in subjects not covered in this book. Tutorials whose subject matter thwarted that goal are labeled as being a tad tougher so you will know what to expect, but not to discourage you from reading them.
Part Eighteen contains resources: guides to the CD-ROM and to public XML vocabularies, an acronym dictionary, and a guide to the other books in this series.