XML

What is XML?

wiki sez: http://en.wikipedia.org/wiki/XML

Pros:

  • XML allows (user's) format extensions. There is a mechanism for including new tags in the schema? rather than rejecting the format.
  • The version of the file format is included in the header. This is

important because it is certain that the format will need to change to include new features. An explicit version makes it so when you write a parser, you can say exactly what version of the format it is supposed to read, and have it adapt appropriately to new formats.

  • A link to a centralized, community ratified, unambiguous technical

specification (schema)of the file structure

  • Many existing libraries for working with xml
  • offers the potential to be able to either directly or via extensions encode other types of network data which may include varibles and data that are not critical to many SNA examples or may be handled in a very different way today.
  • self-documented data format

ideally suited for data exchange between applications - the most widely adopted and "value adding" forms of XML are also relatively simple and fairly lightweight implementations (RSS, OPML, ATOM) which make it very easy for data to be published by a wide variety of applications and servers and to then be read and used by a still wider set of applications - without the need for specific coordination between those applications.

A nice paper comparing benfits of xml based formats: http://www.css.gmu.edu/maksim/page4/files/dynetml_05.pdf

Cons:

" ... XML is evil. XML is a hierarchy, and forcing a network into a hierarchy (which is a subset of a network) leads to all sorts of trouble. ..."

  • it is very verbose
  • difficult to work with standard unix commands / grep / spreadsheets