Dúvida sobre Modelagem - Utilizando Hibernate

Bom, estou fazendo a modelagem de um sistema, e vou utilizar Hibernate.

Tenho o seguinte até o momento: http://postimg.org/image/sjzzi5et3/

A dúvida é a seguinte: Um Paciente pode ser indicado por qualquer pessoa (seja ela, funcionario, dentista, pessoaJuridica, ou etc). Se eu fizer uma ligação de Pessoa com Paciente como o Hibernate vai entender isso ? No banco de dados ficará id_dentista, id_funcionario, id_pessoa_juridica na tabela Paciente ?

Bom nesse caso acho que você teria que usar herança com o hibernate o que não recomendo muito segui ótimo link -> http://altieresm.wordpress.com/2011/07/09/implementando-heranca-com-hibernate/

Se fosse no meu caso faria os relacionamentos nas entidade pessoafisica, funcionario , pessoajuridica e dentista.

Muito bom os tutoriais, seguinte a dica, achei a melhor forma de implementar: Tabela por Subclasse.

Posso misturar Herança + Composição da seguinte forma:

vou ter uma tabela: Pessoa, PessoaFisica e PessoaJuridica. Onde essas 2 ultimas terão referência para tabela PEssoa.

Depois vou ter uma composição com Dentista, Funcionario, Paciente com a Tabela PessoaFisica. Pois o Dentista, Funcionario e Paciente são o ID da PessoaFisica.