We assume in many places that an xblock can only have one parent. I do agree about the ancestor variable name and will change the code.