Презентация Основы XML-технологий онлайн
На нашем сайте вы можете скачать и просмотреть онлайн доклад-презентацию на тему Основы XML-технологий абсолютно бесплатно. Урок-презентация на эту тему содержит всего 74 слайда. Все материалы созданы в программе PowerPoint и имеют формат ppt или же pptx. Материалы и темы для презентаций взяты из открытых источников и загружены их авторами, за качество и достоверность информации в них администрация сайта не отвечает, все права принадлежат их создателям. Если вы нашли то, что искали, отблагодарите авторов - поделитесь ссылкой в социальных сетях, а наш сайт добавьте в закладки.
Презентации » Устройства и комплектующие » Основы XML-технологий
Оцените!
Оцените презентацию от 1 до 5 баллов!
- Тип файла:ppt / pptx (powerpoint)
- Всего слайдов:74 слайда
- Для класса:1,2,3,4,5,6,7,8,9,10,11
- Размер файла:479.50 kB
- Просмотров:59
- Скачиваний:0
- Автор:неизвестен
Слайды и текст к этой презентации:
№2 слайд
![Введение XML W C-стандарт Две](/documents_6/8d3456fa2a294f29cb034e164859515a/img1.jpg)
Содержание слайда: Введение
XML: W3C-стандарт
Две грани XML: ориентация на документ и ориентация на данные
Причины появления
HTML описывает представление
XML описывает содержимое
Пользователь описывает теги для разметки “содержимого”
Основан на текстовом формате
Идеален для формата “Обмен данными”
Ключевая технология для “распределенных” программ
XML близок к объектно-ориентированным и так называемым полу-структурированным данным.
№4 слайд
![Полуструктурированные данные](/documents_6/8d3456fa2a294f29cb034e164859515a/img3.jpg)
Содержание слайда: Полуструктурированные данные в HTML
HTML описывает представление.
Пример HTML-документа «список студентов»
для вывода на экран в Web-навигаторе
<dt>Name: John Doe
<dd>Id: s111111111
<dd>Address:
<ul>
<li>Number: 123</li>
<li>Street: Main</li>
</ul>
</dt>
<dt>Name: Joe Public
<dd>Id: s222222222
… … … …
</dt>
№6 слайд
![Модель полуструктурированных](/documents_6/8d3456fa2a294f29cb034e164859515a/img5.jpg)
Содержание слайда: Модель полуструктурированных данных
Дубликаты допускаются
{name: "Alan", tel: 2157786, tel: 2498762"}
Синтаксис просто генерирует описания множества объектов
{person: {name: “Alan”,tel: 2157786,email: “a@abc.com”}
person: {name: “Sara”,tel: 2136877,email: “sara@abc.com”}
person: {name: “Fred”,tel: 7786312,email: “fred@abc.com”}
}
Все объекты внутри множества могут быть разной структуры
{person:{name: “Alan”,tel: 2157786,email: “a@abc.com”},
person:{name: {first: “Sara”,last: “Black”},email: “s@abc.com”},
person:{name: “Fred”, tel: 7786312, height: 168}
}
№7 слайд
![Модель полуструктурированных](/documents_6/8d3456fa2a294f29cb034e164859515a/img6.jpg)
Содержание слайда: Модель полуструктурированных данных
Простое представление реляционных данных
{r1: {row: {a: a1, b: b1, c: c1},
{row: {a: a2, b: b2, c: c2}},
r2: {row: {c: c2, d: d2},
row: {c: c3, d: d3},
row: {c: c4, d: d4}}
}
Объектно-ориентированные данные представляются естественно (каждый узел имеет уникальный идентификатор объекта)
{person: &o1{name: “Mary”, age: 45,
child: &o2, child: &o3},
person: &o2{name: “John”, age: 17,
relatives: {mother: &o1, sister: &o3}},
person: &o3{name: “Jane”, country: “Canada”, mother: &o1}
}
№8 слайд
![XML Стандарт для](/documents_6/8d3456fa2a294f29cb034e164859515a/img7.jpg)
Содержание слайда: XML – Стандарт для полуструктурированных данных
XML: eXtensible Markup Language
Удобен для полуструктурированных данных
Используется для описания содержимого, а не представления
Отличается от HTML т.к.
Автором документа могут быть определены новые теги
Нет семантики тегов. Например, HTML <table>…</table> означает таблицу,; in XML: не означает ничего определенного.
Структуры могут быть вложенными
№9 слайд
![Синтаксис XML. XML Элемент](/documents_6/8d3456fa2a294f29cb034e164859515a/img8.jpg)
Содержание слайда: Синтаксис XML. XML Элемент
Элемент – часть текста, ограниченная согласованными тегами, определенными пользователем:
<person>
<name>Alan</name>
<age>42</age>
<email>agb@abc.com</email>
</person>
Комментарии:
Элемент включает открывающий и закрывающий теги
Отсутствие кавычек в строках, т.к. все данные рассматриваются в виде текста. Определяются как PCDATA (Parsed Character Data – символьные данные, обрабатываемые синтаксическим анализатором).
Возможность пустого элемента:
<married></married> может быть заменен на <married/>
№10 слайд
![Синтаксис XML Коллекции](/documents_6/8d3456fa2a294f29cb034e164859515a/img9.jpg)
Содержание слайда: Синтаксис XML
Коллекции определяются через повторяющиеся структуры.
Например, коллекция всех личностей, работающих на четвертом этаже:
<table>
<description>People on the 4th floor</description>
<people>
<person>
<name>Alan</name><age>42</age>
<email>agb@abc.com</email>
</person>
<person>
<name>Ryan</name><age>58</age>
<email>rgz@abc.com</email>
</person>
</people>
</table>
№11 слайд
![Синтаксис XML. XML Атрибуты](/documents_6/8d3456fa2a294f29cb034e164859515a/img10.jpg)
Содержание слайда: Синтаксис XML. XML Атрибуты
Атрибут определяет некоторые свойства элемента
Представляется как пара “название-значение”
<product>
<name language="French">trompette six trous</name>
<price currency="Euro">420.12</price>
<address format="XLB56" language="French">
<street>31 rue Croix-Bosset</street>
<zip>92310</zip>
<city>Sevres</city>
<country>France</country>
</address>
</product>
Внутри тега можно определить любое кол-во атрибутов
Значения атрибутов должны быть расположены внутри двойных кавычек.
№12 слайд
![Синтаксис XML. Атрибуты или](/documents_6/8d3456fa2a294f29cb034e164859515a/img11.jpg)
Содержание слайда: Синтаксис XML. Атрибуты или Элементы ?
Атрибут внутри тега может появляться только один раз, его значение – всегда строка.
Теги элемент/подэлемент могут повторяться любое кол-во раз, а их значениями могут быть строки или подэлементы
Некоторые данные могут быть представлены с использованием атрибутов или элементов, или их комбинацией
<person name="Alan" age="42">
<email>agb@abc.com</email>
</person>
или
<person name="Alan">
<age>42</age>
<email>agb@abc.com</email>
</person>
№13 слайд
![Синтаксис XML. XML Ссылки](/documents_6/8d3456fa2a294f29cb034e164859515a/img12.jpg)
Содержание слайда: Синтаксис XML. XML Ссылки
Использование id атрибута для определения ссылки
Использование idref атрибута (в пустом элементе) для установления ссылки на ранее описанную ссылку (id).
<state id="s2"> -- определяет id или ссылку
<scode>NE</scode>
<sname>Nevada</sname>
</state>
<city id="c2">
<ccode>CCN</ccode>
<cname>Carson City</cname>
<state-of idref="s2"/> -- ссылается на объект s2;
</city>
№14 слайд
![Синтаксис XML. Другие XML](/documents_6/8d3456fa2a294f29cb034e164859515a/img13.jpg)
Содержание слайда: Синтаксис XML. Другие XML конструкции
Комментарий:
<!-- this is a comment -->
Процессные инструкции (Processing Instruction - PI):
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="classes.xsl" encoding="UTF-8"?>
Такие инструкции могут обрабатываться программой, обрабатываемой XML-файл.
CDATA (Character Data): используется для записи особых блоков, содержащих текст с разметками, не являющимися тегами:
<![CDATA[<start>this is not an element</start>]]>
Записи: < эквивалентно символу <
№15 слайд
![Правильно созданный](/documents_6/8d3456fa2a294f29cb034e164859515a/img14.jpg)
Содержание слайда: Правильно созданный (Well-Formed) XML-документ
XML-документwell-formed если
Теги синтаксически корректны
Каждый тег имеет закрывающий тег
Теги правильно вложены
Существует корневой (root) тег
В теге не может быть двух повторяющихся атрибутов
XML-документ должен быть well-formed перед обработкой.
well-formed XML-документ в процессе синтаксического анализа превращается в дерево узлов
№21 слайд
![Document Type Definitions DTD](/documents_6/8d3456fa2a294f29cb034e164859515a/img20.jpg)
Содержание слайда: Document Type Definitions (DTD) – определение типа документа
DTD: Document Type Definition – один из способов спецификации структуры XML документа.
DTD добавляет синтаксические требования в дополнение к требованиям well-formed документа.
DTDs помогает
Обнаруживать ошибки при создании или редактирования XML документов.
Упрощает процесс обработки XML документов.
Использует “регулярные выражения” как синтаксис для спецификации граматики XML документа.
Имеет ограничения: нет типов данных, нет возможности описания ограничений, нет поддержки схем.
№22 слайд
![Пример Адресная книга lt](/documents_6/8d3456fa2a294f29cb034e164859515a/img21.jpg)
Содержание слайда: Пример: Адресная книга
<person>
<name> Homer Simpson </name>
<greet> Dr. H. Simpson </greet>
<addr>1234 Springwater Road </addr>
<addr> Springfield USA, 98765 </addr>
<tel> (321) 786 2543 </tel>
<fax> (321) 786 2544 </fax>
<tel> (321) 786 2544 </tel>
<email> homer@math.springfield.edu </email>
</person>
№23 слайд
![Спецификация структуры name](/documents_6/8d3456fa2a294f29cb034e164859515a/img22.jpg)
Содержание слайда: Спецификация структуры
name имя элемента
greet? опционально (0 или 1) приветственных элементов
name, greet? имя перед опциональным приветствием
addr* для определения 0 или более адресов
tel | fax элемент с телефоном или факс
(tel | fax)* 0 или более повторений телефона или факса
email* 0 или более элементов почтовых адресов
№24 слайд
![Определение типа элемента Для](/documents_6/8d3456fa2a294f29cb034e164859515a/img23.jpg)
Содержание слайда: Определение типа элемента
Для каждого элемента типа E, описание формы:
<!ELEMENT E content-model>
где content-model выражение:
Content-model ::=
EMPTY | ANY | #PCDATA | E’ |
P1, P2 | P1 | P2 | P1? | P1+ | P1* | (P)
E’ тип элемента
P1 , P2 конкатенация
P1 | P2 альтернатива
P? 0 или 1 раз появлений
P+ 1 или более появлений
P* любое количество появлений ( может отсутствовать)
(P) группировка
№25 слайд
![XML-документ адресной книги с](/documents_6/8d3456fa2a294f29cb034e164859515a/img24.jpg)
Содержание слайда: XML-документ адресной книги с описанием DTD внутри самого файла
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE addressbook [
<!ELEMENT addressbook (person*)>
<!ELEMENT person (name, greet?, address*,
(fax | tel)*, email*)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT greet (#PCDATA)>
<!ELEMENT address (#PCDATA)>
<!ELEMENT tel (#PCDATA)>
<!ELEMENT fax (#PCDATA)>
<!ELEMENT email (#PCDATA)>
]>
№27 слайд
![Формат определения атрибутов](/documents_6/8d3456fa2a294f29cb034e164859515a/img26.jpg)
Содержание слайда: Формат определения атрибутов
<!ATTLIST имя_атрибута тип_атрибута
определение_атрибута>
Значение представляется внутри кавычек
Типы атрибутов:
CDATA
ID, IDREF, IDREFS
ID, IDREF, IDREFS используются для ссылок
Определение атрибута
#REQUIRED: атрибут должен присутствовать
#IMPLIED: атрибут может отсутствовать
№29 слайд
![Связь документа с DTD](/documents_6/8d3456fa2a294f29cb034e164859515a/img28.jpg)
Содержание слайда: Связь документа с DTD
Внутренний DTD
<?xml version="1.0"?>
<!DOCTYPE db [<!ELEMENT ...> … ]>
<db> ... </db>
DTD из локальной файловой системы:
<!DOCTYPE db SYSTEM "schema.dtd">
DTD из удаленной файловой системы:
<!DOCTYPE db SYSTEM "http://www.schemaauthority.com/schema.dtd">
№32 слайд
![XML Схема XML схема](/documents_6/8d3456fa2a294f29cb034e164859515a/img31.jpg)
Содержание слайда: XML Схема
XML схема определяет:
элементы из документа
Атрибуты, появляющиеся в элементах
Какие элементы являются вложенными
Порядок следования вложенных элементов
Кол-во вложенных элементов
Пустой элемент или его содержимое в виде текста
Значения по-умолчанию для атрибутов
Цели Схемы – определить легальные строительные блоки XML-документа как в DTD.
№35 слайд
![XML Схема для заказа товаров](/documents_6/8d3456fa2a294f29cb034e164859515a/img34.jpg)
Содержание слайда: XML Схема для заказа товаров
<xsd:schema xmlns:xsd=http://www.w3.org/1999/XMLSchema>
<xsd:element name="shipOrder" type="order"/>
<xsd:complexType name="order">
<xsd:element name="shipTo" type="shipAddress"/>
<xsd:element name="items" type="cdItems"/>
</xsd:complexType>
<xsd:complexType name="shipAddress">
<xsd:element name="name“ type="xsd:string"/>
<xsd:element name="street" type="xsd:string"/>
<xsd:element name="address" type="xsd:string"/>
<xsd:element name="country" type="xsd:string"/>
</xsd:complexType>
№36 слайд
![XML Схема Заказ товаров](/documents_6/8d3456fa2a294f29cb034e164859515a/img35.jpg)
Содержание слайда: XML Схема – Заказ товаров (продолжение)
<xsd:complexType name="cdItems">
<xsd:element name="item" minOccurs="0"
maxOccurs="unbounded" type="cdItem"/>
</xsd:complexType>
<xsd:complexType name="cdItem">
<xsd:element name="title" type="xsd:string"/>
<xsd:element name="quantity“
type="xsd:positiveInteger"/>
<xsd:element name="price" type="xsd:decimal"/>
</xsd:complexType>
</xsd:schema>
№37 слайд
![Новые простые типы данных](/documents_6/8d3456fa2a294f29cb034e164859515a/img36.jpg)
Содержание слайда: Новые простые типы данных
Доступно множество встроенных типов
xsd:string, xsd:integer, xsd:positiveInteger,
xsd:decimal, xsd:boolean, xsd:date, xsd:NMTOKENS, etc.
Определение новых простых типов. Пример определяет myInteger (значение между 10000 и 99999):
<xsd:simpleType name="myInteger">
<xsd:restriction base="xsd:integer">
<xsd:minInclusive value="10000"/>
<xsd:maxInclusive value="99999"/>
</xsd:restriction>
</xsd:simpleType>
№39 слайд
![Новые простые типы данных XML](/documents_6/8d3456fa2a294f29cb034e164859515a/img38.jpg)
Содержание слайда: Новые простые типы данных
XML Схема имеет 3 встроенных списочных типа: NMTOKENS, IDREFS, ENTITIES
Создание нового списочного типа из простого:
<xsd:simpleType name="listOfMyIntType">
<xsd:list itemType="myInteger"/>
</xsd:simpleType>
Следующий XML-фрагмент удовлетворяет вышеописанному типу SimpleType:
<listOfMyInt>20003 15037 95977 95945</listOfMyInt>
№40 слайд
![Новые простые типы данных](/documents_6/8d3456fa2a294f29cb034e164859515a/img39.jpg)
Содержание слайда: Новые простые типы данных
Использование функций: length,minLength, maxLength, enumeration
Например, для определения ровно 6-ти штатов (SixUSStates)
Вначале определяется новый списочный тип данных USStateList из типа USState
Затем SixUSStates ограничивается через USStateList с использованием только 6 значений
<xsd:simpleType name="USStateList">
<xsd:list itemType="USState"/>
</xsd:simpleType>
<xsd:simpleType name="SixUSStates">
<xsd:restriction base="USStateList">
<xsd:length value="6"/>
</xsd:restriction>
</xsd:simpleType>
<sixStates>PA NY CA NY LA AK</sixStates>
№42 слайд
![Parsers анализаторы Что такое](/documents_6/8d3456fa2a294f29cb034e164859515a/img41.jpg)
Содержание слайда: Parsers (анализаторы)
Что такое parser?
Программа, которая анализирует грамматические структуры в соответствии с заданной формальной грамматикой
Parser определяет как предложение может быть сконструировано из грамматики языка через описание атмарных элементов и отношений между ними
№43 слайд
![XML-стандарты анализаторов В](/documents_6/8d3456fa2a294f29cb034e164859515a/img42.jpg)
Содержание слайда: XML-стандарты анализаторов
В основном рассматриваются два метода, реализованный организацией W3C для доступа к XML
SAX (Simple API for XML) – простое API для XML
Событийно управляемый анализатор
Протокол “последовательного доступа”
API “только для чтения”
DOM (Document Object Model) – модель объекта документа
Преобразовывает XML в дерево объектов
Протокол “случайного доступа”
Может обновлять XML-документ (insert/delete узлы)
№51 слайд
![SAX API Два важных класса в](/documents_6/8d3456fa2a294f29cb034e164859515a/img50.jpg)
Содержание слайда: SAX API
Два важных класса в SAX API: SAXParser и HandlerBase.
Создание нового SAXParser-объекта:
public SAXParser()
Регистрация SAX-элемента управления для объекта анализа для получения извещений о событиях анализа:
public void setDocumentHandler(DocumentHandler h)
Регистрация элемента управления для обнаружения ошибок:
public void setErrorHandler(ErrorHandler h)
№52 слайд
![SAX API Класс HandlerBase](/documents_6/8d3456fa2a294f29cb034e164859515a/img51.jpg)
Содержание слайда: SAX API
Класс HandlerBase определяет базовый класс для всех элементов управления.
Он определяет поведение по-умолчанию для различных элементов управления.
Программы расширяют этот класс за счет переопределения следующих методов управления событиями:
public void startDocument() throws SAXException
public void endDocument() throws SAXException
public void startElement() throws SAXException
public void endElement() throws SAXException
public void characters() throws SAXException
public void warning() throws SAXException
public void error() throws SAXException
№58 слайд
![DOM-анализатор DOM Document](/documents_6/8d3456fa2a294f29cb034e164859515a/img57.jpg)
Содержание слайда: DOM-анализатор
DOM = Document Object Model ( Объектная Модель Документа)
Анализатор создает дерево объектов документа
Пользователь получает доступ к данным путем обхода дерева
Дерево и его обход определо W3C-стандартами
API позволяет конструировать, получать доступ и манипулировать структурами и содержимым XML-документов
№63 слайд
![Навигация по узлам Каждый](/documents_6/8d3456fa2a294f29cb034e164859515a/img62.jpg)
Содержание слайда: Навигация по узлам
Каждый узел имеет специальное расположение (location) в узле
Узловой (Node) интерфейс определяет методы для навигации по дереву
Node getFirstChild(); – получение первого по порядку наследника
Node getLastChild(); –- получение последнего по порядку наследника
Node getNextSibling(); –- получение следующего родственника текущего уровня (брата)
Node getPreviousSibling(); –- получение предыдущего родственника текущего уровня (брата)
Node getParentNode(); –- получение родительского узла
NodeList getChildNodes(); –- получение узлов-наследников
NamedNodeMap getAttributes() –- получение атрибутов
№70 слайд
![Манипулирование узлами](/documents_6/8d3456fa2a294f29cb034e164859515a/img69.jpg)
Содержание слайда: Манипулирование узлами
Наследник узла в DOM-дереве может быть добавлен, изменен, удален, перемещен, скопирован и ...
Для создания новых узлов используется методы класса Document
createElement, createAttribute, createTextNode, createCDATASection , ...
Для манипулирования узлами используются методы класса Node
appendChild, insertBefore, removeChild, replaceChild, setNodeValue, cloneNode(boolean deep) ...
№71 слайд
![Сравнение SAX и DOM](/documents_6/8d3456fa2a294f29cb034e164859515a/img70.jpg)
Содержание слайда: Сравнение SAX и DOM анализаторов: Эффективность
DOM-объект, создаваемые DOM-анализатором являются сложными и требуют больше памяти для хранения, чем сам XML-файл
Затрачивается много времени для предварительного создания
Для больших документов это не практично
SAX-анализаторы сохраняют только локальную информацию, которая учитывается в течение нескольких переходов по дереву
программирование SAX-анализаторов, в общем, является эффективным способом ( но не быстрым)
№72 слайд
![Трудности программирования в](/documents_6/8d3456fa2a294f29cb034e164859515a/img71.jpg)
Содержание слайда: Трудности программирования
в SAX-анализаторе
Программирование в SAX-анализаторе сложно, например:
Как найти элемент e1, у которого предком является e2?
Как найти элемент e1 , который имеет элемент-наследник (descendant) e2?
Как найти элемент e1 ссылающийся на атрибут IDREF attribute элемента e2?
Скачать все slide презентации Основы XML-технологий одним архивом:
Похожие презентации
-
Технология XML
-
Основы Web - технологий. Языки разметок и стилей: HTML. Часть 2
-
Программирование на платформе Java EE. Разработка компонентов на основе технологии Enterprise JavaBeans (часть I)
-
Методологические основы CASE – технологии
-
Основы языка Java. Введение в Web-технологии Java SE, Java EE, Java ME
-
Основы использования XML в базах данных
-
Разработка информационной системы внутреннего аудита налоговой инспекции на основе Web-технологий
-
Основные парадигмы и технологии программирования
-
HTML. XML. Вэб-технологии
-
Построение Standby Database на основе технологии Oracle Active Data Guard