Часть 1 (Э.Н. Самохвалов, Г.И. Ревунков, Ю.Е. Гапанюк - Методические указания по выполнению лабораторных работ по курсу XML-технологии), страница 2

PDF-файл Часть 1 (Э.Н. Самохвалов, Г.И. Ревунков, Ю.Е. Гапанюк - Методические указания по выполнению лабораторных работ по курсу XML-технологии), страница 2 XML технологии (17435): Книга - 4 семестрЧасть 1 (Э.Н. Самохвалов, Г.И. Ревунков, Ю.Е. Гапанюк - Методические указания по выполнению лабораторных работ по курсу XML-технологии) - PDF, страниц2018-01-09СтудИзба

Описание файла

Файл "Часть 1" внутри архива находится в папке "Самохвалов Э.Н., Ревунков Г.И., Гапанюк Ю.Е. - Методические указания по выполнению лабораторных работ по курсу XML-технологии". PDF-файл из архива "Э.Н. Самохвалов, Г.И. Ревунков, Ю.Е. Гапанюк - Методические указания по выполнению лабораторных работ по курсу XML-технологии", который расположен в категории "". Всё это находится в предмете "xml технологии" из 4 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "xml технологии" в общих файлах.

Просмотр PDF-файла онлайн

Текст 2 страницы из PDF

Результатвыполнения такой же, как в предыдущем запросе.10A/BЭлемент B, вложенный в элемент A.A//BЭлемент B, вложенный на любой глубине в элемент A.Обратите внимание, что элемент B со значением B2 невложен непосредственно в элемент А./A/*Любой элемент, вложенный в A, вложенный вкорневой элемент.11/A/E/BЭлемент B, вложенный в E, вложенный в A,вложенный в корневой элемент.A/B | A/CВсе элементы B или C, вложенные в A, символ « | » –оператор объединения множеств.A//*Все элементы, вложенные в А на любой глубине.12//B/@bАтрибуты b, вложенные в элементы B. Символ @означает, что за ним следует название атрибута, а неэлемента.//*/@*Все атрибуты всех элементов документа.Обратите внимание, что если в запросе используется //, то такой запросможет «подтягивать» элементы на более высокий уровень иерархии.

Например, взапросе A//*, элементы E и G возвращаются на одном уровне иерархии, хотя всоответствии с примером элемент G вложен в E.Если после названия элемента стоит выражение в квадратных скобках, то этоозначает, что к элементу применяется фильтр. Выбираются не все элементы, атолько те, которые удовлетворяют фильтру.13В качестве фильтра может быть задано число, которое определяет номерэлемента.

Это похоже на использование индексов в массиве. Или в качествефильтра может быть задано условие поиска.A/B[1]Первый элемент B, вложенный в A.(ВнекоторыхреализацияхXPathнумерацияначинается с 0, в некоторых с 1).A/B[last()]Последний элемент B, вложенный в A.Функция last() возвращает индекс последнего элементав последовательности.14//A[(B or C) and E]Поиск такого элемента A, в который вложеныэлементы B или C и вложен элемент E. Значенияэлементов B, C, E в данном запросе не важны.

Здесьпроверяется только наличие вложенных элементов.//A[B and not(Z)]Поиск такого элемента A, в который вложен B и невложен Z.//A[B!="str1"]Поиск такого элемента A, у которого есть вложенныйэлемент B не равный «str1».15//B[@b="b1"]Поиск элемента B, у которого есть атрибут b=b1.Символ @ означает, что за ним следует названиеатрибута, а не элемента.//C[. = "C1"]Поиск элемента C = C1.

Точка означает, чтопроверяется значение текущего элемента./A//E[@e="e1" and Все элементы G, непосредственно вложенные в E.B="B2"]/GЭлемент Е вложен в A на любой глубине. Элемент Анепосредственно вложен в корневой элемент. ЭлементE должен содержать атрибут e=e1 и вложенныйэлемент B=B2.16//A[B="B1"]/Элемент B=B2 должен быть вложен в Е. Элемент ЕE[@e="e1"]/B[.="B2"] должен содержать атрибут e=e1. Элемент Е долженбыть вложен в элемент А. Элемент А долженсодержать вложенный элемент B=B1.Этотпримерприменятьсякпоказывает,чтоэлементамнафильтрылюбоймогутглубиневложенности и фильтрами могут быть снабженынесколько элементов в запросе.//number[@id<2 or@id>2]Поиск элементов number, у которых атрибут id<2 илиатрибут id>2.17//text()Все текстовые узлы документаДля сравнения могут быть использованы следующие операторы: =(равенство), != (неравенство), <, <=, >, >=.В некоторых реализациях XPath знаки <, >, заменяются на соответствующиессылки на символы < и >.

Тогда операторы сравнения <=, >= будут записаныкак <=, >=.Для выборки конструкций определенного типа (иногда их называют узламидокумента) можно использовать следующие функции: text() – любой текстовый узел. node() – любой узел, который не является атрибутом и корневымэлементом. comment() – комментарий. processing-instruction() – инструкция обработки.3.4 Введение в XSLTДля преобразования XML–документов в другие форматы была разработанатехнология XSLT.XSLT расшифровывается как Extensible Stylesheet Language Transformations,расширяемый язык стилевых преобразований.Как правило, с помощью XSLT выполняют три варианта преобразований:1.

