Функция current
Функция current
Выражение для этой функции имеет вид:
node-set current()
Функция current возвращает множество, состоящее из текущего узла преобразования.
Мы часто использовали термины текущий узел и узел контекста как синонимы: действительно, в большинстве случаев между ними нет никакой разницы, текущий узел преобразования совпадает с узлом контекста вычисления выражений. Однако бывают ситуации, когда они являются двумя различными узлами.
Представим себе, что нам нужно выбрать элементы item со значением атрибута source, равным значению этого атрибута текущего узла. Очевидно, путь выборки будет выглядеть как item[предикат], где предикат определяет условие равенства атрибутов текущего и выбираемого. Но как записать это условие? Предикат будет вычисляться в контексте проверяемого элемента item, значит, все относительные пути выборки типа @source или ./@source или self::item/@source будут отсчитываться именно от проверяемого элемента. В этом случае узел контекста и текущий узел преобразования — не одно и то же.
Для того чтобы обратиться в предикате именно к текущему узлу, следует использовать функцию current:
item[@source=current()/@source]
Это выражение выберет все дочерние элементы item текущего узла, значение атрибута source которых будет таким же, как и у него.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
current()
current() Функция current возвращает текущий (current) — не контекстный (context) — узел. Контекстный узел шаблона — это узел в выбранном наборе узлов, к которому применяется шаблон. Текущий узел, с другой стороны, это используемый в данный момент узел в таких циклах, как <xsl:for-each>.
Функция pthread_rwlock_init
Функция pthread_rwlock_init Первая функция, pthread_rwlock_init, динамически инициализирует блокировку чтения-записи. Ее текст приведен в листинге 8.2.7-8 Присваивание атрибутов с помощью этой функции не поддерживается, поэтому мы проверяем, чтобы указатель attr был нулевым.9-19 Мы
Функция sem_close
Функция sem_close Текст функции sem_close приведен в листинге 10.23.11-15 Мы закрываем оба дескриптора и освобождаем память, выделенную под тип sem_t.Листинг 10.23. Функция sem_close//my_pxsem_fifo/sem_close.с1 #include "unpipc.h"2 #include "semaphore.h"3 int4 mysem_close(mysem_t *sem)5 {6 if (sem->sem_magic != SEM_MAGIC) {7 errno =
Функция SUM
Функция SUM Ваши возможности в подведении итогов не ограничены простым подсчетом записей. Используя функцию SUM, можно генерировать итоговые результаты для всех возвращаемых записей по любым числовым полям. Например, для создания запроса, который генерирует итоги по
Функция uni()
Функция uni() Поиск/замена символа по его юникодному номеру также может быть сделана при помощи функции uni().Пример функции uni(): Boouni(107,32)Designer найдет слово Book
Функция uni()
Функция uni() Поиск/замена символа по его юникодному номеру также может быть сделана при помощи функции uni().Пример функции uni(): Boouni(107,32)Designer найдет слово Book
Хэш-функция.
Хэш-функция. Еще одно важное преимущество использования PGP состоит в том, что PGP применяет так называемую «хэш-функцию», которая действует таким образом, что в том случае какого-либо изменения информации, пусть даже на один бит, результат «хэш-функции» будет совершенно
Функция uni()
Функция uni() Поиск/замена символа по его юникодному номеру также может быть сделана при помощи функции uni().Пример функции uni(): Boouni(107,32)Designer найдет слово Book
Хэш-функция
Хэш-функция Однако описанная выше схема имеет ряд существенных недостатков. Она крайне медлительна и производит слишком большой объём данных — по меньшей мере вдвое больше объёма исходной информации. Улучшением такой схемы становится введение в процесс преобразования
Роль объекта Current
Роль объекта Current Теперь настало время с помощью того же примера раскрыть тайну текущего экземпляра и выяснить, что он собой представляет в действительности.Сама форма вызова показывает, почему текст подпрограммы (translate в классе POINT) не нуждается в дополнительной
Опорный элемент Current
Опорный элемент Current В качестве опорного элемента можно использовать Current, обозначающий текущий экземпляр класса (о текущем экземпляре см. лекцию 7). Сущность, описанная в классе A как like Current, будет считаться в нем имеющей тип A, а в любом B, порожденном от A, - имеющей тип B.Эта