Вот спецификация(А) на какую-нибудь железобетонную чушку: 0.5 кубометра бетона по спецификации (Б) и 150 кг армокаркасов.
Спецификация (Б) в свою очередь содержит информацию о составе того самого бетона - 1200 кг щебенки, 500 кг цемента, 0.6 кубометра песка. Причём для щебня может быть указана своя спецификация (В), в которой указано что тонна такой щебенки содержит 500 кг шлака и 500 кг гравия к примеру.
Если я захочу получить полный список всех материалов, которые нужны на изделие, то мне придётся обойти всё дерево, это вроде несложно делается.
Вопрос: возможно ли получить такой список не циклом обхода дерева, а не динамически сформированным запросом, если общая вложенность спецификаций друг в друга неизвестна?