86.96K
Категория: ПрограммированиеПрограммирование

Язык XML

1.

Язык XML
Объявление XML. Корневой элемент.
Комментарий. Спецсимволы. Словари XML.
Версии XML Язык XML как средство хранения
структурированных данных. DOM – объектная
модель документа. Расширение языка PHP для
работы с XML-данными.

2.

• XML (англ. eXtensibleMarkupLanguage —
расширяемый язык разметки;
́ ]) ,представляющий
• произносится [экс-эм-эл
собой свод общих синтаксических правил. XML
— текстовый формат, предназначенный для
хранения структурированных данных (взамен
существующих файлов баз данных), для
обмена информацией между программами, а
также для создания на его основе более
специализированных языков разметки
(например, XHTML), иногда называемых
словарями. XML является упрощённым
подмножеством языка SGML.

3.

• Целью создания XML было обеспечение
совместимости при передаче
структурированных данных между разными
системами обработки информации, особенно
при передаче таких данных через Интернет.
Словари, основанные на XML (например, RDF,
RSS, MathML, XHTML, SVG), сами по себе
формально описаны, что позволяет
программно изменять и проверять документы
на основе этих словарей, не зная их семантики,
то есть не зная смыслового значения
элементов. Важной особенностью XML также
является применение так называемых
пространств имён (англ. namespace).

4.

Правильно построенные и
действительные документы XML
• Стандартом определены два уровня правильности документа XML:
• Правильно построенный (Well-formed). Правильно построенный
документ соответствует всем общим правилам синтаксиса XML,
применимым к любому XML-документу. И если, например, начальный
тег не имеет соответствующего ему конечного тега, то это неправильно
построенный документ XML. Документ, который неправильно
построен, не может считаться документом XML; XML-процессор
(парсер) не должен обрабатывать его обычным образом и обязан
классифицировать ситуацию как фатальная ошибка.
• Действительный (Valid). Действительный документ дополнительно
соответствует некоторым семантическим правилам. Это более строгая
дополнительная проверка корректности документа на соответствие
заранее определённым, но уже внешним правилам, в целях
минимизации количества ошибок, например, структуры и состава
данного, конкретного документа или семейства документов.

5.

Синтаксис XML
• Для ограничения тегов в разметке XML, так
же как и в HTML используются угловые
скобки: тег начинается со знака "меньше"
(<) и завершается знаком "больше" (>). Но
необходимо помнить, что в отличие
от HTML вся разметка XML чувствительна к
регистру символов, это касается как имен
тегов, так и значений атрибутов.

6.

Символы.
• Поскольку XML предназначен для широкого
использования, символы не ограничены 7битным набором символов ASCII. К числу
символов, допустимых в языке XML,
относятся три управляющих
символа СО стандарта ASCII, все обычные
символы этого стандарта и почти все
остальные символы Unicode

7.

Имена.
• В языке XML все имена должны начинаться с буквы,
символа нижнего подчеркивания (_) или двоеточия (:)
и продолжаться только допустимыми для имен
символами, а именно они могут содержать только
буквы, входящие в секцию букв кодировки Unicode,
арабские цифры, дефисы, знаки подчеркивания, точки
и двоеточия.
• Однако имена не могут начинаться со строки xml в
любом регистре. Имена, начинающиеся с этих
символов, зарезервированы для использования
консорциумом W3C. Нужно помнить что так как буквы
не ограничены исключительно символами ASCII, то в
именах можно использовать слова из родного языка.

8.

Структура XML- документа.
• Любой XML-документ состоит из
следующих частей:
• Необязательный пролог.
• Тело документа.
• Необязательный эпилог,
следующего за деревом
элементов.

9.

Пролог XML- документа.
• Документ XML начинается с пролога. В прологе
содержатся некоторые указания, предназначенные для
анализатора XML и приложений.
• Пролог состоит из нескольких частей:
• необязательное объявление XML (XML Declaration)
которое заключено между символами <?...?>. Объявление
содержит:
– пометку xml и номер версии (version) спецификации XML;
– указание на кодировку символов (encoding), в которой
написан документ (по умолчанию encoding="UTF-8" );
– параметр standalone который может принимать значения
"yes" или "no" (по умолчанию standalone="yes" ). Значение
"yes" показывает, что в документе содержатся все требуемые
декларации элементов, a "no" - что нужны внешние
определения DTD.

10.

• Все это вместе может выглядеть следующим образом:
• <?xml version ="1.0" encoding="windows-1251" standalone="yes"?>.
• Важно отметить, что в объявлении XML только атрибут version
является обязательным, все остальные атрибуты могут быть
опущены и, следовательно, принимать значения по умолчанию.
Так же нужно помнить, что все эти атрибуты следует указывать
только в приведенном выше порядке.
комментарии.
команды обработки.
символы пустых пространств.
необязательное объявление типа документа, DTD (Document Type
Declaration) которое заключено между символами <!DOCTYPE...> и
может занимать несколько строк. В этой части объявляются теги,
использованные в документе, или приводится ссылка на файл, в
котором записаны такие объявления.

11.

Тело XML-документа.
• Тело документа состоит из одного или
больше элементов. В правильно
оформленном XML документе элементы
формируют простое иерархическое дерево,
в котором обязательно
присутствует корневой
элемент (root element) в который вложены
все остальные элементы документа.

12.

Элементы.
• Документ XML состоит из элементов. Элемент
начинается открывающим тегом, затем идет
необязательное содержимое элемента, после чего
записывается закрывающий тег (в отличие
от HTML наличие закрывающего тега обязательно,
исключением являются элементы без содержания,
так называемые пустые элементы, которые могут
быть записаны в сокращенной форме). В качестве
содержимого элемента могут выступать другие
элементы, символьные данные, ссылки на символы,
ссылки на сущности, комментарии, разделы CDATA,
инструкции по обработке.

13.

• Открывающие теги.
• Открывающий тег начинается со знака "меньше"
(<) и завершается знаком "больше" (>), внутри
которых помещаются имя элемента:
• <имя_элемента>.
• Закрывающие теги.
• Закрывающий тег начинается со знака "меньше"
(<) за которым следует "косая черта" (/) после
которой повторяется имя элемента из
соответствующего открывающего тега и
завершается знаком "больше" (>):
• </имя_элемента>.

14.

Пустые элементы.
• Если в содержимом элемента нет ни одного
символа, даже пробела, то закрывающий тег можно
не записывать. В этом случае открывающий тег
должен заканчиваться символами "/> ".
• Таким образом, тег пустого элемента начинается со
знака "меньше" (<) за которым следует имя
элемента и завершается знаками "косая черта" (/)
после которой идет знак "больше" (>):
• <имя_элемента/>.

15.

Символьные данные.
• Символьные данные - это любой текст,
являющийся содержанием элемента или
значением атрибута. Если в содержимое
элемента нужно вставить некоторые символы,
которые используются в служебных целях,
например знаки "больше" или "меньше"
которые являются ограничителями разметки и
могут быть поняты как начало или конец
вложенного тега, то эти символы необходимо
заменить ссылками или их числовыми кодами.

16.

Ссылки на символы
• .
• Для того что бы вставить в текст документа некоторый символ,
который, например, не присутствует в раскладке клавиатуры либо
может быть неправильно истолкован анализатором, используют
ссылки на символы. Ссылка на символ обязательно начинается со
знака "амперсанда" и заканчивается точкой с запятой.
• Ссылки на символы записываются в следующем виде:
• &#код_символа_в_Unicode;.
• Код символа можно записать и в шестнадцатеричном виде. В этом
случае перед ним ставится символ "x":
• &#xШестнадцатеричный_код_символа;.

17.

Ссылки на сущности
• .
• Ссылки на сущности позволяют включать любые
строковые константы в содержание элементов или
значение атрибутов. Ссылки на сущности, как и ссылки
на символы, начинающиеся с амперсанда, после
которого идет имя сущности и заканчивающиеся точкой
с запятой:
• &имя_сущности;.
• Ссылки на сущности указывают программе-анализатору
подставить вместо них строку символов заранее
заданную в определении типа документа.
English     Русский Правила