Учебники

XML — синтаксис

В этой главе мы обсудим простые правила синтаксиса для написания XML-документа. Ниже приведен полный документ XML —

<?xml version = "1.0"?>
<contact-info>
   <name>Tanmay Patil</name>
   <company>TutorialsPoint</company>
   <phone>(011) 123-4567</phone>
</contact-info>

Вы можете заметить, что в приведенном выше примере есть два вида информации:

  • Разметка, вроде <контактная информация>

  • Текст или символьные данные, Tutorials Point и (040) 123-4567 .

Разметка, вроде <контактная информация>

Текст или символьные данные, Tutorials Point и (040) 123-4567 .

Следующая диаграмма изображает правила синтаксиса для записи разметки и текста разного типа в XML-документе.

Правила синтаксиса XML

Давайте рассмотрим каждый компонент вышеприведенной диаграммы в деталях.

Декларация XML

XML-документ может дополнительно иметь декларацию XML. Это написано следующим образом —

<?xml version = "1.0" encoding = "UTF-8"?>

Где версия — это версия XML, а кодировка указывает кодировку символов, используемую в документе.

Синтаксические правила для декларации XML

  • Декларация XML чувствительна к регистру и должна начинаться с « <? Xml> », где « xml » пишется строчными буквами.

  • Если документ содержит декларацию XML, то он строго должен быть первым утверждением документа XML.

  • Декларация XML строго должна быть первым утверждением в документе XML.

  • Протокол HTTP может переопределить значение кодировки, которое вы указали в объявлении XML.

Декларация XML чувствительна к регистру и должна начинаться с « <? Xml> », где « xml » пишется строчными буквами.

Если документ содержит декларацию XML, то он строго должен быть первым утверждением документа XML.

Декларация XML строго должна быть первым утверждением в документе XML.

Протокол HTTP может переопределить значение кодировки, которое вы указали в объявлении XML.

Теги и элементы

Файл XML структурирован несколькими XML-элементами, также называемыми XML-узлами или XML-тегами. Имена XML-элементов заключены в треугольные скобки <>, как показано ниже —

<element>

Синтаксические правила для тегов и элементов

Синтаксис элемента — каждый XML-элемент должен быть закрыт либо начальным, либо конечным элементом, как показано ниже —

<element>....</element>

или в простых случаях, просто так —

<element/>

Вложенность элементов — XML-элемент может содержать несколько XML-элементов в качестве своих дочерних элементов, но дочерние элементы не должны перекрываться. т. е. конечный тег элемента должен иметь то же имя, что и у самого последнего непревзойденного начального тега.

В следующем примере показаны неверные вложенные теги.

<?xml version = "1.0"?>
<contact-info>
<company>TutorialsPoint
<contact-info>
</company>

В следующем примере показаны правильные вложенные теги —

<?xml version = "1.0"?>
<contact-info>
   <company>TutorialsPoint</company>
<contact-info>

Корневой элемент — XML-документ может иметь только один корневой элемент. Например, следующее не является правильным XML-документом, поскольку элементы x и y находятся на верхнем уровне без корневого элемента —

<x>...</x>
<y>...</y>

В следующем примере показан правильно сформированный документ XML:

<root>
   <x>...</x>
   <y>...</y>
</root>

Чувствительность к регистру — Имена XML-элементов чувствительны к регистру. Это означает, что имя начального и конечного элементов должно быть точно в одном и том же случае.

Например, <контактная информация> отличается от <контактная информация>

Атрибуты XML

Атрибут задает одно свойство для элемента, используя пару имя / значение. XML-элемент может иметь один или несколько атрибутов. Например —

<a href = "http://www.tutorialspoint.com/">Tutorialspoint!</a>

Здесь href — имя атрибута, а http://www.tutorialspoint.com/ — значение атрибута.

Синтаксические правила для атрибутов XML

  • Имена атрибутов в XML (в отличие от HTML) чувствительны к регистру. То есть HREF и href считаются двумя различными атрибутами XML.

  • Один и тот же атрибут не может иметь два значения в синтаксисе. В следующем примере показан неверный синтаксис, поскольку атрибут b указан дважды

Имена атрибутов в XML (в отличие от HTML) чувствительны к регистру. То есть HREF и href считаются двумя различными атрибутами XML.

Один и тот же атрибут не может иметь два значения в синтаксисе. В следующем примере показан неверный синтаксис, поскольку атрибут b указан дважды

<a b = "x" c = "y" b = "z">....</a>
  • Имена атрибутов определяются без кавычек, тогда как значения атрибутов всегда должны появляться в кавычках. Следующий пример демонстрирует неправильный синтаксис XML

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

<a b = x>....</a>

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

XML ссылки

Ссылки обычно позволяют добавлять или включать дополнительный текст или разметку в документ XML. Ссылки всегда начинаются с символа «&», который является зарезервированным символом, и заканчиваются символом «;». XML имеет два типа ссылок:

  • Ссылки на сущности — ссылка на сущность содержит имя между начальным и конечным разделителями. Например, & amp; где amp это имя . Имя относится к предварительно определенной строке текста и / или разметки.

  • Ссылки на символы — они содержат ссылки, такие как & # 65; , содержит хеш-знак («#»), за которым следует число. Число всегда относится к коду Unicode символа. В этом случае 65 относится к алфавиту «А».

Ссылки на сущности — ссылка на сущность содержит имя между начальным и конечным разделителями. Например, & amp; где amp это имя . Имя относится к предварительно определенной строке текста и / или разметки.

Ссылки на символы — они содержат ссылки, такие как & # 65; , содержит хеш-знак («#»), за которым следует число. Число всегда относится к коду Unicode символа. В этом случае 65 относится к алфавиту «А».

Текст XML

Имена XML-элементов и XML-атрибутов чувствительны к регистру, что означает, что имена начальных и конечных элементов должны быть записаны в одном и том же регистре. Чтобы избежать проблем с кодировкой символов, все файлы XML должны быть сохранены как файлы Unicode UTF-8 или UTF-16.

Пробельные символы, такие как пробелы, табуляции и разрывы строк между XML-элементами и между XML-атрибутами, будут игнорироваться.

Некоторые символы зарезервированы самим синтаксисом XML. Следовательно, они не могут быть использованы напрямую. Для их использования используются некоторые замещающие объекты, которые перечислены ниже: