If it's just annotated tree structures, I'd say that's what DOM is for!
Or should be, warts and XML Data Model conformance aside.
Why would I say no "standard API" would exist for the rest? There are
thousands (conservatively!) of data/object models specialized to each
application. While a tree (or grove, or graph) would seem isomorphic
with any such model, it's not necessarily optimal for any one of them.
Similarly, "pure data" is a model many of us have been moving folk away
from over the last decade. It's critical for interoperability between
system components (e.g. over the web, with XML!), but raw data must be
joined with methods (or other code) before it's used. Ergo, "objects"
instead of APIs to data; classes not structs.
- Dave