It's a clusterfuck, sorry about that. We are all wrong except Max-the-manager. Oh the irony ;)
heey! :)
logicalColumnName is the name by which a column should be referred in metadata descriptors (like unique constraints, indexes etc). I don't think a user needs to use the logical mapping in HBM files (the metadata structure don't require it contrary to annotations).
Anyway, the logical name should never appear in a physical column name, so HbmBinder #fail.
http://opensource.atlassian.com/projects/hibernate/browse/HHH-4077

I've attached a patch and applied it to trunk. It probably needs a quick test on your side and can be retrofitted to older versions.
Doesn't this change the behavior radically ? ...and how should our validator know which sequence of calls it should use ...i hate bugs ;0)

Looking in fisheye this change were done almost 4 years ago... http://fisheye.jboss.org/changelog/Hibernate?cs=8918
for http://opensource.atlassian.com/projects/hibernate/browse/ANN-176 where it seems to be done very deliberately ?

are you sure this is a proper change ?
FTR
Hibernate Annotations uses a different naming strategy than core for backward compatibility reasons.
JPA defaults are not Hibernate Core defaults
http://anonsvn.jboss.org/repos/hibernate/core/trunk/annotations/src/main/java/org/hibernate/cfg/EJB3NamingStrategy.java
Yes, but that we will just pick up automatically since it does not change the sequence of calls done to the namingstrategy.

Anyway, for now we'll just focus on the JPA behavior since that is the most relevant for JPA Project validation at least ;)

/max