Page 611 - Beginning PHP 5.3
P. 611
19
Working with XML
XML — eXtensible Markup Language — lets you create text documents that can hold data in a
structured way. It was originally designed to be a human - readable means of exchanging structured
data, but it has also gained ground very quickly as a means of storing structured data. Although
XML is different from a database in many ways, both XML and databases offer ways to format and
store structured data, and both technologies have advantages and drawbacks.
XML isn ’ t really a language but rather a specification for creating your own markup languages.
It is a subset of Standard Generalized Markup Language (SGML, the parent of HTML). XML is
intended to allow different applications to exchange data easily. If you ’ re familiar with HTML,
you ’ ll notice similarities in the way HTML and XML documents are formatted. Although
HTML has a fixed set of elements and attributes defined in the HTML specification, XML lets you
create your own elements and attributes, thereby giving you the capability to define your own
language in XML (or to use someone else ’ s definition). Essentially, you can format any data you
want using XML.
In addition, the definition of an XML - based language can be placed online for any person or
application to read. So two applications that know nothing about each other can still exchange
data as long as both applications have the ability to read and write XML.
For these reasons XML is rapidly becoming the data exchange standard, and many useful
technologies have been created on top of XML, such as:
❑ Web Services, including languages such as SOAP for exchanging information in XML
format over HTTP, XML - RPC (SOAP ’ s simpler ancestor), and the Web Services
Description Language (WSDL), used for describing Web Services
❑ Application file formats, such as OpenOffice ’ s OpenDocument Format (ODF) and
Microsoft ’ s Office Open XML (OOXML) that are used to store word processing
documents, spreadsheets, and so on
❑ RSS and Atom news feeds that allow Web applications to publish news stories in a
universal format that can be read by many types of software, from news readers and email
clients through to other Web site applications
9/21/09 9:17:42 AM
c19.indd 573 9/21/09 9:17:42 AM
c19.indd 573