> From: Jon Scott Stevens [mailto:[EMAIL PROTECTED]] > > on 4/22/02 12:19 AM, "Leo Simons" <[EMAIL PROTECTED]> wrote: > > > While these may not be accurate summaries, I hope you now do see that > > CrossDB and Torque are not, in the majority of use cases, alternatives > > to one another. > > I'm sorry. I don't see that. Torque can do everything crossdb can do and > more.
Uhhh: Outer joins? Fetch data across multiple objects? Aggregation queries? Torque is an O/R mapping framework, with all of the inherent limitations of trying to make relational data look like objects. Crossdb is a database-independent abstraction of SQL (not JDBC, that's an important distinction!). These are not competitive facilities; in fact they should be highly complementary. At the moment, Torque's extremely limited Criteria object has a tough time with simple conditions like "WHERE bob > 5 and bob < 10". Subqueries and joins are hopeless. Crossdb is what Torque desperately needs - a good database-independent way of specifying sophisticated conditions. The WhereClause in Crossdb could be substituted wholesale for Criteria. And for those of us that have to query our databases and obtain results which do not map 1-to-1 with a single object (such as anything that involves a group by or an outer join), we can bypass Torque and still have database independence. I think both Torque and Crossdb (if it has the community) are very much needed as top-level Jakarta projects. They are both bread-and-butter server development tools. Putting Crossdb under Torque makes about as much sense as putting Torque under Turbine. Oh, and Jon, the comparison with ECS is not very good. Web pages are a creative endeavor, whereas SQL statements are short and built by hard-core programmers. Also, simple HTML does not suffer from the problem of every web browser on the planet requiring a slightly different syntax for putting columns in a table... Velocity might be less useful if a separate template had to be written for every single web browser. Jeff Schnitzer [EMAIL PROTECTED] -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>