![]() |
|
![]() |
||||||
![]() |
![]() При использовании XSLT-преобразованй следует помнить, что в разных брузерах по разному реализуется алгоритм преобразований. В приведенном примере учитываются особенности преобразований в браузерах Mozilla и Internet Explorer. Напомним, что браузеры Opera и Safari не поддерживают ни метод transformNode(), ни объект XSLTProcessor(). Обеспечить поддержку можно, к примеру, перкладыванием процесса преобразования на сторону сервера, а в самом скрипте получать уже результат преобразования. Читать дальше... ie, mozilla, opera, safari, xml, xsl, xslt, браузер, преобразования, трансформация![]() Алгоритмы → Группировка → XSLTРешение задачи группировки основывается на двух правилах:
Чтобы выполнить данную проверку обратимся к функции generate-id. Функция generate-id возвращает уникальный идентификатор первого в порядке просмотра документа узла переданного ей множества. Значит для того, чтобы проверить, является ли узел первым узлом группы, достаточно сравнить его уникальный идентификатор со значением уникального идентификатора множества узлов этой группы. Читать дальше... XSLT не предоставляет стандартных операторов для определения принадлежности одного множества другому, нахождения пересечений, разности множеств и так далее.
Рассмотрим иной подход к реализации операций над множествами, основанный на очень простом определении принадлежности узла множеству. Узел node, принадлежит множеству nodeset тогда и только тогда, когда выполняется равнество:
count($nodeset) = count($node | $nodeset). Читать дальше... В русском языке существительные с числительными могут быть в единственном, двойственном и множественном числе: один арбуз, два арбуза, пять арбузов (двойственное число - это почти исчезнувшая в русском языке грамматическая конструкция, встречающаяся только в этом случае). Следующий шаблон поможет вам просклонять нужное слово в зависимости от числительного. Читать дальше... В XSLT нет встроенного оператора, который бы позволил установить принадлежность узла некоторому множеству. Для этой цели используется способ основанный на функции count, которая возвращает количество узлов множества Читать дальше... Интересный способ проверки, является ли значение некоторой переменной нечисловым или нет: выражение $x!=$x обратится в "истину" только в том случае, если значение $x является NaN, то есть не-число. Читать дальше... check, is_numeric, nan, xsltК сожаления в XSLT отсутствует конструкция цикла for, а лишь присутствует конструкция цикла for-each. Но зачастую возможности for-each не устраивают. Слудующий шаблон реализует конструкцию цикла for. Читать дальше... ![]() |
Меню
Подписка на RSS:
Поиск
Облако тегов
.net
array
asp
bash
browser
charset
check
class
clean
convert
count
create
css
curl
database
date
delete
directory
download
element
email
equivalent
extension
file
find
form
format
function
get
height
html
http
ie
image
javascript
jquery
load
mysql
number
page
perl
php
random
scriplet
send
shell
size
sql
string
text
time
url
utf8
variable
vb
visual basic
width
window
xml
xslt
|
![]() |
![]() |
![]() |
||
![]() |
![]() |