HQL: Fetch Join Collections de Eager Table

Tengo cuatro mesas:

RootNode // Will return multiple root nodes 
SubNode // Will return one sub node per root node
SubNodeChildren1 // Will return multiple for each sub node
SubNodeChildren2 // Will return multiple for each sub node

y una estructura de entidad similar:

RootNode -> SubNode -> SubNodeChildren1
                    -> SubNodeChildren2

Necesito una consulta que devuelva todos losRootNodes en la mesa con suSubNode ySubNode niños inicializados. losSubNode se busca con entusiasmo, pero elSubNode los niños son vagos

Sé cómo escribir una consulta queLEFT OUTER JOIN FETCH los hijos inmediatos de una mesa e inicialícelos en consecuencia. Sin embargo, no tengo idea de cómo agarrar a los hijos de una mesa que se obtiene con entusiasmo de la tabla de nivel superior.

He intentado algo como:

SELECT rn FROM RootNode AS rn LEFT OUTER JOIN FETCH rn.SubNode.SubNodeChildren1

pero, esto siempre me da un error de que el propietario no es parte de SELECT.

Cualquier ayuda es muy apreciada.

Respuestas a la pregunta(2)

Su respuesta a la pregunta