Как свободно ходить по дереву json в обоих направлениях?
Приветствую, задача простая: организовать опросник в json c возможностью простого возврата на предыдущий шаг.
Каждый следующий вопрос зависит от текущего ответа. Получается дерево.
Представляю это так: текущая нода содержит вопрос и массив ответов. Каждый ответ это такая же нода, которая содержит следующий вопрос и массив ответов.
Для обработки любой ноды используется один и тот же метод. Вложенные ноды я могу получить из текущей, т.к. они там по определению находятся.
Но как мне тогда вернуться на уровень выше? Подозреваю, что есть библиотеки, которые позволяют знать из текущего элемента JSON дерева структуру всего дерева. Примерно как это происходит в js с DOM HTML-страницы.