From an interview with James Clark, entitled:
JC: I knew how insanely complex writing an SGML parser was. SGML is really doing something very simple. It's providing a standard way to represent a tree, and your nodes have a label with names and they can have attributes. That's all it's doing. It's not a complicated concept.
[Personally, I wish people would stop fueling this notion of XML being too complex.]