Валиков Алексей Н.
Шрифт:
□ затем выполнить шаг "
□ наконец, выполнить шаг "
Опишем более подробно алгоритм вычисления пути выборки:
□ если путь выборки является абсолютным путем, то первый его шаг выполняется в контексте корневого узла документа, который содержит контекстный узел;
□ если путь выборки является относительным путем, то первый его шаг выполняется относительно контекстного узла;
□ каждый последующий шаг пути выборки выполняется для каждого узла множества, выбранного на предыдущем шаге, — таким образом выбирается несколько множеств, которые затем объединяются — это и есть множество, выбранное на текущем шаге.
Рассмотрим процесс выполнения пути выборки
На рис. 6.2 показано логическое дерево, соответствующее этому документу.
Рис. 6.2. Логическое дерево, представляющее XML-документ
Для того чтобы лучше понять процесс выбора, проследим по шагам за тем, как будет обрабатываться этот путь.
1. Данный путь (рис. 6.3) является абсолютным путем выборки, значит, он должен выполняться, начиная от корневого узла.
Рис. 6.3. Начальный узел пути выборки
2. Первым шагом пути (рис. 6.4) является шаг
Рис. 6.4. Первый шаг
3. Вторым шагом пути (рис. 6.5) является шаг
Рис. 6.5. Второй шаг
4. На очередном шаге (рис. 6.6) мы выбираем дочерние элементы
Рис. 6.6. Третий шаг
5. Следующий шаг,
Рис. 6.7. Четвертый шаг
6. Последний шаг,
Рис. 6.8. Пятый шаг
Пути выборки соответствует продукция
Эта продукция означает, что путь выборки может быть либо относительным путем, которому соответствует продукция