Валиков Алексей Н.
Шрифт:
Мы специально привели все преобразование целиком, чтобы показать, что выходящий элемент будет принадлежать нулевому пространству имен тогда и только тогда, когда для него не было объявлено пространства имен по умолчанию. Попробуем посмотреть, что получится, если пространство имен по умолчанию будет объявлено:
Результатом в этот раз будет элемент с локальной частью имени "
Создание узлов атрибутов
Элемент xsl:attribute
Этот элемент задается конструкцией вида:
Использование элементов
Показаний к применению
□ требуется создать атрибут с не известным заранее именем или пространством имен;
□ требуется создать атрибут в пространстве имен, которое является для процессора значащим (например, в пространстве имен XSLT);
□ требуется создать атрибут, вычисление значения которого не может быть реализовано одним или несколькими XPath-выражениями (например, условный вывод атрибута).
Приведем некоторые примеры.
Покажем, как преобразовать структуру вида
в элемент
Для достижения цели воспользуемся следующим преобразованием.
Элемент
□ литерального элемента результата;
□ элемента
□ элемента
□ элемента
При этом, как было показано в предыдущем примере,