Já virei o google de ponta cabeça, achei até algo sobre o composite-id - mas somente para XML.
Até no Faq do hibernate, tem:
Polymorphic associationsFor all three mapping strategies!
* Many-to-one: An object reference transparently mapped to a foreign key association or an association table * One-to-many: A collection of objects transparently mapped to a foreign key association or an association table * Many-to-many: A collection of objects transparently mapped to an association table * One-to-one: An object reference transparently mapped to a primary key, or unique foreign key association or an association table * Ternary: A Map containing and keyed by objects mapped to a ternary association (with or without an association table)Any association may be mapped to a foreign key which references a non-primary unique key
Foreign keys themselves may even be composed of columns, SQL formulas and/or literals
Mas eu não entendi o lance desse MAP aí…
Qual a melhor maneira de criar uma associação ternária usando anotações?