I love the oblique reference to the iPhone: "But recently, for technical reasons, I couldn’t use any of the XML parsers I was already using. And, furthermore, I had reason to want to use a stream-based parser rather than a parser that builds a tree. (For better performance and lower memory use.)"
"An optimal solution would be something like this: - An Objective-C wrapper around libxml - Ability to read XML - Ability to generate XML - Same API as NSXML - Behaves the same as NSXML - Behaves like a true Objective-C class So I decided to write just this."