Данный пример не работает!
Не важно какое значение примет параметр 'level' (1,2,3... или вообще 'string'

выодятся только узлы текущего узла.
Скорее всего в методе определяется наличие/отсутствие данного параметра (наличие-1 уровень/осутствие-все уровни).
Может есть какие-нибудь другие способы вывести именно 3 уровня вложения от текущего узла?