Just a heads up that I finally got enough traction in this work towards building a "SQL AST" to warrant a push upstream.
The majority of time has been trying to think through the best tree structure for modeling from clauses especially in regards to entity/collection persisters that map across multiple tables. So that is where most of my work so far has gone. So far I have only worked through handling entity persisters. You can see this contract in org.hibernate.sql.orm.internal.mapping.ImprovedEntityPersister (which I ultimately expect to augment the upstream EntityPersister contract with). There are also some tests illustrating the structure that gets created for various scenarios. So far I have only written tests for SingleTableEntityPersister (which covers both no inheritance and discriminator inheritance) with and without secondary tables. I will work on expanding the covered scenarios as I have time during continued 5.0.2 and 5.1 development. For those interested in taking a peek, the tree structure itself is defined within the org.hibernate.sql.ast.from package. Be sure to see its package-info for a high-level overview. The tests are in the org.hibernate.sql.orm.internal.mapping test package. The next steps (after filling out the tested scenarios) is to start work on resolving AttributeReferences from the SQM using the TableSpecificationGroup as a means to resolve the specific table aliases needed for each column. After that, building the rest of the tree ought to be pretty straight forward. The other major task is to still account for "Dialect variance" (join support, casting, etc). _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev