Строительные блоки XML

Основными строительными блоками как XML, так и HTML документов являются элементы.

С точки зрения DTD все XML (и HTML) документы состоят из следующих строительных блоком:

  • Элементы
  • Атрибуты
  • Сущности
  • PCDATA
  • CDATA

Элементы

Элементы являются основными строительными блоками как XML, так и HTML документов.

В качестве примеров HTML элементов можно привести тег <body> или тег <table>. Примерами XML элементов могли бы стать теги <note> и <message>". Элементы могут содержать текст, другие элементы или быть пустыми. Примерами пустых HTML элементов являются теги <hr>, <br> и <img>.

Примеры:


<body>какой-то текст</body>
<message>какой-то текст</message>

Атрибуты

Атрибуты предоставляют дополнительную информацию об элементах.

Атрибуты всегда помещаются внутри открывающего тега элемента. Атрибуты всегда определяются в виде пар имя/значение. У следующего элемента <img> есть дополнительная информация об исходном файле:


<img src='computer.gif' />

Имя элемента - "img". Имя его атрибута - "src". Значение этого атрибута — "computer.gif". Так как сам элемент является пустым, он закрывается символом " /".

Сущности

Некоторые символы в XML имеют особое значение, как, например, знак "меньше чем" (<), который определяет начало тега XML.

Большинству из вас известна HTML сущность "&nbsp;". Эта сущность "неразрывного пробела" используется в HTML, чтобы вставить в код документа дополнительный пробельный символ. Во время анализа и разбора документа парсером сущности раскрываются.

Следующие сущности предопределены в XML:

СущностьСимвол
&lt;<
&gt;>
&amp;&
&quot;"
&apos;'

PCDATA

PCDATA означает анализируемые символьные данные.

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

PCDATA — это текст, который будет анализироваться парсером. Т.е. парсер будет проверять этот текст на наличие сущностей и другой разметки.

Теги внутри такого текста будут восприняты, как вложенная разметка, а сущности будут раскрыты.

Тем не менее, анализируемые символьные данные не должны содержать символы &, < или >. Они должны быть представлены соответствующими сущностями &amp;, &lt; и &gt;.

CDATA

CDATA означает неанализируемые символьные данные.

CDATA — это текст, который не будет анализироваться парсером. Теги внутри такого текста не будут восприняты, как вложенная разметка, а сущности не будут раскрыты.