Практикум 3.3. Язык XPath в действии — КиберПедия 

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Практикум 3.3. Язык XPath в действии

2017-12-21 175
Практикум 3.3. Язык XPath в действии 0.00 из 5.00 0 оценок
Заказать работу


Рассмотрим XML-документ pr_3_3.xml:

Теперь давайте попробуем выделить некоторые части этого XML-документа и сформировать новый HTML-документ, содержащий эти части.

1. Наберите в блокноте код из примера pr_3_3.xml

2.
 
 

Создайте следующую таблицу стилей pr_3_3.xsl:

В данной таблице я использовал функцию XSLT (name) и инструкцию <xsl:text>.

Функция «name ()» используется для получения имени узла. Инструкция <xsl:text> используется для воспроизведения текста в текущем месте вывода.

3.
Преобразуйте исходный XML-документ в pr_3_3.html, результат такого преобразования представлен на рис. 3.4.

Рис. 3.4. Выполненный файл pr_3_3.html

 

Используя возможности XPath, мы легко можем обращаться к любым частям XML-документа.

 


Практикум 4. Инструкция <xsl:for-each>

Инструкция <xsl:for-each> определяет шаблон, который применяется для каждого узла, выбранного с помощью атрибута select.

1.
 
 

Используя пример pr_3_3.xml, создадим таблицу стилей с инструкцией <xsl:for-each>

В данной таблице используются оператор «//», который говорит процессору XSLT о том, что надо выбрать все элементы с именем «BBB». Использование этого оператора не рекомендуется в больших документах, так как увеличивается время обработки таких документов.

2.
 
 

Преобразуйте XML-документ pr_3_3.xml с помощью таблицы pr_3_4.xsl в pr_3_4.html, результат такой обработки показан на рис. 3.5.

Рис. 3.5. Выполненный pr_3_4.html


Практикум 5. Инструкция <xsl:sort>

Инструкция <xsl:sort> используется для сортировки данных, мы рассмотрим возрастающей и убывающей сортировки.

1.
 
 

Наберите следующих код в текстовом редакторе и сохраните его под именем pr_3_5.xml.

 

2.
 
 

Используя следующую таблицу pr_3_5_1.xsl отсортируем исходный данные XML-документа по возрастанию, преобразуйте исходный XML-документ в pr_3_5_1.html.

 

3. Теперь отсортируем наши данные по убыванию, для этого изменим значение атрибута order в инструкции <xsl:sort> на значение «descending», в конце концов получим следующую инструкцию:

<xsl:sort order= «descending» select=”.”/>

4. Сохраните таблицу стилей с новыми изменениями по именем pr_3_5_2.xsl и преобразуйте исходный документ pr_3_5.xml при помощи новой таблицы в pr_3_5_2.html.

5.
Сортировка может проводиться в текстовом режиме (pr_5_3_3.xml, pr_5_3_3.xsl) и цифровом режиме (pr_5_3_3.xml, pr_5_3_4.xsl)

 
 

Pr_5_3_3.xml

Pr_5_3_3.xsl

 

 
 

pr_3_5_4.xsl

 

 


Практикум 6. Инструкция <xsl:if> в действии.

Допустим необходимо проверит начинается ли значение элемента с цифры, если начинается необходимо вывести сообщение в виде «the text starts with a number».

1.
 
 

Допустим, существует следующий XML-документ pr_3_6.xml:

 

2.
Создадим таблицу стилей используя инструкцию <xsl:if>:

 

3. В данном шаблоне используются функции (start-with, translate).

В общем случае функция start-with(“This is a string”, “This”) определяет, начинается ли строка “This is a string” с текста, который задается второй строкой “This”, если значение верно, то результат действия этой инструкции будет помещен в результирующее дерево, иначе нет.

Функция translate в данном случае действует следующим образом: берется значение элемента и сравнивается с маской «0123456789», если значение совпадает, то оно заменяется на «1» и дальше выполняется функция starts-with. Если первое значение элемента будет не цифра, тогда это значение не будет переведено в «1» и соответственно результатом работы функции start-with будет значение ложь и инструкция <xsl:if> выполнена не будет.

4. Результат полученный после преобразования показан на рис 3.6.

 
 

Рис. 3.6. Результат преобразования инструкцией <xsl:if>

 


Первый ASP-пример


Поделиться с друзьями:

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.012 с.