XML or Extensible Markup Language is a markup language much like HTML (Hyper Text Markup Language), that defines a set of rules for encoding documents in a format that is both machine-readable and human-readable. It was designed to store and transport data. XML is self-describing. Tags are not predefined. So, you must define your own tags in XML. It is extensively used in a Services Oriented Architecture (SOA).