Hibernate - Como recuperar árvore com hql?

bom dia Gente,

seguinte, gostaria de realizar uma consulta para montar uma árvore. Tenho as seguintes entidades:

@Entity
public class Node {
	
	@Id
	@GeneratedValue
	@Column(name = "NODE_ID")
	private Integer id;

	@JoinColumn(name = "PARENT_ID", referencedColumnName = "NODE_ID")
	@ManyToOne(optional = true, fetch = FetchType.EAGER)
	private Node parent;
	
	@JoinColumn(name = "DOCUMENTO_ID", updatable = false, referencedColumnName = "DOCUMENTO_ID")
	@ManyToOne(optional = false, fetch = FetchType.EAGER)
	private Document document;
							
	@OneToMany(cascade = CascadeType.REMOVE, fetch = FetchType.EAGER, mappedBy = "parent", orphanRemoval = true)
	private List<Node> children;
	
	// getts e setts
}

e

@Entity
public class Document {
	
	@Id
	@GeneratedValue
	@Column(name = "DOCUMENTO_ID")
	private Integer id;
	
	@Column(name = "NOME")
	private String nome;

	@Column(name = "CONTEUDO")
	private String conteudo;
	
	// getts e setts
}

Agora, preciso recuperar Node com seus filhos. Para isto estou fazendo a consulta assim:

List<Node> nodes = entityManager.createQuery("select n from Node n " +
				" where n.document.id = :idDocumento " +
				" order by n.id asc")
				.setParameter("idDocumento", idDocumento)
				.getResultList();

Só que esta consulta só está trazendo o nó pai. Quero que traga os filhos também. Tem como fazer utilizando hql? Como se faz? :? desde já, agradeço!!