Guys, XML is just a sexpr. It's just an alist. It doesn't make anything better, it's just syntax. BBDB uses positional arrays instead of plists to make parsing be fast, as Sam pointed out.
People talk about XML like it actually has semantics.
These people are confused. However, with BBDB, we do know what the fields are. No, that's not true. First, XML has nothing to do with that. Second, BBDB supports an arbitrary number of fields with arbitrary names.