Appendix B. XML Primer
Ant build files are written in XML, so Ant users must understand the language. Here’s a brief introduction to basic XML.
Extended Markup Language (XML) provides a way of representing structured data that’s somewhat readable by both humans and programs. It isn’t the easiest of representations for either party, but it lets people write structured files that machines can parse. The strength of XML is that many tools can work with the XML without knowing what the final use is. Once you’ve learned XML, you can recognize and navigate almost any XML document.
XML documents should begin with an XML prolog, which indicates the version and, optionally, the encoding of the XML file—usually the string <?xml version="1.0"?>. Next comes the XML content. This must consist of a single XML root element, which can contain other XML content nested inside. An XML element has a name, such as project, and is started and finished with tags of the element in the name inside angle bracket characters (< >). All Ant documents must have project as the root element, so all Ant XML files should have a structure something like this:

XML elements can have XML content nested inside them, including other elements. One such element in Ant is <echo>, which tells Ant to print a message: