Steven Holzner's friendly, easy-to-read style has turned this book (formerly
known as Inside XML) into the leading reference on XML. Unlike other XML
books, this one is packed with hundreds of real-world examples, fully tested and
ready to use!
Holzner teaches you XML like no other author can, covering every major XML
topic today and detailing the ways XML is used now--connecting XML to databases
(both locally and on web servers), stying XML for viewing in today's web
browsers, reading and parsing XML documents in browsers, writing and using XML
schemas, creating graphical XML browsers, working with the Simple Object Access
Protocol (SOAP), and a great deal more. Real World XML is designed to be the
standard in XML coverage--more complete, and more accessible, than any
"The author's approach is definitely bottom up, written in a highly
personable tone. He makes efficient use of example code, which sets this book
apart from many I have read in the past. His examples bring to life the code
without overwhelming the reader, and he does not present any examples for which
the reader has not been prepared. In addition, no prior knowledge of XML is
assumed. As such, this is an excellent book for both beginners and intermediate
level web designers and programmers. Experts, too, will find this book of value,
due to its emphasis on real world applicability. Overall, this book will benefit
all web developers and programmers, with a special emphasis on beginner and
intermediate developers."--Donna A. Dulo, MS, MA, Senior Systems Engineer, U.S.
Department of Defense
"This book will provide a brilliant basis for anyone wishing to keep up to
speed with the new XML developments."--Mr. Andrew Madden, Department of Computer
Science, University of Wales
"I found this book's strengths to be: its exhaustive specification reference
for the conscientious developer; access to the official specs, which is key; the
wide variety of choices provided for all aspects of XML; several alternatives
provided for each editor, browser, parser, stylesheet transform engine, and
programming language; and working examples that show the power of the tools
used."--Jaime Ryan, Software Developer/Documentation Manager, Blue Titan
Table of Contents:
1. Essential XML.
Markup Languages. What Does XML Look Like? What
Does XML Look Like in a Browser? What's So Great About XML? Well-Formed XML
Documents. Valid XML Documents. Parsing XML Yourself. XML Resources. XML
Editors. XML Browsers. XML Parsers. XML Validators. CSS and XSL. XLinks and
XPointers. URLs Versus URIs. ASCII, Unicode, and the Universal Character System.
2. Creating Well-Formed XML Documents.
The World Wide Web Consortium. What Is a
Well-Formed XML Document? Markup and Character Data. The Prolog. The XML
Declaration. Comments. Processing Instructions. Tags and Elements. The Root
Element. Attributes. Building Well-Formed Document Structure. CDATA Sections.
XML Namespaces. Infosets. Canonical XML.
3. Valid Documents: Creating Document Type Definitions.
Valid XML Documents. Creating Document Type
Declarations. Creating Document Type Definitions. Validating Against a DTD.
Element Declarations. ANY. Child Element Lists. #PCDATA. Creating Subsequences
with Parentheses. Choices. Mixed Content. Empty Elements. DTD Comments. A DTD
Example. External DTDs. Using Document Type Definitions with URLs. Public
Document Type Definitions. Using Both Internal and External DTDs. Namespaces and
4. DTDs: Entities and Attributes.
Entities. Attributes. Creating Internal General
Entities. Creating External General Entities. Building a Document from Pieces.
Predefined General Entity References. Creating Internal Parameter Entities.
External Parameter Entities. Using INCLUDE and IGNORE. All About Attributes.
Declaring Attributes in DTDs. Setting Default Values for Attributes. Attribute
Types. Embedding Non-XML Data in a Document. Embedding Multiple Unparsed
Entities in a Document.
5. Creating XML Schemas.
Using XML Schemas in Internet Explorer. Writing
XML Schemas. What Elements Can You Use in Schemas? Declaring Types and Elements.
Specifying How Often Elements Can Occur. Specifying Default Values for Elements.
Specifying Attribute Constraints and Defaults. Creating Simple Types. Creating
Simple Types Using Facets. Using Anonymous Type Definitions. Creating Empty
Elements. Creating Mixed-Content Elements. Annotating Schemas. Creating Choices.
Creating Element Groups. Creating Attribute Groups. Creating all Groups. Schemas
Event Information. Handling Mouse Events.
The W3C DOM. The XML DOM Objects. The
DOMDocument Object. The XMLDOMNode Object. The XMLDOMNodeList Object. The
XMLDOMNamedNodeMap Object. The XMLDOMParseError Object. The XMLDOMAttribute
Object. The XMLDOMElement Object. The XMLDOMText Object. Loading XML Documents.
Using XML Data Islands. Getting Elements by Name. Getting Attribute Values from
XML Elements. Parsing XML Documents in Code. Parsing an XML Document to Display
Node Type and Content. Parsing an XML Document to Display Attribute Values.
Handling Events While Loading XML Documents. Validating XML Documents with DTDs
in Internet Explorer. Scripting XML Elements. Editing XML Documents with
8. XML and Data Binding.
Data Binding in Internet Explorer. Using Data
Source Objects. Binding Data to HTML Elements. Using Data Binding with XML. XML
Single-Record Binding Using XML Data Islands. The Properties, Methods, and
Events of XML DSOs. Tabular Data Binding and XML. Single-Record Data Binding
with the XML DSO. Tabular Data Binding with the XML DSO. XML and Hierarchical
Data. Handling Variable-Size Hierarchical Data in XML Documents. Searching XML
9. Cascading Style Sheets.
Attaching Stylesheets to XML Documents.
Selecting Elements in Stylesheet Rules. Grouping Elements in Selectors. Creating
Pseudo-Elements. Classes. Creating Pseudo-Classes. Selecting by ID. Using
Contextual Selectors. Using Inline Styles. Using Inheritance. Understanding
Cascades. Creating Style Rules. Creating Block Elements. Styling Text. Setting
Colors and Backgrounds. Margins, Indentations, and Alignments. Applying Styles
to Lists. Creating Borders. Displaying Images. Absolute Positioning. Relative
Positioning. The Formal Style Property Specifications. Text Properties. Font
Properties. Background and Color Properties. Table Properties. Positioning and
Block Properties. Box Properties. Visual Effects Properties. List
10. Understanding Java.
Java Resources. Writing Java Programs. Java Is
Object-Oriented from the Ground Up. Getting the Java SDK. Creating Java Files.
Writing Code: Creating an Application. Compiling Code. Running Java
Applications. Commenting Your Code. Importing Java Packages and Classes.
Creating Variables in Java. Creating Arrays in Java. Creating Strings in Java.
Java Operators. Java Conditional Statements: if, if...else, switch. Java Loops:
for, while, do...while. Declaring and Creating Objects. Creating Methods in
Java. Creating Java Classes.
11. Java and the XML DOM.
Creating a Parser. Displaying an Entire
Document. Filtering XML Documents. Creating a Windowed Browser. Creating a
Graphical Browser. Navigating in XML Documents. Modifying XML Documents.
12. Java and SAX.
Working with SAX. Displaying an Entire Document.
Filtering XML Documents. Creating a Windowed Browser. Creating a Graphical
Browser. Navigating in XML Documents. Modifying XML Documents.
13. XSL Transformations.
Using XSLT Stylesheets in XML Documents. XSL
Stylesheets. Making a Transformation Happen. Creating XSLT Stylesheets. The
xsl:apply-templates Element. Getting the Value of Nodes with xsl:value-of.
Handling Multiple Selections with xsl:for-each. Specifying Patterns for the
match Attribute. Specifying Patterns for the select Attribute. Understanding
Xpath. The Default XSLT Rules. Altering Document Structure Based on Input.
Creating New Attributes. Generating Comments with xsl:comment. Copying Nodes.
Sorting Elements. Using xsl:if. Using xsl:choose. Controlling Output Type.
14. XSL Formatting Objects.
Formatting an XML Document. Creating the XSLT
Stylesheet. Transforming a Document into Formatting Object Form. Creating a
Formatted Document. The XSL Formatting Objects. The XSL Formatting Properties.
Working with Formatting Objects. The Document Root: fo:root. The Master Set
Layout: fo:layout-master-set. Using a Page Master: fo:simple-page-master.
Creating Regions. Creating Page Sequences: fo:page-sequence. Creating Flows:
fo:flow. Creating Block-level Content: fo:block. Inline-Level Formatting
Objects. Creating Page Numbers: fo:page-number. Creating Tables. fo:table.
15. XLinks and XPointers.
XLinks. XPointers. All About Xlinks. Declaring
the XLink Attributes. The xlink:type Attribute. Locating Resources with
xlink:hre.f Describing Resources: xlink:role and xlink:title. The xlink:show
Attribute. The xlink:actuate Attribute. The xlink:arcrole and xlink:label
Attributes. Extended Links. Creating Arcs with the xlink:from and xlink:to
Attributes. Inline Versus Out-of-Line Links. All About Xpointers. XPointer Axes.
XPointer Node Tests. XPointer Predicates. XPointer Location Set Functions. Using
XPointer Points. Using XPointer Ranges. XPointer Abbreviations.
16. Essential XHTML.
XHTML Checklist. Differences Between XHTML and
HTML. Automatic Conversion from HTML to XHTML. Validating Your XHTML Document.
<html>—The Document Element. <head>—Creating a Web Page's Head.
<title>—The Document's Title. <body>—The Document's Body. <!--
--> Comments. Headings: <h1> Through <h6>. Text Handling.
—Making Text Bold. —Making Text Italic. <u>—Underlining Text.
<font>—Specifying a Text Font. <br>—Creating Line Breaks.
<p>—Organizing Text into Paragraphs. <hr>—Creating Horizontal Rules.
<center>—Centering Displayed Text. <div>—Formatting Text Blocks.
<span>—Formatting Text Inline.
17. XHTML at Work.
<img>—Displaying an Image.
<a>—Creating a Hyperlink or Anchor. <link>—Setting Link Information.
<table>—Creating Tables. <tr>—Creating Table Rows.
<th>—Creating Table Headings. <td>—Creating Table Data.
<frameset>—Creating Documents with Frames. <frame>—Creating
Individual Frames. Using Stylesheets in XHTML. <style>—Creating Embedded
Stylesheets in XHTML. Using Inline Styles in XHTML. <script>—Using Script
Programming. <form>—Creating XHTML Forms. <input type =
"button">—Creating Controls. <input type="text">—Creating Text Fields.
Extending XHTML—Creating New Elements and Attributes. Extending Public XHTML
DTDs. Extending XHTML with a Driver DTD. All About XHTML 1.1 Modules. Modifying
XHTML Content Models.
18. SOAP and RDF.
SOAP. A SOAP Example Using Java. RDF. RDF
Syntax. RDF Root Element. RDF Namespace. RDF Description Element. RDF Property
Elements. Dublin Core. Describing Multiple Properties. Describing Multiple
Resources. Nesting Resources. Referring to Resources by Reference. Using XML in
Property Elements. Using Abbreviated RDF Syntax. RDF Containers. Using the Bag
Container. Using the Seq Container. Using the Alt Container. Making Statements
About Containers. Making Statements About the Items in a Container. Selecting
Container Items by Prefix. Creating RDF Schemas.
19. Vector Markup Language.
Creating VML Documents. The VML Elements. The
<shape> Element. Using Predefined Shapes. Coloring Shapes. Scaling Shapes.
Positioning Shapes. The absolute Position Style. The <shadow> Element. The
<fill> Element. Using the <shapetype> Element. More Advanced
20. WML, ASP, JSP, Servlets, and Perl.
XML and ASP. XML and Java Servlets. JSP. XML and
Perl. WML. Getting Starting with WML. Setting Text Alignment. Basic Text
Styling. The <do> Element. The <prev> Element. Hyperlinks. Tables.
Text Input. Select Elements. Timers. Connecting to the Server. Images.
Appendix A. The XML 1.0 Recommendation (Second Edition).
Extensible Markup Language (XML) 1.0 (Second
Edition). Abstract. Status of this Document. Table of Contents. 1 Introduction.
2 Documents. 3 Logical Structures. 4 Physical Structures. 5 Conformance. 6
Notation. A References. B Character Classes. C XML and SGML (Non-Normative). D
Expansion of Entity and Character References (Non-Normative). E Deterministic
Content Models (Non-Normative). F Autodetection of Character Encodings
(Non-Normative). G W3C XML Working Group (Non-Normative). H W3C XML Core Group
(Non-Normative). I Production Notes (Non-Normative).