XSLT
Шрифт:
<xsl:template match="@*|node">
<xsl:copy>
<xsl:apply-templates select="@*|node"/>
</xsl:copy>
</xsl:template>
<xsl:template match="NAME[. = 'Venus']">
<NAME>
The Planet of Love
</NAME>
</xsl:template>
</xsl:stylesheet>
Имеет смысл привести как можно больше примеров — примеров XPath или образцов выбора никогда не бывает слишком много. Ниже приведен содержательный ряд примеров образцов выбора:
•
PLANET
выбирает дочерние элементы <PLANET>
контекстного узла; •
/PLANETS
выбирает корневой элемент <PLANETS>
документа; •
*
выбирает все дочерние элементы контекстного узла; •
PLANET[3]
выбирает третьего ребенка <PLANET>
контекстного узла; •
PLANET[last]
выбирает последнего ребенка <PLANET>
контекстного узла; •
PLANET[NAME]
выбирает детей <PLANET>
контекстного узла, имеющих детей <NAME>
; •
PLANET[DISTANCE]/NAME
выбирает все элементы <NAME>
элементов <PLANET>
, содержащих по крайней мере один элемент <DISTANCE>
; •
PLANET[DISTANCE]/PLANET[DAY]
выбирает все элементы <PLANET>
элементов <PLANET>
, в которых элемент <PLANET>
содержит по крайней мере один элемент <DISTANCE>
, и элемент <PLANET>
содержит по крайней мере один элемент <DAY>
; •
РLANETS[РLАNET/DAY]
выбирает все элементы <PLANETS>
, содержащие элементы <PLANET>
как минимум с одним элементом <DAY>
; •
PLANET[DISTANCE][NAME]
выбирает все элементы <PLANET>
, имеющие элементы <DISTANCE>
и <NAME>
; •
PLANETS/PLANET[last]
выбирает последний элемент <PLANET>
в каждом элементе <PLANETS>
; •
*/PLANET
выбирает всех внуков <PLANET>
контекстного узла; •
/PLANETS/PLANET[3]/NAME[2]
выбирает второй элемент <NAME>
третьего элемента <PLANET>
элемента <PLANETS>
; •
//PLANET
выбирает всех потомков <PLANET>
корня документа; •
PLANETS//PLANЕТ
выбирает потомков элемента <PLANET>
детей элемента <PLANETS>
контекстного узла; •
//PLANET/NAME
выбирает все элементы <NAME>
, дочерние по отношению к родителю <PLANET>
; •
РLАNETS//PLАNET/DISTАNСЕ//РЕRIНЕLION
выбирает элементы <PERIHELION>
везде внутри элемента <DISTANCE>
элемента <PLANET>
, везде внутри элемента <PLANETS>
; •
@UNITS
выбирает атрибут UNITS
контекстного узла; •
@*
выбирает все атрибуты контекстного узла; •
*[@UNITS]
выбирает все элементы с атрибутом UNITS
; •
DENSITY/@UNITS
выбирает атрибут UNITS
в элементах <DENSITY>
; •
PLANET[not(@COLOR) or not(@SIZE)]
выбирает элементы <PLANET>
, не имеющие обоих атрибутов COLOR
и SIZE
; •
PLANETS[@STAR="Sun"]//DENSITY
выбирает любой элемент <DENSITY>
с элементом-предком <PLANETS>
, имеющим атрибут STAR
со значением "Sun
"; •
PLANET[NAME="Venus"]
выбирает детей <PLANET>
контекстного узла, имеющих детей <NAME>
с текстом "Venus
"; •
PLANET[NAME[1]="Venus"]
выбирает все элементы <PLANET>
, у которых в первом элементе <NAME>
содержится текст в "Venus
"; •
DAY[@UNITS!="million miles"]
выбирает все элементы <PLANET>
, атрибут UNITS
которых не равен "million miles
"; •
PLANET[@UNITS="days"]
выбирает всех детей <PLANET>
контекстного узла, имеющих атрибут UNITS
со значением "days
"; •
PLANET[6][@UNITS="days"]
выбирает шестого ребенка <PLANET>
контекстного узла, только если у этого ребенка есть атрибут UNITS
со значением "days
", — что также можно записать как PLANET[@UNITS="days"][6]
; •
PLANET[@COLOR and @UNITS]
выбирает всех детей <PLANET>
контекстного узла, имеющих оба атрибута COLOR
и UNITS
; •
*[1][NAME]
выбирает любой элемент <NAME>
, являющийся первым ребенком своего родителя; •
*[position < 5]
выбирает первые пять детей контекстного узла; •
*[position < 5][@UNIT]
выбирает первые пять детей контекстного узла с атрибутом UNITS
;
Поделиться:
Популярные книги
Московское золото и нежная попа комсомолки. Часть Пятая
5. Летчик Леха
Фантастика:
попаданцы
5.00
рейтинг книги
Газлайтер. Том 2
2. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Девять драконов
Детективы:
триллеры
5.00
рейтинг книги
Бастард Императора. Том 12
12. Бастард Императора
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Дважды одаренный. Том III
3. Дважды одаренный
Фантастика:
альтернативная история
аниме
фэнтези
фантастика: прочее
юмористическое фэнтези
5.00
рейтинг книги
Ермак. Противостояние. Книга одиннадцатая
11. Ермак
Фантастика:
попаданцы
альтернативная история
4.50
рейтинг книги
Меткий стрелок. Том II
2. Меткий стрелок
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Тринадцатый IX
9. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
сказочная фантастика
5.00
рейтинг книги
Неучтенный элемент. Том 3
3. Антимаг. Вне системы
Фантастика:
фэнтези
5.00
рейтинг книги
Том 11. Рассказы. Очерки. Публицистика. 1894-1909
Проза:
классическая проза
5.00
рейтинг книги
На границе империй. Том 3
3. Фортуна дама переменчивая
Фантастика:
космическая фантастика
5.63
рейтинг книги
Травница Его Драконейшества
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Я спас ссср! том iv
4. Я спас СССР
Фантастика:
альтернативная история
6.62
рейтинг книги
Ваше Сиятельство 7
7. Ваше Сиятельство
Фантастика:
боевая фантастика
аниме
5.00