XSLT - [28]
>
>
>
>
> .
> .
> .
С другой стороны, мы только нашли корневой узел, а дерево данных planets.xml имеет ряд узлов под корневым узлом:
>
>
>
>
>
>
>
>
>
>
>
> .
> .
> .
Для обработки не только одного корневого узла можно использовать >, добавив этот элемент следующим образом:
>
>
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
>
>
>
>
>
> .
> .
> .
Этот элемент дает указание процессору XSLT просмотреть все дочерние узлы корневого узла и попытаться найти шаблон, которому эти узлы удовлетворяют. Например, вам может потребоваться заменить все элементы Planet> на >. Элементы > — дочерние узлы элемента >, поэтому сначала я добавил новый шаблон для >, что говорит процессору о том, что следует продолжать поиск дочерних узлов:
>
>
>
>
>
>
>
>
>
>
> .
> .
> .
Теперь можно добавить еще один шаблон для следующего уровня, включающего элементы Planet>. В этом случае я просто заменю каждый элемент > элементом буквального результата > (листинг 2.3).
>
>
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/>
>
>
>
>
>
>
>
>
>
>
> Planet
>
>
>
Вот результат применения этой таблицы стилей:
>
> <Р>
> Planet
> Р>
> <Р>
> Planet
> Р>
>
> Planet
> Р>
>
Как видите, от элемента Planet> ничего не осталось. Все, что осталось, — три элемента буквального результата >, которые заменили три элемента >.
ПРОПУСК АТРИБУТА SELECT
Если опустить атрибут select, будут обрабатываться только дочерние узлы текущего узла, не включающие атрибуты или узлы пространств имен, так как они не считаются дочерними. Если вы хотите обрабатывать узлы этих видов, необходимо использовать атрибут select, как будет рассмотрено в главе 3.
Все это занимательно, но малопригодно практически. Было бы гораздо лучше, если бы мы, например, могли обратиться к фактическому значению каждого элемента (такому как имя каждой планеты) и работать с этими данными. И это, конечно, возможно.
Доступ к значениям узлов
Получить доступ к значению узла можно при помощи элемента >, у которого есть два возможных атрибута:
• >select (обязательный). Выходное значение. Устанавливается в выражение;
• disable-output-escaping (необязательный). Указывает, что символы, такие как >>, будут отправляться в выходной поток как есть, не изменяясь на >>. Значения этого атрибута: >yes или >no.
Элемент > всегда пуст.
При помощи атрибута >select можно указать, значение какого узла требуется получить. Например, вам может потребоваться значение узла > в каждом элементе >, то есть текст, заключенный в этом узле. Это можно сделать следующим образом (листинг 2.4).
>
>
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
>
>
>
>
>
>
>
>
>
>
>
>
>
>
Значение узла, содержащего текст, будет просто текстом, поэтому результат применения этой таблицы стилей к >planets.xml следующий:
>
Mercury>
Venus>
Earth>
>НТМL>
АТРИБУТ DISABLE-OUTPUT-ESCAPING
Атрибут disable-output-escaping элемента
Предположим, нам нужно осуществить нечто более сложное — например, преобразовать данные из >planets.xml в HTML-таблицу в новом файле >planets.html (рис. 2.1), как мы видели в главе 1. Теперь это можно сделать при помощи >.
Рис. 2.1. Planets.html в Internet Explorer
Здесь важно учесть один момент. В >planets.xml формально не задан порядок элементов >, >, > и >, однако важно, чтобы эти элементы обрабатывались в определенном порядке в соответствии с заголовками таблицы. Поэтому я буду использовать элементы > в том порядке, в котором они требуются в таблице HTML.
Таким образом, чтобы создать HTML-таблицу, изображенную на рис. 2.1, я сначала ищу элемент
Когда в нашей жизни появился Интернет, миллионы людей на планете подумали, что он откроет всем мир колоссальных возможностей и что это величайший цивилизационный сдвиг со времен промышленной революции… Однако что мы знаем о темной стороне Сети?Раскрыть глаза человечеству взялся Эндрю Кин, которого в Кремниевой долине назвали Антихристом за резкую критику плутократов вроде Марка Цукерберга, зарабатывающих несметные богатства на использовании персональных данных обычных пользователей. Кин рассказывает, как владельцы Google, Facebook, Twitter, Instagram, прочих «цифровых гигантов», действуя по принципу «Победитель получает всё», усугубляют безработицу и экономическое неравенство, как интернет-бизнес породил целую индустрию добычи и переработки наших с вами личных данных.Детально воссозданная технологическая и экономическая картина Интернета будет интересна всем, кто хочет пользоваться его благами с минимальным ущербом для собственной безопасности.
Системное, компактное и хорошо структурированное руковод ство по всем аспектам функционирования корпоративных сайтов. Книга обобщает богатый практический опыт ее авторов (более 700 успешных проектов в сфере веб-разработок и сотни печатных и электронных публикаций). На страницах книги вы найдете множество рекомендаций, примеров, методик и контрольных списков, которые позволят сделать ваш веб-сайт мощным бизнес-инструментом.Книга адресована директорам по маркетингу и другим специалистам, в чьи обязанности входит управление корпоративными веб-сайтами.В качестве важного дополнения к настояшему изданию рекомендуем сайт www.webdevelopment.ru, на котором вы можете оставить свои комментарии, ознакомиться с дополнительными материалами, задать вопросы, пообщаться с авторами.
Автор предлагает бесплатную, проверенную на практике, супернадежную и эффективную комплексную защиту от вирусов, шпионских программ, вторжения любопытных хакеров — любых попыток несанкционированного вторжения в ваш компьютер.Пользуясь советами автора, вы сможете не только выстроить надежную систему безопасности, но и контролировать те сайты, которые посещают ваши дети, а также без проблем восстановить операционную систему после любого сбоя и даже полного обрушения. Книга станет настольным пособием и у продвинутых пользователей, и у чайников благодаря простому и краткому изложению материала с подробными иллюстрациями каждого шага.
Количество пользователей Твиттера давно превысило цифру 150 миллионов. Российских твиттерян уже больше 500 000 и прирост осуществляется совершенно немыслимыми темпами – за последний год количество русскоязычных пользователей Твиттера выросло в 26 раз. А после регистрации личного аккаунта президентом Дмитрием Медведевым в России случился буквально тви-бум.Что же представляет собой «чирикающий» сервис? Чем он отличается от других социальных сетей и для чего он может быть полезен? С чего начать, как пользоваться арсеналом возможностей, которые предоставляет сам Твиттер и сотни сопутствующих сервисов? Как создать корпоративный Твиттер и заставить его работать на свой бизнес? На эти и многие другие вопросы вы найдете ответы в этой книге.
Самоучитель поможет освоить программу Skype — лидера в области телефонных разговоров по Интернету — и присоединиться к многомиллионной армии ее обладателей. С позиции российского пользователя описаны основные вопросы, начиная от загрузки и инсталляции программы, заканчивая проведением телеконференций и мультичатов. Особое внимание уделено безопасности общения. Рассмотрены дополнительные сервисы Skype, как платные, так и бесплатные. Приведены способы оплаты услуг Skype, возможности по управлению собственным счетом в программе Skype.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Что общего между самыми востребованными профессиями и стремительным увеличением количества информации в мире? Ответ: язык структурированных запросов (SQL). SQL — рабочая лошадка среди языков программирования, основа основ для современного анализа и управления данными. Книга «SQL: быстрое погружение» идеальна для всех, кто ищет новые перспективы карьерного роста; для разработчиков, которые хотят расширить свои навыки и знания в программировании; для любого человека, даже без опыта, кто хочет воспользоваться возможностями будущего, в котором будут править данные.
Даже плохой программный код может работать. Однако если код не является «чистым», это всегда будет мешать развитию проекта и компании-разработчика, отнимая значительные ресурсы на его поддержку и «укрощение». Эта книга посвящена хорошему программированию. Она полна реальных примеров кода. Мы будем рассматривать код с различных направлений: сверху вниз, снизу вверх и даже изнутри. Прочитав книгу, вы узнаете много нового о коде. Более того, вы научитесь отличать хороший код от плохого. Вы узнаете, как писать хороший код и как преобразовать плохой код в хороший. Книга состоит из трех частей.
Алгоритмы - это всего лишь пошаговые алгоритмы решения задач, и большинство таких задач уже были кем-то решены, протестированы и проверены. Можно, конечно, погрузится в глубокую философию гениального Кнута, изучить многостраничные фолианты с доказательствами и обоснованиями, но хотите ли вы тратить на это свое время? Откройте великолепно иллюстрированную книгу и вы сразу поймете, что алгоритмы - это просто. А грокать алгоритмы - это веселое и увлекательное занятие.
Книга "Изучаем Python" - это ускоренный курс, который позволит вам сэкономить время и сразу начать писать работоспособные программы (игры, визуализации данных, веб-приложения и многое другое). Хотите стать программистом? В первой части книги вам предстоит узнать о базовых принципах программирования, познакомиться со списками, словарями, классами и циклами, вы научитесь создавать программы и тестировать код. Во второй части книги вы начнете использовать знания на практике, работая над тремя крупными проектами: создадите собственную "стрелялку" с нарастающей сложностью уровней, займетесь работой с большими наборами данных и освоите их визуализацию, и, наконец, создадите полноценное веб-приложение на базе Django, гарантирующее конфиденциальность пользовательской информации. Если вы решились разобраться в том что такое программирование, не нужно ждать.