Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Обработка XML-документов с помощью JavaScript.





JavaScript предоставляет большие возможности для работы с XML-документами. Аналогично HTML в JavaScript можно создать объект, содержащий объектную модель XML-документа позволяющую извлекать и изменять XML-элементы, добавлять новые и т.д.

В данном разделе приведем пример только одной интересной возможности:

Создается объект для XML-документа:

xmlDoc = new ActiveXObject("Microsoft.XMLDOM");

xmlDoc.async = false;

Загружается файл:

xmlDoc.load('пример.xml');

Проверяется коррекность загрузки:

if(xmlDoc.parseError.errorCode!= 0) {

Если код ошибки не равен 0, то выводится сообщение об ошибке:

alert(xmlDoc.parseError.reason);

alert(xmlDoc.parseError.line); }

Создается объект для XSL-преобразования:

xslDoc = new ActiveXObject("Microsoft.XMLDOM");

xslDoc.async = false;

Загружается файл:

xslDoc.load('пример.xsl');

Проверяется коррекность загрузки:

if(xslDoc.parseError.errorCode!= 0) {

Если код ошибки не равен 0, то выводится сообщение об ошибке:

alert(xslDoc.parseError.reason);

alert(xslDoc.parseError.line); }

Вывод XML-документа с XSL-преобразованием

document.write(xmlDoc.transformNode(xslDoc));

До вывода XML-документа можно произвести необходимые действия с XML и XSL-документами. Например, изменить порядок сортировки, условие фильтрации и т.д.

Подробно работа с объектной моделью XML-документа описана:

1. «Объектная модель XML документа». Г.Е. Берман, кафедра "Информационных технологий. Данный документ является расширенным описанием лекции по XML DOM, которую автор читает для студентов факультета прикладной математики Тверского госуниверситета в рамках спецкурса «Технологии XML». http://gberman.narod.ru/xmllections/dom/start.htm

2. JavaScript и XML. http://www.codenet.ru/webmast/xml/xslt/6.php

3. «Парсинг XML в JavaScript на примере XML-погоды от gismeteo.ru». Вячеслав Гринин http://easy4web.ru/?p=393

Документация и литература:

1. Школы консорциума W3C. Школа XSL http://xml.nsu.ru/xsl/xsl_home.xml

2. Леонов Игорь Васильевич. XML и XSLT в примерах для начинающих http://www.citforum.ru/internet/xmlxslt/xmlxslt.shtml, http://www.codenet.ru/webmast/xml/xslt/

3. Язык преобразований XSL (XSLT). Версия 1.0. Рекомендация W3C от 16 ноября 1999. http://www.citforum.ru/internet/xslt/index.shtml, http://www.codenet.ru/webmast/xml/xslt/w3c.php

4. Владимир Шрайбман. Реализация XSL-преобразований при разработке сайтов с XML-наполнением страниц. http://www.citforum.ru/internet/xml/xsl_preobrazovaniy/

XPath

Язык XML Path (XPath) является набором синтаксических и семантических правил для ссылок на части XML-документов. XPath предназначен для использования другими спецификациями, такими как XSL Transformations (XSLT) и XML Pointer Language (XPointer).

Выражения XPath идентифицируют набор элементов в XML-документе. Этот набор элементов содержит ноль или более элементов. Например, выражение XPath /Library, из Пример 16, идентифицирует один-единственный элемент – корневой элемент Library. Выражение XPath /Library/Book идентифицирует все элементы Book в XML-документе. В XSLT значения атрибутов select являются выражениями XPath.

XPath использует нотацию с прямой наклонной чертой (/), аналогичную обозначению полного имени файла, содержащего путь – список папок, в Windows.

Допустимые выражения XPath могут включать в себя условные выражения – предикат, определяющие правила фильтрации. Предикаты содержат логические выражения, которые проверяются для каждого элемента, идентифицированного выражением XPath. Если значение условного выражения – истина, элемент допускается к обработке; иначе элемент пропускается. В последнем варианте XSL-преобразования (файл «пример 16-5.xsl») из раздела 7.1.4 использован предикат:

Library/Book[dc:creator/vCard:N/vCard:Family='Пушкин']

который идентифицирует только те элементы Book в которых элемент Family – фамилия автора – Пушкин.

Выражения XPath могут ссылаться на атрибуты так же, как и на элементы в XML-документе. При ссылке на атрибут используется символ @. Например, следующее выражение XPath идентифицирует элементы dc:description, в которых атрибуты xml:lang содержат значение:

dc:description/[@xml:lang=”ru”]

XPath также предоставляет набор функций, которые могут быть полезны при формировании предиатов. Выражение Xpath, приведенное ниже, идентифицирует элемент dc:subject содержащий слово проза:

contains(dc:subject,'проза')







Дата добавления: 2015-09-07; просмотров: 1037. Нарушение авторских прав; Мы поможем в написании вашей работы!




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


Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...


Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Классификация холодных блюд и закусок. Урок №2 Тема: Холодные блюда и закуски. Значение холодных блюд и закусок. Классификация холодных блюд и закусок. Кулинарная обработка продуктов...

ТЕРМОДИНАМИКА БИОЛОГИЧЕСКИХ СИСТЕМ. 1. Особенности термодинамического метода изучения биологических систем. Основные понятия термодинамики. Термодинамикой называется раздел физики...

Травматическая окклюзия и ее клинические признаки При пародонтите и парадонтозе резистентность тканей пародонта падает...

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

Ваготомия. Дренирующие операции Ваготомия – денервация зон желудка, секретирующих соляную кислоту, путем пересечения блуждающих нервов или их ветвей...

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Studopedia.info - Студопедия - 2014-2026 год . (0.013 сек.) русская версия | украинская версия