So I guess the message here is that *if* you only care about certain things, you could avoid doing deep parsing of the entire tree (which also implies instantiating those objects in memory).  But I feel like that is not going to be the common use case, and most users will probably just load the whole thing and keep it around to easily access the individual parts in more or less random order.  My point of this paragraph is that if you're designing a data model that results in an *extremely* large tree, you are doing it wrong, and you may be making your file impossible to parse by certain implementations.  I think that's true whether it's *possible* do glean something with an event-based parser or not.