Me deparei com uma situação no banco de dados com bastante frequência, em que uma determinada tabela pode ser FK para uma de várias tabelas pai diferentes. Eu já vi duas soluções para o problema, mas nenhuma delas é pessoalmente satisfatória. Estou curioso para ver outros padrões que você já viu...