10 ошибок XSLT-программистов

Tags:

Перевод статьи «The ten most common XSLT programming mistakes», ссылка на которую недавно опубликована в клубе XSLT на Я.ру.
Недавно я сказал в ответ пользователю, что он попадает в наиболее распространённые ловушки для программистов на XSLT. Вместо того, чтобы быть раздраженным, что я почти ожидал, он поблагодарил меня и спросил, не мог бы я рассказать [...]

Continue reading » No comments

2.4 Структура преобразования

Tags:

В заключительной частьи нашего представления XSLT мы посмотрим на содержание самих преобразований. Мы поясним всё в наших преобразованиях и обсудим другие подходы, которые мы могли бы применить.
2.4.1 Элемент <xsl:stylesheet>
Элемннт xsl:stylesheet — это обычно корневой элемент XSLT-преобразования.
<xsl:stylesheet
   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
   version="1.0">

Continue reading » No comments

Эффективное использование рекурсии в XSL

Tags:

Перевод статьи Use recursion effectively in XSL.
Введение в XSL-рекурсию и приёмы для оптимизации её использования.
Эффективное и рациональное использование XSL-преобразований требует понимания, как использовать XSL в качестве функционального языка, что означает понимание рекурсии. Эта статья знакомит с ключевыми идеями рекурсии и особенностей её использования в XSL. Также объяснены приёмы для оптимизации преобразования XML и избегания [...]

Continue reading » No comments

XSLT — результативные технологии программирования

Tags:

Перевод документа XSLT — Efficient Programming Techniques, который мне очень помог.
С ростом популярности XML как средства взаимодействия с различными системами, все больше и больше организаций приходят к XML, чтобы решить свои вопросы функциональной совместимости. Вместе с попытками архитекторов достигнуть ясного разделения между отображением и бизнес-логикой, XSLT становится важнее. XSL, по сути, — это XML-документ (дерево, согласно [...]

Continue reading » 1 Comment

Глава 2. Неизменный «Hello, world»

Tags:

Сначала напомню, что это перевод глав из книги «XSLT» издательсва O'Reilly.
В следующих главах мы потратим много времени на XSLT, XPath и различные продвинутые функции, используемые для преобразования XML-документов. Сначала, несмотря ни на что, мы погрузимся в короткий пример, чтобы проиллюстрировать, как работают преобразования.

Continue reading » No comments

Шаблон «Hello, world!»

Tags:

Первый написанный XSLT-шаблоны — это страница, выводящая надпись «Hello, world!». Для работы с кодом используем программу IntelliJIDEA. В блоге Вадима Макишвили о работе с ней рассказано достаточно подробно.
Свой первый шаблон мы ассоциируем с главной страницей.

Continue reading » No comments

Сайт на XSL. Подготовка

Tags:

Итак, мы делаем сайт и учим XSLT.
Сайт у нас будет на тему «календарь менструального цикла», потому что мы типа профессионалы, и для нас нет запретных тем.
Движок на PHP, а шаблоны на XSLT. Их я и буду описывать.

Continue reading » No comments

Простые числа и XPath

Tags: ,

Иногда мы на работе решаем интересные задачки. Вот, например, одна (почти первая) в постановке nop`а:
Частный случай:
Дан такой xml:
<items>
   <item>1</item>
   <item>2</item>
   ...
   <item>N-1</item>
   <item>N</item>
</items>
т.е. выписаны все натуральные числа от 1 до N включительно. Про N ничего заранее не известно —
большое, маленькое, еще какое-то — мы не знаем.
Нужно. Написать xpath, выбирающий все item'ы с простыми числами.
Подчеркиваю — xpath.

Continue reading » No comments

1.3 Установка Xalan

Tags:

В этой части я покажу, как устанавливать XSLT-процессор Xalan. В следующей главе мы создадим наше первое XSLT-шаблон и используем его для преобразования XML-документа.
Процесс установки предельно прост при условии, что у на вашей машине уже установлен Java Runtime Environment (JRE). Хотя совсем немного кода, который мы увидим в книге, используют Java, Java нужна для работы [...]

Continue reading » No comments

Функции string в XSLT

Tags:

В спецификации описано, как работают функции string. Поясняется, что при приведении списка узлов к строке, результатом будет строковое значение первого узла. На примере это будет выглядеть следующим образом:

Continue reading » No comments