Ironically, I take a much more pragmatic view than you: I couldn't care less about those 19 primitive types, for example, but I do care about the possibility to apply a single, uniform (and extremely powerful) navigation model to any mixture of XML, HTML, JSON, CSV, SQL/SELECT, .ini, .yaml, ... resources. To let a single expression sweep across them, collect and combine the collected into a new shape!