Из XML в HTML. Этот вариант часто применяется в Web-приложениях.182. Из XML в другой словарь XML (в другой набор тэгов). Этот вариантназывают преобразованием словарей XML.3. Из XML в текстовый формат, например в CSV (comma separated values –формат, в котором разделителями являются запятые).Единственная задача, которую нельзя решить напрямую с помощьютехнологии XSLT – это преобразование из XML в двоичный формат. Для решенияэтой задачи можно использовать технологию расширений XSLT, когда из XSLTпреобразования вызывается исполняемый код.XSLT-преобразование осуществляется специализированной программой илибиблиотекой, которая называется XSLT-процессор.Принцип обработки XML-документов заключается в следующем: приразборе XSLT-документа XSLT-процессор обрабатывает инструкции этого языкаи каждому элементу, найденному в XML- дереве, ставит в соответствие набортэгов HTML, XML или текст, которые определяют форматирование этогоэлемента.Инструкции XSLT определяют точное положение элемента XML вдокументе с помощью XPath-выражений, поэтому существует возможностьприменять различные стили оформления к элементам с одинаковыми названиями,в зависимости от их положения в документе.3.4.1 XSLT-преобразования с фиксированной структуройРассмотрим простой пример преобразования XSLT, который преобразуетXML-документ, посвященный языкам разметки, в HTML-документ.Файл XML:<?xml version="1.0" encoding="Windows-1251"?><?xml-stylesheet type="text/xsl" href="Example_1.xsl"?><!-- Языки разметки --><languages><language id="1"><name>HTML</name><year>01.01.1990</year>19<howold>19</howold></language><language id="2"><name>XML</name><year>01.01.1998</year><howold>11</howold></language><language id="3"><name>SGML</name><year>01.01.1986</year><howold>23</howold></language></languages>Файл XSLT:<?xml version="1.0" encoding="Windows-1251"?><!--XSLT - документ является XML - документом.

--><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"version="1.0"><!-- Описание XSLT - документа --><xsl:template match="/"><!-- Правило обработки корневого элемента XML - документа --><HTML><BODY><TABLE BORDER="2"><TR><TH>№</TH><TH>Язык разметки</TH><TH>Год создания</TH><TH>Возраст технологии (лет)</TH><TH>Название текущего элемента</TH><TH>Содержимое текущего элемента (контекст)</TH><TH>Название элемента верхнего уровня</TH></TR><xsl:for-each select="languages/language">20<!-- Перебор в цикле всех элементов language, вложенных в элементlanguages. --><TR><TD><xsl:value-of select="@id"/></TD><!-- Выбор значения атрибута id элемента language --><TD><xsl:value-of select="name"/></TD><!-- Выбор значения элемента name, вложенного в элемент language --><TD><xsl:value-of select="year"/></TD><!-- Выбор значения элемента year, вложенного в элемент language --><TD><xsl:value-of select="howold"/></TD><!-- Выбор значения элемента howold, вложенного в элемент Language--><TD><xsl:value-of select="name(.)"/></TD><!-- Название текущего элемента --><TD><xsl:value-of select="."/></TD><!-- Содержимое текущего элемента (контекст) --><TD><xsl:value-of select="name(parent::*)"/></TD><!-- Название элемента верхнего уровня (также можно использоватьselect="name(..)") --></TR></xsl:for-each></TABLE></BODY></HTML></xsl:template></xsl:stylesheet>Просмотр результата в браузере:21В файле XML наиболее интересна вторая строка (инструкция обработки xmlstylesheet):<?xml-stylesheet type="text/xsl" href="Example_1.xsl"?>Значение атрибута type="text/xsl" указывает на то, что для отображениядокумента должно быть использовано XSLT-преобразование.

В атрибуте hrefзадается URI для доступа к файлу XSLT. Расширение файла XSLT обычно « xsl ».ЕслиоткрытьдокументспомощьюанализатораXML,которыйподдерживает инструкцию xml-stylesheet и может вызывать XSLT-процессор, тоXSLT-преобразование будет применено к документу. Такие анализаторы,например, встроены в браузеры Mozilla и Internet Explorer.22Обратим внимание, что преобразование XSLT является документом XML.Этот документ содержит программу на языке XSLT. Команды XSLT задаются ввиде XML-элементов. Выделить эти команды просто, так как перед ними стоитпрефикс « xsl: » (как выяснится позже, замечание по поводу префикса потребуетуточнения).Рассмотрим более подробно текст преобразования XSLT.<?xml version="1.0" encoding="Windows-1251"?>Преобразование XSLT является XML-документом, поэтому документначинается с инструкции обработки <?xml .

. . ?><!--XSLT - документ является XML - документом. -->В преобразовании XSLT используются XML-комментарии <!-- . . . --><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"version="1.0">Элемент stylesheet является корневым элементом документа и соответствуетполной «программе» на языке XSLT. Атрибут version с указанием версииобязателен. Атрибут xmlns:xsl задает префикс пространства имен.Вместо элемента xsl:stylesheet может быть использован элемент xsl:transform.Эти элементы являются синонимами.<!-- Описание XSLT - документа --><xsl:template match="/">Элемент template (шаблон) соответствует «процедуре».

Элементов template впреобразовании может быть несколько, в этом примере он один. Атрибут matchопределяет, какому элементу преобразуемого документа соответствует шаблон.Значение match="/" показывает, что шаблон соответствует корневому элементупреобразуемого документа. Шаблон со значением match="/" вызывается первым.В общем случае значение атрибута match – это XPath-выражение.<!-- Правило обработки корневого элемента XML - документа --><HTML><BODY><TABLE BORDER="2"><TR><TH>№</TH>23<TH>Язык разметки</TH><TH>Год создания</TH><TH>Возраст технологии (лет)</TH><TH>Название текущего элемента</TH><TH>Содержимое текущего элемента (контекст)</TH><TH>Название элемента верхнего уровня</TH></TR>Тэги языка HTML (без префикса «xsl:») просто выводятся в результирующийдокумент.

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5209
Авторов
на СтудИзбе
430
Средний доход
с одного платного файла
Обучение Подробнее