- •Цели занятия
- •SGML, XML и HTML
- •Отличия XML от HTML
- •Пример XML
- •Пример XML
- •Структура XML-документа
- •Структура XML-документа
- •Структура XML-документа
- •Структура XML-документа
- •DTD и XML-схема
- •Document Type Definition
- •Document Type Definition
- •Правила DTD-определения
- •Примеры правил
- •Поведение по умолчанию
- •Примеры выражений
- •DTD и соответствующий XML-
- •XML-схема
- •XML-схема
- •XML-схема
- •Создание XML-документов
- •Создание XML-документов
- •Создание XML-документов
- •Создание XML-документов
- •Литература
XML
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |
Цели занятия
2 Изучить:
•Отличия XML от HTML
•Структура XML-документа
•DTD и XML-схема
•SAX
•DOM
•Запись XML
•XML-сериализация
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |
SGML, XML и HTML
3SGML
(Standard Generalized Markup Language)
HTML |
XML |
|
(Hypertext Markup Language) |
(Extensible Markup |
|
Language) |
|
|
•SGML – с 1970-х годов использовался для описания структуры сложных документов в некоторых отраслях промышленности с высокими требованиями к документации
•HTML – язык разметки гипертекста
•XML – язык для описания иерархических данных
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |
Отличия XML от HTML
4• В отличие от HTML, в языке XML учитывается регистр символов
•В языке HTML некоторые закрывающие дескрипторы могут отсутствовать, в XML это не разрешается
•Для элементов, тело которых отсутствует, в XML предусмотрена сокращенная запись открывающего дескриптора, совмещённого с закрывающим. В этом случае открывающий дескриптор заканчивается символом /
•В XML значения атрибутов должны быть помещены в кавычки, а в HTML кавычки могут отсутствовать
•В HTML допускается использование имен атрибутов без указания их значений, а в HML все атрибуты должны иметь значения
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |
Пример XML
5 Пример 1 <configuration>
<title>
<font>
<name>Helvetica</name>
<size>36</size>
</font>
</title>
<body>
<font>
<name>Times Roman</name> <size>12</size>
</font>
</body>
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |
Пример XML
6 <window> <width>400</width> <height>200</height>
</window>
<color>
<red>0</red>
<green>50</green>
<blue>100</blue>
</color>
<menu>
<item>Times Roman</item> <item>Helvetica</item>
</menu>
</configuration>
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |
Структура XML-документа
7• XML- документ начинается с заголовка (необязательно)
<?xml version="1.0"?>
<?xml version="1.0" encoding="UTF-8"?>
•Далее идёт DTD (Document Type Definition) (необязательно)
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.
//DTD Web Application 2.2//EN“ "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
•Наконец, тело XML-документа содержит корневой элемент, в состав которого могут входить другие элементы
<configuration> – корневой элемент
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |
Структура XML-документа
8• Каждый элемент может содержать дочерние элементы, текст либо и то, и другое
•XML-документы рекомендуется формировать так, чтобы элементы содержали либо дочерние элементы, либо текст, т.е. следует избегать создания структур:
<font> Helvetica
<size>36</size>
</font>
• Такая структура называется смешанным содержимым
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |
Структура XML-документа
9• XML-элементы могут содержать атрибуты <size unit="pt">36</size>
•Элементы и текст являются основными компонентами XML- документов, но возможны и другие инструкции:
Ссылки на символы d или h, где d – десятичное, а h – шестнадцатеричное Unicode-значение. Например, é, ™
Ссылки на примитивы имеют вид &name. Например, < > & " '
CDATA-разделы ограничены группами символов <![CDATA[ и ]]>, предназначены для включения строк с символами < > &, которые не следует интерпретировать как символы разметки < ! [CDATA[ < & > are my favorite delimiters ] ] >
Инструкции обработки ограничиваются символами <? и ?>, нужны приложению в котором используется данный XML- документ
<?xml version="1.0"?>
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |
Структура XML-документа
10 |
Комментарии ограничиваются символами <! |
|
|
|
-- и -->. В комментариях нельзя использовать |
|
строки типа --. Не следует включать в |
|
комментарии скрытые команды, для их |
|
выполнения предназначены инструкции |
|
обработки |
|
<!-- This is a comment. --> |
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |
DTD и XML-схема
11• XML-анализатор может автоматически проверять корректность структуры документа
•Для указания структуры документа нужно создать DTD либо XML-схему
•Они указывают допустимые дочерние узлы элементов и атрибутов каждого элемента
•XML-схема позволяет формулировать сложные правила, которые нельзя выразить средствами DTD
•В отличие от DTD, правила, соответствующие схеме, выражаются на языке XML, что упрощает их обработку
•XML-схема сложнее DTD
Все права защищены. www.haulmont.ru info@haulmont.com |
© HAULMONT, 2013 |