122
XML Overview
Implementing XML Based Applications on page 164 Provides guidelines
for developers on how best to implement XML based applications. This sec
tion includes an in depth discussion of the various XML processing technolo
gies that developers can use to implement their applications. It covers the
advantages and disadvantages of the principal XML programming models and
provides recommendations for when you should consider using each of the
models.
Performance Considerations on page 182 Outlines guidelines for maxi
mizing performance. This section makes specific recommendations for ap
proaches developers can take to keep performance at an acceptable level.
Many of these concepts for designing XML based applications are generic in
nature; they apply to any application handling XML documents. Since Web ser
vices are XML based applications, these concepts especially apply to the design
of Web service endpoints and clients. The chapter emphasizes the design consid
erations that should be kept in mind when developing Web service endpoints and
clients.
Although it presents the basic XML concepts, this chapter assumes that you
have a working knowledge of the XML processing technologies, especially SAX,
DOM, XSLT, and JAXB. (Refer to Chapter 2 for more details on these technolo
gies.) Whenever possible, the chapter uses the scenarios introduced in Chapter 1
to illustrate various points.
4.1
XML Overview
While you may already be familiar with XML, it is important to understand XML
concepts from the point of view of applications handling XML documents. With
this knowledge, you are in a better position to judge the impact of your design deci
sions on the implementation and performance of your XML based applications.
Essentially, XML is a markup language that enables hierarchical data content
extrapolated from programming language data structures to be represented as a
marked up text document. As a markup language, XML uses tags to mark pieces
of data. Each tag attempts to assign meaning to the data associated with it; that is,
transform the data into information. If you know SGML (Standard Generalized
Markup Language) and HTML (HyperText Markup Language), then XML will
look familiar to you. XML is derived from SGML and also bears some resem
blance to HTML, which is also a subset of SGML. But unlike HTML, XML
New Page 1