3.15 XML, RSS, Atom, JSON and VoIP
For more information on any of the following technologies,
visit the corresponding Resource Centers at http://www.deitel.com/resourcecenters.html.
XML
XML
(Extensible
Markup Language, Chapter 14), developed in 1996 by theWorld Wide Web Consortium (W3C),
is a markup language that allows you to label data based on its meaning.
XML describes data in a way that is meaningful to both humans and computers.
XML
documents are text files with a .xml extension;
they can be created in text editors. These documents can reference aDocument Type Definition (DTD)
or a schema, which defines
the structure for the document. This allows the information in the document
to be verified by validating parsers, meaning they
will check to make sure that no elements are missing (e.g., a last-name
element in a document listing full names) and that the elements occur
in the proper order. This makes XML data more reliable than data prepared
with some other data-describing options. XML also can be used to create
customized markup languages (e.g., XHTML for web content, CML for chemistry, MathML for mathematical content
and formulas, and XBRL for financial data)—these
are referred to as XML
vocabularies. XHTML is described in Chapter 4,
Introduction to XHTML. Chapter 14,
XML and RSS, presents several examples that use MathML to
render mathematical expressions.
RSS and Atom
Sites that offer RSS (Chapter 14)
and Atom feeds can maintain an “open
connection” with their readers. Users no longer have to regularly
visit sites for updates—by subscribing to a site’s feed,
users receive updates as new information is posted to the site. The
difference between RSS and Atom is subtle and unimportant to most users—many
tools support both formats. Versions
of RSS (an XML-based web content syndication format) have
existed since the late 1990s; Atom dates to 2003.
Most major web browsers support RSS and Atom feeds, and
many aggregators (or feed readers)
are available to help users organize their subscriptions. Feedburner
(acquired by Google) is used by many blogs to provide their readers
with new posts by e-mail. This service also helps bloggers get a better
idea of the size of their audience (by allowing them to see the number
of subscribers).
JSON
JavaScript
Object Notation (JSON) was developed in 1999 as an alternative
to XML. JSON (discussed
in Chapter 15, Ajax-Enabled Rich Internet Applications)
is a text-based data interchange format used to represent JavaScript
objects as strings and transmit them over a network. It is commonly
used in Ajax applications. JSON
text is easy to produce and read—it is also faster to parse (or
extract) than XML.
VoIP
Voice over Internet Protocol (VoIP)
is the technology used to make free or inexpensive phone calls over
the Internet. Some businesses and individuals have switched completely
to VoIP and eliminated traditional phone lines to cut costs. There are
many VoIP services, such as Vonage, Packet8
or Lingo; Skype
is the most popular. Acquired by eBay to integrate buyer and seller
voice communication into auctions,1 Skype offers free and fee-based services (such as calling non-Skype
phones). VoIP is an enabling technology that can be layered into Web
2.0 companies and websites.