I read this quote from another post on TheServerSide:

"You know, if somebody ever sells an O/R tool for under $1000 and one that does not require different versions for different platforms/application servers could actually make quite a lot of money."

and it got me to thinking. Assuming that this mythical O/R tool existed, what sort of features would people be looking for? Keep in mind the relative low cost compared to products like TopLink and Cocobase.

For example, of the following things, would you rate them necessary, optional, or don't care?

- Integration of data with logic. More specifically, can the persistence layer generate separate "dao" objects for persistence, must it make persistence transparent for regular objects like JDO, or must it provide an API that people must call to persist the attributes of their objects?

- JDO compliance

- AppServer integration - JCA compliance.

- Caching - and at what levels (for example, VM local, or distributed)?

- Support for complex queries? For example, would it be good enough if the tool just allowed you to get a Connection in the current Transaction for complex queries, or would you prefer some other kind of support? If so, what kind?

- Tech support - and at what levels (For example, newsgroup-based, e-mail, or phone)?

Whatever other issues you can think of.

TIA and God bless,