Перенос строки в xml файле
Правила синтаксиса XML крайне просты и логичны. Их легко запомнить и легко использовать.
Все XML элементы должны иметь закрывающий тег
В HTML некоторые элементы могут не иметь закрывающего тега:
В XML нельзя опускать закрывающий тег. Абсолютно все элементы должны закрываться:
Возможно, вы заметили из предыдущих примеров, что XML декларация не имеет закрывающего тега. Это не ошибка. Дело в том, что декларация не относится к XML документу, поэтому у нее и нет закрывающего тега.
Теги XML регистрозависимы
Теги XML являются регистрозависимыми. Так, тег <Letter> не то же самое, что тег <letter>.
Открывающий и закрывающий теги должны определяться в одном регистре:
Замечание: "Открывающий и закрывающий теги" иногда еще называют "начальный и конечный теги". Используйте то определение, которое вам более симпатично. По сути это одно и то же.
XML элементы должны соблюдать корректную вложенность
В HTML иногда можно наблюдать такую картину:
и иногда это даже работает должным образом.
В XML все элементы обязаны соблюдать корректную вложенность:
Понятие "корректная вложенность" по отношению к приведенным примерам просто означает, что так как элемент <i> открывается внутри элемента <b>, то и закрываться он должен внутри элемента <b>.
У XML документа должен быть корневой элемент
XML документ должен содержать один элемент, который будет родительским для всех других элементов. Он называется корневым элементом.
XML пролог
Следующая строка называется XML прологом:
XML пролог необязателен. Но если он есть, то это должна быть первая строка XML документа.
В XML документе могут присутствовать международные символы, вроде русских букв, и чтобы не возникало ошибок необходимо указать кодировку, либо сохранить XML файл в формате UTF-8.
UTF-8 — кодировка XML документов по умолчанию.
Значения XML атрибутов должны заключаться в кавычки
Так же, как и в HTML, у XML элементов могут быть атрибуты в виде пары имя/значение.
В XML значения атрибутов должны заключаться в кавычки.
Посмотрите на следующие два примера XML документа. Первый с ошибкой, второй написан правильно:
Ошибка в первом XML документе заключается в том, что значение атрибута date элемента note не заключено в кавычки.
Сущности
Некоторые символы в XML имеют особые значения.
Если вы поместите, например, символ "<" внутри XML элемента, то будет сгенерирована ошибка, так как парсер интерпретирует его, как начало нового элемента.
Так, к ошибке приведет следующая строка XML документа:
Чтобы такая ошибка не возникала, нужно заменить символ "<" на его сущность:
В XML существует 5 предопределенных сущностей:
Сущность | Символ | Значение |
---|---|---|
< | < | меньше, чем |
> | > | больше, чем |
& | & | амперсанд |
' | ' | апостроф |
" | " | кавычки |
Замечание: Только символы "<" и "&" строго запрещены в XML. Символ ">" допустим, но лучше его всегда заменять на сущность.
Комментарии в XML
Синтаксис комментариев в XML такой же, как и в HTML.
Использование двух символов тире в середине комментария не допустимо.
Странно, но так можно:
В XML пробелы сохраняются
В HTML несколько последовательных пробельных символов усекаются до одного. В XML документе все пробельные символы сохраняются.
В XML новая строка сохраняется как LF
В приложениях Windows новая строка хранится в следующем виде: символ перевода каретки и символ новой строки (CR+LF).
Unix и Mac OSX используют LF.
Старые Mac системы используют CR.
XML сохраняет новую строку как LF.
Синтаксически верный XML документ
Если XML документ составлен в соответствии с приведенными синтаксическими правилами, то говорят, что это "синтаксически верный" XML документ.
Читайте также: