What you're talking about is the larger problem of "context".
Thankfully, I already wrote the code and the documentation to attach statements to contexts, solving this problem in an elegant way.
I haven't released it yet to keep the core of the service simple, and to help people understand what it does first.
It will be released when it will be the right time for it.
Thanks for your comment!
I apologize for calling your project stupid. I should not have done that. I'm interested in seeing what you are doing on context. Thanks for being classy.
When you start assigning context to statments, you'll quickly find yourself walking down the path to structured data, and toward the very complexity you're arguing against. At least predicate-wise.
You'll then need to start assigning contexts to entities, at which point you're right about where Freebase begins, in principle. Even if we assume you use Wikipedia-esque strings like "Apple (company)"
Yes, whatever I do is making me "walking down the path to structured data, and toward the very complexity you're arguing against", that's why it is done in a way where those principles are still preserved.
I don't want to talk too much about a structure that I haven't released yet, but let me assure you there's a way that doesn't end up where Freebase is. (Not that there's anything wrong with that.</seinfeld>)
It will be released when it will be the right time for it. Thanks for your comment!