Programmers tire of repeatedly solving the same problem, and XML has helped to avoid this.
XML is a means of making data more accessible to applications. You might well ask, "Surely databases do this already", but sometimes you do not want or need the overhead of a database and a simple text file will suffice.
In fact that is just what XML is, a text file. As such it is about as portable as information can be, but it is more than a text file. An XML file is rigorously structured, and this has a number of advantages.
The rigorous structure facilitates the interpretation of this text file, and its conversion to other formats
An example might help clarify the use of xml
This simple, and incomplete extract of an XML file tells us a number of things. The file stores information about two customers called bob and Sam who are 45 and 41 years old.
It is easy to look at this file and deduce its meaning, and therefore it is easy to write computer code that automates our deductions. As such we could for example create a simple query that extracts all customers below the age of 42. You can probably see now why XML files are akin to databases in some sense. But XML has other advantages.
We can see that XML is almost self documenting - had I not explained to you what the XML extract meant, you could probably work it out.
At Meadowlark we use XML whenever we store structured information where a database would be superfluous.