Composite-id fk hibernate

Supondo estes mapeamentos:

<hibernate-mapping>
    <class name="especialista.regra.Diagnostico"  table="DIAGNOSTICOS">
        
        <composite-id name="id" class="especialista.regra.DiagnosticoId">
            <key-property name="data"
                          column="DATA_DIAGNOSTICO_ID"/>
            <key-property name="fase"
                          column="FASE_DIAGNOSTICO_ID"/>
            <key-property name="regraId"
                          column="REGRA_DIAGNOSTICO_ID"/>
        </composite-id>
...
<hibernate-mapping>
    <class name="persistencia.business.medida.Medidas" table="MEDIDAS" polymorphism="implicit" lazy="false">
        
        <composite-id name="id" class="especialista.regra.DiagnosticoId">
            <key-property name="data"
                          column="DATA_DIAGNOSTICO_ID"/>
            <key-property name="fase"
                          column="FASE_DIAGNOSTICO_ID"/>
            <key-property name="regraId"
                          column="REGRA_DIAGNOSTICO_ID"/>
        </composite-id>
        
        <one-to-one name="diagnostico"
                    class="especialista.regra.Diagnostico"
                    constrained="true"
                    cascade="all" lazy="false" foreign-key="id"/>
...

Não consigo remover um Diagnostico que esteja sendo referenciado por alguma Medida, a não ser que eu remova a Medida antes.
Gostária de automatizar a situação.

Alguem pode me ajudar?

seu relacionamento é unidirecional, vc vai precisar de um relacionamento bidirecional.

[]´s