XML is a tagged markup language similar to HTML. In fact, XML and HTML are distant cousins and have their roots in the Standard Generalized Markup Language (SGML). This means that XML leverages one of the most useful features of HTML—readability. However, XML differs from HTML in that XML represents data, whereas HTML is a mechanism for displaying data. The tags in XML describe the data, as shown in the following example:
<?xml version="1.0" encoding="utf-8" ?> <Movies> <FilmOrder name="Grease" filmId="1" quantity="21"></FilmOrder> <FilmOrder name="Lawrence of Arabia" filmId="2" quantity="10"></FilmOrder> <FilmOrder name="Star Wars" filmId="3" quantity="12"></FilmOrder> <FilmOrder name="Shrek" filmId="4" quantity="14"></FilmOrder> </Movies>
This XML document represents a store order for a collection of movies. The standard used to represent an order of films would be useful to movie rental firms, collectors, and others. This information can be shared using XML for the following reasons:
XML supports the parsing of data by applications not familiar with the contents of the XML document. XML documents can also be associated with a description (a schema) that informs an application about the structure of the data within the XML document.
At this stage, XML looks simple: it is just a human-readable way to exchange data in a universally accepted format. The essential points that you should understand about XML are as follows:
This last point means that the XML document hierarchy can be thought of as a tree containing nodes:
Of course, you are interested in the practical use of XML by Visual Basic. A practical manipulation of the example XML is to display, for the staff of a movie supplier, a particular movie order. This would allow the supplier to fill the order and then save the information to a database. This chapter explains how you can perform such tasks using the functionality provided by the .NET Framework Class Library.