HQL Hibernate

Olá pessoal como vai todos, entao estou com uma dúvida referente ao Hibernate tenho o seguinte código:

	public List<OuvManifesto> listarPorCidadao(Long id, int pagina) {
		String hql = "from OuvManifesto man where man.cidadao.cidadao = " + id
				+ " order by dataEnvio ";
		return daoOuvManifesto.listarManifporIdPg(pagina, id, hql);
				
	}

Minha tabela tem o campo cidadao mas o porque que ele chama:

man.cidadao.cidadao 

Isso esta correto ou o correto seria:

	public List<OuvManifesto> listarPorCidadao(Long id, int pagina) {
		String hql = "from OuvManifesto man where man.cidadao = " + id
				+ " order by dataEnvio ";
		return daoOuvManifesto.listarManifporIdPg(pagina, id, hql);
				
	}

Não sei se o Hibernate faz alguma coisa pelo fato de chamar o campo duas vezes "man.cidadao.cidadao " Grato