I am going to go out on a limb, and state some things from my understanding. If I am wrong, please do correct me.
There is an advantage with ODB. With your current query in a relational database, you'd receive the data from the Documents class, but only with the foreign key ID to the client. That doesn't help much, if you need the data from the client in the results too. You'd have to do a join to get the client data.
Instead of "joining" to get the client data in ODB, you'd simply add the projections for the client data to your select.
SELECT
client.name, client.billingAddress.street, client, billingAddress.city, etc., etc.
The same goes, if you wanted to filter on data from the client. For instance, "WHERE client.billingAddress.city = 'New York'". With ODB, you don't need the join. You just need the linked reference in the document.
The only disadvantage you have with ODB is, there isn't any referential integrity in all of this (as Hung mentioned) within ODB. You could stick an Id from a totally different class in the link to the client, and ODB won't complain. But, if you query on it, you'll probably run into troubles. In other words, you are responsible in your code to keep up the referential integrity.
If you don't want to do that, then you go with edges. The only thing with edges though is, you are back to a bi-directional links, which means the Client class is also linking back to the documents and this can get troublesome with very large amounts of links, as Hung mentioned.
This is one of the reasons why I wish there were uni-directional links in ODB.
Scott