A one-liner at the end of a WWDC2000 presentation on Advanced EOF says it all. "Work with EOF, not against it." Thanks to Eric Noyau and Josh Fagans for the presentation!
For the current implementation of the connection from CAREO to the ALOHA Metadata Server, I use the XML-RPC API, and treat CAREO as a client application of the metadata server. Instead of using EOF to manage the records natively, I spun my own record management and caching solution (which works pretty well, but can't hold a candle to some enterprise level caching being actively developed by a Large Company - so why don't I just use that?)
At first, I didn't think EOF could do it. It was just Too Different from an RDBMS - I'm using XML-RPC, not JDBC. I'm using XML, not SQL.
And then King went ahead and wrote an EOAdaptor for the ALOHA Metadata Server, completely ignoring my insistence that it was impossible. Turns out that not only was it possible, but it performs MUCH better than my home grown solution. And throws a whole bunch of other cool stuff into the mix (like enabling federated searches across repositories, etc...).
So, the moral of the story, kids, is "Work with EOF, not against it."