XML is a must-have skill for every professional: it is still broadly used by application protocols such as SOAP or SAML, or by description languages such as WSDL. By the way it is not something that is bound only to the application integration field: several applications relies on XML based configuration files and Blueprints, think for example to Apache Tomcat configuration files ("server.xml", "context.xml", ...), OSGI Blueprints such as a JAAS configuration, or again to Maven POM files or SCAP files (OVAL, XCCDF, ...).
The aim of this post is to provide a good overview of XML, explaining its goals, how to enforce it using schemas and generate a human-readable view of an XML file using XSLT.

The post also provides an overview of the XPath query language with some examples using the xpath command line tool. It shows you how to modify XML nodes and attributes using the xmlstarlet command line tool.

By the way, this post is part of a trilogy of posts dedicated to markup and serialization formats, so be sure not to miss

Of course these things would deserve a whole book, ... but as usual I try to be synthetic, showing you only the things that are really likely you'll sooner or later come across when working with XML, and giving tips on where to find more information on each topic.

Read more >