I've done a lot of testing with document management. I've used archivista, which is especially designed for that. But unfortunally (or luckily for GO) it's not very handy. It is more or less just for archieving. There is a problem with OCR as well, I didn't find an useable open source solution which could be easily integrated. But you're right, at least for the legal notes. There is much more coming up in the future. E.g, GO has already the possiblity to write invoices in different languages, which is inside EU a law since 2010. But it doesn't lock an invoice record. It is possible to change it afterwards. You can take a look in the history for the changes with the status. I don't know if this is enough. Is there a lawyer in the forum who can answer these questions ?
But what I like to say. I use a scanner which sends all documents to a FTP account which can be reached by GO. A cronjob changes the ownership, because otherwise you can not move the files inside GO. Then I give them new names with some keywords. I assign them either to a contact, company,folder or project. Then the documents could be found by the search function.
My wish for this is only to have a function which shows documents for a company and the contacts assigned to together in one list (Maybe with the contact name in a line). Because sometimes you have multiple contact persons for the same thing. It could be handled by project and links as well, but my expierience is, that I forget sometimes to link
And search, search, search...