|

|
XML IE5 is a Programmer's Reference book published by Wrox. The
author Alex Homer has written a very compact but detailed book on XML
and XML support in Internet Explorer 5, covering XML, XSL and the XML
Document Object Model.
The book contains eight chapters and a further seven appendices. As
is normal with reference books, there is plenty of information covered
in the appendices, including references on ADO Recordsets, CSS
Properties, XSL and XML Behaviors.
The first chapter "What is XML?", describes XML from
a high level view point. It covers XML, its components and its
future, by describing SGML and DTD's, the differences between XML
syntax and HTML syntax, explaining element nesting, closing tags
(although it doesn't mention the pros and cons of using
<HR></HR> or <HR /> - although this is briefly
discussed late in chapter 7), single tag elements, double quoting
properties and case sensitivity. The chapter then goes on to explain
why you might want to use XML, and the future of XML. The chapter
covers in some detail the actual support of XML in Internet Explorer
5, showing some examples that can be used in IE5 now - all of which
are available from the books online support site - which can be
downloaded or used online. The chapter rounds off by describing how
XML support fits into the big picture: universal data formats and
XML-based applications using the complete range: server side, network
and client side XML.
"Creating XML Documents" - chapter 2 - discusses how
XML fits into other related technologies (DTD, XML Schema and Data
Types, XSL, XQL and CSS, XLink and XPointer, XML Data Exchange and
Storage), how XML can be "well-formed" and "valid", and how XML
documents are built up (using elements, elements attributes and data
structures). The chapter also discusses XML Namespaces (fully
supported in IE5), and details how to to create and use DTDs, the
syntax, the different elements, suffix characters (+, *, ? and |), the
different character data types (#PCDATA and CDATA), the different
entity types, how to use Notations and Processing Instructions. This
compact chapter succinctly describes the foundations of XML. If you
know XML then you could skip this chapter, otherwise its a good
beginner level entry into the basics of XML.
The third chapter "XML Schemas, Links and Pointers"
covers Internet Explorers "Technology Preview", i.e. due to the
recommendations not being issued by W3C prior to IE5 being released,
how Microsoft interprets the planned implementation of Schemas, XLink
and XPointer - none of which have been released by W3C at the time of
writing this book review. This is one reason why any book on the
subject of XML will be "unfinished" until the full set of
recommendations have been released by W3C - until that time this book
covers what is currently available in IE5. This chapter does point
out where IE5's implementation of the XML Schemas technology differs
from the W3C proposed recommendation (but not which version.)
Although "at the moment, IE5 offers no support for XLink and
Xpointer", a discussion of this yet to emerge technology is included
in this chapter.
At this point, the one minor criticism of the book should be mentioned
- which is also aimed at other similar internet technology oriented
books - the lack of declaration of which standards, recommendations,
references that the book has been written to in an easily accessible
list. The only clue is the publishing date: 1999, but even that
offers limited information. Which month of 1999, January, December?
It would be hard for anyone browsing potential book purchases, to
compare like with like.
The book does quote the following references in ad hoc locations:
Chapter four "Using XML in HTML Documents" gets down
to details with remote data access, data source objects, data binding
and client-side scripting, the first three of which are propriety
Microsoft extensions to the browser, and unlikely to be support by any
other browser vendor. This is where care must be taken by developers
when making use of such propriety extensions, otherwise web sites may
become navigable by only the latest version of IE. However, this
chapter may be one of the reasons why you might buy this book: to
understand how IE5 can be used to work with XML beyond the basic XML
recommendation from W3C. Remote Data Access, introduced in IE4, is
enhanced in IE5, and the chapter discusses how to make use the
Microsoft Java XML Data Source Object (DSO) which can be downloaded
separately from IE5 (from Microsoft's web site) to create "Data Islands"
within a HTML document. The chapter describes how to make use of DSO
record sets to filter and sort XML data and how to use table data
binding events and scripting to dynamically manipulate XML data on the
client browser.
Chapter five "The XML Document Object Model" covers
the XML Document Object Model supported in IE5. This chapter (unlike
the Document Object Model chapter in the other Wrox title "IE5 Dynamic
HTML" goes into some detail on how to manipulate an XML document,
including some sample applications (available online) to manipulate
XML data. In my opinion this is one of the most important chapters of
the whole book. It describes what can be done now in IE5 using XML
and the client browser, without resorting to any propriety
technologies. Extensions to the DOM are present in IE5, however,
these are poorly identified by the author - careful reading is
recommended. The extensive tables of information could perhaps have
been improved by a column to indicate propriety IE5 extension - as
done in the extensive Appendix A "IE5 XML Document Object Model".
Despite this, the chapter offers a lot of information to those new to
the XML DOM. The only thing missing is a description of how to detect
whether the browser has support for the XML DOM, so as to avoid your
scripts choking on other browsers.
Chapter six "Using the Document Object Model", unlike
chapter five, shows more practical uses of manipulating XML using the
DOM, in the words of the author: 'However, reading lists of properties
and methods can be tiresome, and often doesn't provide that, "Oh, now
I get it..." factor that comes from seeing the code at work.' Well
this chapter provides the ability to "get it" - showing several
examples that find values of elements, parse a document using
recursion, iterating the attribute list, adding line indents to
output, a tool to list XML document node properties and a tool to edit
XML document content. If at the end of this chapter you still cannot
"get it" - give up, as XML is surely not for you.
Chapter seven "Using CSS and XLS with XML" makes no
reference to the current
Style Sheets with XML
from W3C but only to the
working draft,
therefore one must assume that IE5 and this chapter were written
before the current recommendation were released by W3C. Therefore
both must be based on Microsoft's understanding of the direction that
XSL was likely to take back when Microsoft were coding IE5. That
said, the chapter covers the CSS and XSL differences, an introduction
to XSL, creating and using XSL style sheets, and XQL. The section on
CSS offers nothing new to people familiar with CSS. Adding CSS style
to XML is intuitive, i.e. if you create your own tags in XML, then
expect style to be added to them as if they were normal HTML tags.
This chapter discusses applying XSL templates and patterns to XML
documents, describes IE5's XLS path operators and filer operations,
discusses the different XSL elements, how XML can be used to create
nodes in the output, and how XSL can can be used to transform XML into
XML! Also discussed is W3C's proposals on XML Query Language (XQL),
which is already supported in IE5 using xsl:for-each,
xsl:if, xsl:choose, xsl:when,
xsl:otherwise, xsl:script and
xsl:eval
Chapter eight "IE5 Default and Custom Behaviors",
describes what behaviors (DHTML Behaviors, HTML Components, HTC) are,
the different types and how they are used, describing custom and
default behaviors. This chapter has many examples which are available
online for you to use and copy, although there isn't much in the way
of XML and Behaviors. This chapter seems to have just been tacked
onto the end of book about XML, without much thought about how to use
it with XML.
The book also includes the following appendices:
-
IE5 XML Document Object Model - an excellent 63 page
appendix that highlights which properties, methods and events are
Microsoft extensions over and above the W3C base model
-
ADO Recordsets Reference - lists all the methods,
properties and events of the ADO 2.0 Recordset Object, and the
VBScript and Java ADO constants
-
XML Schemas and Data Types - describes the proposed
DCD language, XML Schemas and Data Types - not all of which are yet
supported by IE5 - but unfortunately doesn't indicate which aspects of
these technologies are supported - a "suck it and see" approach!
-
CSS Properties a listing of all the CSS2 properties,
again, not all of which are supported in IE5 - the author says "...to
see if a property works, just try it!" - an interesting concept for a
"reference" book!
-
IE5 XSL Reference - IE5's implementation of XSL,
broadly in line with the December 1998 draft from W3C - subsequently
revised and released as a recommendation
-
XML Behaviors Reference - actually more useful than
chapter eight
-
Support and Errata
Conclusion
All in all a good book on XML support in IE5 - information possibly
not available from any other source. If you have internet access then
download the online material to work with alongside the book. If you
don't have online access then the value of the book will be reduced
slightly, as you'll not be able to appreciate the examples throughout
the book.
Available to buy from: Amazon.com, Amazon.co.uk or Amazon.de
|