Что такое //
в XSLT? (Например $currentPage//node
)Что такое // в XSLT?
ответ
, что// in xslt? например ($ CurrentPage // узел)
В XPath аббревиатуры:
Значение некоторых атрибутов инструкций XSLT (например, атрибут select
) должен быть Выражение XPath.
Поэтому
($currentPage//node)
обозначает
($currentPage/descendant-or-self::node()/node)
Это выбирает все элементы, названные node
, которые являются дочерними узлами, которые либо содержащиеся в переменной $currentPage
или являются потомками узлов, которые содержатся в переменная $currentPage
.
Обратите внимание, что в предоставленном выражении node()
является узла-тестом (он выбирает все типы узлов на descendant-or-self::
оси, такие как элементы, текстовые узлы, комментарии и обработку-инструкции.
On с другой стороны, somePath/node
является обобщающим для somePath/child::node
и выбирает только элементы с именем node
, которые являются потомками узла контекста.
я настоятельно рекомендую не использовать имя node
для элемента для того, чтобы избежать это путаница.
@Dimitre - Я задираю то, что в противном случае хороший ответ, но неверный абзац неверен. Они не будут дочерними узлами контекста, они будут дочерними узлами, выбранными «somePath» – Alohci
@Alohci: Да, и «контекстным узлом» в любой момент является узел, из которого следующий шаг местоположения Выполнено - это означает, что 'child :: node' определяется в' somePath/child :: node', контекстным узлом является любой узел, который выбирается 'somePath'. Итак, мы и я говорим то же самое :) –
'node()/node' запутан.'node()' является предопределенной функцией, а 'node' является переменной-заполнителем? 'node()/foo' будет менее запутанным. – Joren
Это выглядит как это часть XPath, который может быть использован в рамках XSLT для поиска по дереву для заданных узлов, в соответствии путь. Это аналогичная технология для селекторов CSS.
двойной слэш выполняет поиск потомков на любой глубине.
Например:
elementa//elementb
будет соответствовать любому elementb элемент, который является потомком из Elementa элемента, даже если существуют другие уровни между ними, например:
<elementa>
<someelement>
<elementb>
</elementb>
</someelement>
</elementa>
- 1. Что такое cstyle в XSLT?
- 2. Что такое XSLT Результаты Деревья
- 3. Что такое символ @ (at), используемый в XSLT?
- 4. Что такое сильные стороны XSLT и приложения?
- 5. Что такое Styles.render эквивалент XSL/XSLT?
- 6. Что такое XSLT-процессор для .NET?
- 7. Что такое: или n1: в этой таблице стилей xslt?
- 8. Что такое пространство имен для функций карты в XSLT 3.0?
- 9. Что такое полосатая ошибка?
- 10. Что такое общая реализация для серверной XSLT + .Net?
- 11. Что такое последний/самый продвинутый синтаксический анализатор xslt PHP?
- 12. что такое лучший способ написать xslt -fo из xsl + xml
- 13. I18n для XSLT (или что такое gettext() и xgettext для C++ для XSLT)?
- 14. Что такое хороший шаблонный двигатель?
- 15. Что означает двоеточие в XSLT?
- 16. Что такое трансформация и что такое Transform?
- 17. Что такое "?" делать? Что такое __FILE__?
- 18. Что такое скрипка и что такое DL?
- 19. Что такое PHPCI - что такое сборка?
- 20. Что такое Dim, что такое Факт?
- 21. Что такое структура разработки? Что такое IDE?
- 22. Что такое поток? Что такое `initialize`?
- 23. Что означает node() | @ * XSLT?
- 24. XSLT - Что значит "/." делать?
- 25. Что такое '.' в Windows?
- 26. Что такое ":" в PHP?
- 27. Что такое @ $ в perl?
- 28. Что такое '| = 'в python?
- 29. Что такое функция «в»?
- 30. Что такое === в javascript?
Хороший вопрос (+1). См. Мой ответ для полного подробного объяснения. –