Utilizar NamedQueries para bulk delete é uma má prática?

Utilizar namedquery para bulk delete é uma má prática?

por exemplo:

  DELETE PESSOA WHERE ID IN ( SELECT c.pessoa.ID FROM PAIS c WHERE c.PAIS = 'BRASIL')

caso seja, por quê?

obs: Sei que JPQL não respeita o mapeamento, por exemplo, se tivermos um cascade no mapeamento, a JPQL não irá respeitar isso, e por exemplo um @PreRemove não irá também ser executado, mas seriam essas razões para não utilizar namedquery para bulk delete?

Obrigado.

Pelo que lembro de namedquery costumava ser algo bagunçado. Ideal seria fazer isso isolado em um repositório:

EntityManager em = getEntityManager();
Query query = em.createNativeQuery("delete...");
//se precisar de parâmetro
//query.setParameter(1, parametro);
query.executeUpdate();