PostgreSQL - Referencias de claves externas Tablas mutuamente excluyentes

Tengo tres tablas de base de datos: EXTRANJEROS, MONSTRUOS y TROFEOS.

Cada EXTRANJERO puede tener múltiples TROFEOS. Cada MONSTRUO puede tener múltiples TROFEOS. Cada TROFEO debe tener exactamente un GANADOR (EXTRANJERO XOR MONSTRUO).

¿Hay alguna manera de tener una clave externa en la tabla TROPHY que haga referencia a la clave primaria de un EXTRANJERO o un MONSTRUO?

¿O es más fácil tener simplemente dos tablas: una tabla ALIEN_TROPHY y una tabla MONSTER_TROPHY (aunque serían idénticas)?

Respuestas a la pregunta(1)

Su respuesta a la pregunta