> I think applying "out-of-band" annotations to "current"
> JSON is not what I mean by a graph representation. Each
> node has to have an ID. Otherwise you've got a tree.
"Out-of-band annotation" as you call it doesn't prevent every node to have an ID in any way. It's just a separation of concerns. Or did I miss something? It is just so that the description of how the representation has to be interpreted is stored in a different document. It's basically the machine-readable counterpart of descriptions as the following ones:
- https://developers.facebook.com/docs/reference/api/album/
- https://developer.foursquare.com/docs/responses/user.html
- http://dev.twitter.com/doc/get/users/show
Since all of these APIs are RESTful every representation has an unique URI, by using a fragment identifier you could also link directly to subparts of such a JSON representation.