it'd look something like:
Code:
<class name="D">
<composite-id ...>
<key-many-to-one name="a" class="A" column="col1"/>
<key-many-to-one name="b" class="B" column="col2"/>
<key-many-to-one name="c" class="C">
<column name="col3"/>
<column name="col4"/>
</key-many-to-one>
<key-property name="?" column="col5"/>
</composite-id>
</class>
yummy! ;)
Have a look at:
http://www.hibernate.org/hib_docs/v3/reference/en/html/mapping.html#mapping-declaration-compositeid
and
http://www.hibernate.org/hib_docs/v3/reference/en/html/components.html#components-compositeid