что такое тег в xml
XML Введение
Много языков базируются на XML; Некоторые примеры: XHTML, MathML, SVG, XUL, XBL, RSS, и RDF. Вы можете создать свой.
«Корректный» XML (правильно сформированный)
Правила оформления
Для корректного XML документа должны исполняться следующие условия:
Правильное оформление документа.
Соблюдаться все синтаксические правила XML.
Документ должен соответствовать семантическим правилам языка (которые обычно заданны в схеме XML или DTD (англ. Document Type Definition)).
Пример
Пример ниже показывает документ с тегом, который не закрывает сам себя и не имеет закрывающего тега (это неправильно оформленный XML документ).
Давайте посмотрим на корректную версию этого документа:
В большинство браузеров встроен дебаггер, который может идентифицировать плохо написанный XML документ.
Сущности
HTML и XML предлагают методы (которые называют сущности) для обращения к специальным зарезервированным символам (например угловые скобки, обозначающие начало и конец тега). Существует пять сущностей, которые вы обязательно должны знать:
Сущность | Символ | Описание |
---|---|---|
> | Знак больше (одна из угловых скобок) | |
& | & | Амперсанд |
« | « | Двойная кавычка |
‘ | ‘ | Одинарная кавычка (апостроф) |
Не смотря на то, что по умолчанию создано всего пять сущностей, вы можете добавить в документ свои сущности используя Document Type Definition. Например, создать новую &warning; сущность, можно так:
Отображение XML
Есть также много других мощных методов отображения XML, например, XSLT(англ. Extensible Stylesheet Language Transformations), который может использоваться для преобразование XML в другие языки такие, как HTML. Это делает XML очень универсальным.
Рекомендации
Эта статья является очень маленьким введением в XML, с очень маленьким количеством примеров и ссылок для того, чтобы вы могли начать работать с этим языком. Чтобы больше узнать про XML, вам придётся искать информацию и более информативные статьи в интернете.
Изучайте HTML (англ. HyperText Markup Language), знание HTML поможет вам лучше понять XML.
Смотрите также
I. Коротко об XML¶
Введение в XML¶
XML ( англ. eXtensible Markup Language) — расширяемый язык разметки, предназначенный для хранения и передачи данных.
Простейший XML-документ выглядит следующим образом:
Документ XML состоит из элементов (elements). Элемент начинается открывающим тегом (start-tag) в угловых скобках, затем идет содержимое (content) элемента, после него записывается закрывающий тег (end-teg) в угловых скобках.
Некоторые элементы, не содержащие значений, допустимо записывать без закрывающего тега. В таком случае символ / ставится в конце открывающего тега:
Структура XML¶
XML документ должен содержать корневой элемент. Этот элемент является «родительским» для всех других элементов.
Все элементы в XML документе формируют иерархическое дерево. Это дерево начинается с корневого элемента и разветвляется на более низкие уровни элементов.
Все элементы могут иметь подэлементы (дочерние элементы):
Правила синтаксиса (Валидность)¶
Основные правила синтаксиса XML:
Открывающий и закрывающий теги должны определяться в одном регистре:
Сущности¶
Некоторые символы в XML имеют особые значения и являются служебными. Если вы поместите, например, символ внутри XML элемента, то будет сгенерирована ошибка, так как парсер интерпретирует его, как начало нового элемента.
Также ошибка будет сгенерирована и в слудющем примере, если название организации взять в обычные кавычки (английские двойные):
Чтобы ошибки не возникали, нужно заменить символ на его сущность. В XML существует 5 предопределенных сущностей:
Сущность | Символ | Значение |
---|---|---|
меньше, чем | ||
> | > | больше, чем |
& | & | амперсанд |
‘ | ‘ | апостроф |
« | « | кавычки |
Только символы и & строго запрещены в XML. Символ > допустим, но лучше его всегда заменять на сущность.
Таким образом, корректными будут следующие формы записей:
В последнем примере английские двойные кавычки заменены на французские кавычки («ёлочки»), которые не являются служебными символами.
Поиск информации в XML файлах (XPath)¶
XPath ( англ. XML Path Language) — язык запросов к элементам XML-документа. XPath расширяет возможности работы с XML.
XML имеет древовидную структуру. В документе всегда имеется корневой элемент (инструкция version=”1.0”?> к дереву отношения не имеет). У элемента дерева всегда существуют потомки и предки, кроме корневого элемента, у которого предков нет, а также тупиковых элементов (листьев дерева), у которых нет потомков. Каждый элемент дерева находится на определенном уровне вложенности (далее — «уровень»). У элементов на одном уровне бывают предыдущие и следующие элементы.
Это очень похоже на организацию каталогов в файловой системе, и строки XPath, фактически, — пути к «файлам» — элементам. Рассмотрим пример списка книг:
XPath запрос /bookstore/book/price вернет следующий результат:
Чтобы получить больше информации, необходимо модифицировать запрос //book[title[@lang=»it»]] вернет:
В приведенной ниже таблице представлены некоторые выражения XPath и результат их работы:
Кодировки¶
И еще один важный момент, который стоит рассмотреть — кодировки. Существует множество кодировок, о них подробнее можно прочитать в статье Набор символов.
В XML файле кодировка объявляется в декларации:
Часто можно столкнуться с ситуацией, когда текстовый редаткор некорректно распознает кодировку и отображает кракозябры. В такой случае, необходимо выбрать кодировку вручную, для этого выполните:
Программа | Кодировка |
---|---|
Notepad++ | «Документ → Кодировка» |
Geany | «Документ → Установить кодировку» |
Firefox | «Вид → Кодировка» |
Chrome | «Настройка → Дополнительные инструменты → Кодировка» |
Если ничего не помогает, вполне возможно, что файл был поврежден.
XSD схема¶
XML Schema — язык описания структуры XML-документа, его также называют XSD. Как большинство языков описания XML, XML Schema была задумана для определения правил, которым должен подчиняться документ. Но, в отличие от других языков, XML Schema была разработана так, чтобы её можно было использовать в создании программного обеспечения для обработки документов XML.
После проверки документа на соответствие XML Schema читающая программа может создать модель данных документа, которая включает:
Каждый элемент в этой модели ассоциируется с определённым типом данных, позволяя строить в памяти объект, соответствующий структуре XML-документа. Языкам объектно-ориентированного программирования гораздо легче иметь дело с таким объектом, чем с текстовым файлом.
Подробнее об XSD смотрите:
Примером использования XSD cхем может служить электронная отчетность:
XML — Краткое руководство
XML расшифровывается как расширяемый язык. Это текстовый язык разметки, основанный на стандартном обобщенном языке разметки (SGML).
XML-теги идентифицируют данные и используются для хранения и организации данных, а не указывают, как их отображать как HTML-теги, которые используются для отображения данных. XML не собирается заменять HTML в ближайшем будущем, но он открывает новые возможности, применяя многие успешные функции HTML.
Есть три важных характеристики XML, которые делают его полезным в различных системах и решениях:
XML расширяем — XML позволяет вам создавать свои собственные описательные теги или язык, который подходит вашему приложению.
XML переносит данные, не представляет их — XML позволяет хранить данные независимо от того, как они будут представлены.
XML является общедоступным стандартом — XML был разработан организацией под названием World Wide Web Consortium (W3C) и доступен в качестве открытого стандарта.
XML расширяем — XML позволяет вам создавать свои собственные описательные теги или язык, который подходит вашему приложению.
XML переносит данные, не представляет их — XML позволяет хранить данные независимо от того, как они будут представлены.
XML является общедоступным стандартом — XML был разработан организацией под названием World Wide Web Consortium (W3C) и доступен в качестве открытого стандарта.
Использование XML
Краткий список использования XML говорит само за себя —
XML может работать за сценой, чтобы упростить создание документов HTML для крупных веб-сайтов.
XML может использоваться для обмена информацией между организациями и системами.
XML можно использовать для выгрузки и перезагрузки баз данных.
XML может использоваться для хранения и упорядочения данных, что может настраивать ваши потребности в обработке данных.
XML можно легко объединить с таблицами стилей для создания практически любого желаемого результата.
Фактически, любой тип данных может быть выражен в виде XML-документа.
XML может работать за сценой, чтобы упростить создание документов HTML для крупных веб-сайтов.
XML может использоваться для обмена информацией между организациями и системами.
XML можно использовать для выгрузки и перезагрузки баз данных.
XML может использоваться для хранения и упорядочения данных, что может настраивать ваши потребности в обработке данных.
XML можно легко объединить с таблицами стилей для создания практически любого желаемого результата.
Фактически, любой тип данных может быть выражен в виде XML-документа.
Что такое разметка?
XML — это язык разметки, который определяет набор правил для кодирования документов в формате, который читается человеком и читается машиной. Так что же такое язык разметки? Разметка — это информация, добавляемая в документ, которая определенным образом усиливает его значение, поскольку она идентифицирует части и то, как они связаны друг с другом. Более конкретно, язык разметки — это набор символов, которые могут быть помещены в текст документа для разграничения и маркировки частей этого документа.
В следующем примере показано, как выглядит XML-разметка при внедрении в фрагмент текста:
Этот фрагмент содержит символы разметки или теги, такие как … и
Является ли XML языком программирования?
Язык программирования состоит из грамматических правил и собственного словарного запаса, который используется для создания компьютерных программ. Эти программы инструктируют компьютер для выполнения определенных задач. XML не может считаться языком программирования, поскольку он не выполняет никаких вычислений или алгоритмов. Обычно он хранится в простом текстовом файле и обрабатывается специальным программным обеспечением, способным интерпретировать XML.
XML — синтаксис
В этой главе мы обсудим простые правила синтаксиса для написания XML-документа. Ниже приведен полный документ XML —
Вы можете заметить, что в приведенном выше примере есть два вида информации:
Следующая диаграмма изображает правила синтаксиса для записи разметки и текста разного типа в XML-документе.
Давайте рассмотрим каждый компонент вышеприведенной диаграммы в деталях.
Декларация XML
XML-документ может дополнительно иметь декларацию XML. Это написано следующим образом —
Где версия — это версия XML, а кодировка указывает кодировку символов, используемую в документе.
Синтаксические правила для декларации XML
Декларация XML чувствительна к регистру и должна начинаться с « », где « xml » пишется строчными буквами.
Если документ содержит декларацию XML, то он строго должен быть первым утверждением документа XML.
Декларация XML строго должна быть первым утверждением в документе XML.
Протокол HTTP может переопределить значение кодировки, которое вы указали в объявлении XML.
Декларация XML чувствительна к регистру и должна начинаться с « », где « xml » пишется строчными буквами.
Если документ содержит декларацию XML, то он строго должен быть первым утверждением документа XML.
Декларация XML строго должна быть первым утверждением в документе XML.
Протокол HTTP может переопределить значение кодировки, которое вы указали в объявлении XML.
Теги и элементы
Файл XML структурирован несколькими XML-элементами, также называемыми XML-узлами или XML-тегами. Имена XML-элементов заключены в треугольные скобки <>, как показано ниже —
Синтаксические правила для тегов и элементов
Синтаксис элемента — каждый XML-элемент должен быть закрыт либо начальным, либо конечным элементом, как показано ниже —
или в простых случаях, просто так —
Вложенность элементов — XML-элемент может содержать несколько XML-элементов в качестве своих дочерних элементов, но дочерние элементы не должны перекрываться. т. е. конечный тег элемента должен иметь то же имя, что и у самого последнего непревзойденного начального тега.
В следующем примере показаны неверные вложенные теги.
В следующем примере показаны правильные вложенные теги —
Корневой элемент — XML-документ может иметь только один корневой элемент. Например, следующее не является правильным XML-документом, поскольку элементы x и y находятся на верхнем уровне без корневого элемента —
В следующем примере показан правильно сформированный документ XML:
Чувствительность к регистру — Имена XML-элементов чувствительны к регистру. Это означает, что имя начального и конечного элементов должно быть точно в одном и том же случае.
Например, отличается от
Атрибуты XML
Атрибут задает одно свойство для элемента, используя пару имя / значение. XML-элемент может иметь один или несколько атрибутов. Например —
Здесь href — имя атрибута, а http://www.tutorialspoint.com/ — значение атрибута.
Синтаксические правила для атрибутов XML
Имена атрибутов в XML (в отличие от HTML) чувствительны к регистру. То есть HREF и href считаются двумя различными атрибутами XML.
Один и тот же атрибут не может иметь два значения в синтаксисе. В следующем примере показан неверный синтаксис, поскольку атрибут b указан дважды
Имена атрибутов в XML (в отличие от HTML) чувствительны к регистру. То есть HREF и href считаются двумя различными атрибутами XML.
Один и тот же атрибут не может иметь два значения в синтаксисе. В следующем примере показан неверный синтаксис, поскольку атрибут b указан дважды
Имена атрибутов определяются без кавычек, тогда как значения атрибутов всегда должны появляться в кавычках. Следующий пример демонстрирует неправильный синтаксис XML
Имена атрибутов определяются без кавычек, тогда как значения атрибутов всегда должны появляться в кавычках. Следующий пример демонстрирует неправильный синтаксис XML
В приведенном выше синтаксисе значение атрибута не определено в кавычках.
XML ссылки
Ссылки обычно позволяют добавлять или включать дополнительный текст или разметку в документ XML. Ссылки всегда начинаются с символа «&», который является зарезервированным символом, и заканчиваются символом «;». XML имеет два типа ссылок:
Текст XML
Имена XML-элементов и XML-атрибутов чувствительны к регистру, что означает, что имена начальных и конечных элементов должны быть записаны в одном и том же регистре. Чтобы избежать проблем с кодировкой символов, все файлы XML должны быть сохранены как файлы Unicode UTF-8 или UTF-16.
Пробельные символы, такие как пробелы, табуляции и разрывы строк между XML-элементами и между XML-атрибутами, будут игнорироваться.
Некоторые символы зарезервированы самим синтаксисом XML. Следовательно, они не могут быть использованы напрямую. Для их использования используются некоторые замещающие объекты, которые перечислены ниже:
Не разрешенный персонаж | Запасной объект | Описание персонажа |
---|---|---|
& Lt; | меньше, чем | |
> | & GT; | лучше чем |
& | & Амп; | амперсант |
‘ | & APOS; | апостроф |
« | & Quot; | кавычка |
XML — документы
XML- документ — это базовая единица XML-информации, состоящая из элементов и другой разметки в упорядоченном пакете. XML- документ может содержать самые разные данные. Например, база данных чисел, чисел, представляющих молекулярную структуру или математическое уравнение.
Пример XML-документа
Простой документ показан в следующем примере:
На следующем рисунке изображены части документа XML.
Документ Пролог Раздел
Пролог документа идет вверху документа, перед корневым элементом. Этот раздел содержит —
Вы можете узнать больше о декларации XML в этой главе — Декларация XML
Раздел элементов документа
Элементы документа являются строительными блоками XML. Они делят документ на иерархию разделов, каждый из которых служит определенной цели. Вы можете разделить документ на несколько разделов, чтобы они могли отображаться по-разному или использоваться поисковой системой. Элементы могут быть контейнерами с комбинацией текста и других элементов.
Вы можете узнать больше об элементах XML в этой главе — Элементы XML
XML — декларация
Эта глава подробно описывает декларацию XML. Объявление XML содержит детали, которые подготавливают процессор XML к анализу документа XML. Это необязательно, но при использовании он должен отображаться в первой строке документа XML.
Синтаксис
Следующий синтаксис показывает объявление XML —
Каждый параметр состоит из имени параметра, знака равенства (=) и значения параметра внутри кавычки. В следующей таблице приведен приведенный выше синтаксис в деталях —
правила
Декларация XML должна соответствовать следующим правилам:
Если декларация XML присутствует в XML, она должна быть помещена в качестве первой строки в документе XML.
Если объявление XML включено, оно должно содержать атрибут номера версии.
Имена и значения параметров чувствительны к регистру.
Имена всегда в нижнем регистре.
Порядок размещения параметров важен. Правильный порядок: версия, кодировка и автономный.
Можно использовать как одинарные, так и двойные кавычки.
В декларации XML нет закрывающего тега, т. Е.
Если декларация XML присутствует в XML, она должна быть помещена в качестве первой строки в документе XML.
Если объявление XML включено, оно должно содержать атрибут номера версии.
Имена и значения параметров чувствительны к регистру.
Имена всегда в нижнем регистре.
Порядок размещения параметров важен. Правильный порядок: версия, кодировка и автономный.
Можно использовать как одинарные, так и двойные кавычки.
В декларации XML нет закрывающего тега, т. Е.
Примеры декларации XML
Ниже приведены несколько примеров объявлений XML:
XML декларация без параметров —
XML декларация с определением версии —
Декларация XML со всеми определенными параметрами —
Декларация XML со всеми параметрами, определенными в одинарных кавычках —
XML — Теги
Давайте узнаем об одной из самых важных частей XML, тегах XML. XML-теги составляют основу XML. Они определяют область действия элемента в XML. Их также можно использовать для вставки комментариев, объявления настроек, необходимых для анализа среды, и для вставки специальных инструкций.
Мы можем широко классифицировать теги XML следующим образом:
Начать тег
Начало каждого непустого элемента XML помечается начальным тегом. Ниже приведен пример начального тега:
Конечный тег
Каждый элемент, имеющий начальный тег, должен заканчиваться конечным тегом. Ниже приведен пример конечного тега:
Обратите внимание, что конечные теги включают солидус («/») перед именем элемента.
Пустой тег
Текст, который появляется между начальным тегом и конечным тегом, называется контентом. Элемент, который не имеет содержимого, называется пустым. Пустой элемент может быть представлен двумя способами:
Начальная метка, за которой сразу следует конечная метка, как показано ниже —
Полный тег пустого элемента показан ниже:
Теги пустого элемента могут использоваться для любого элемента, который не имеет содержимого.
Правила использования XML-тегов
Ниже приведены правила, которым необходимо следовать для использования тегов XML:
Правило 1
Теги XML чувствительны к регистру. Следующая строка кода является примером неправильного синтаксиса из-за разницы в регистре в двух тегах, которая рассматривается как ошибочный синтаксис в XML.
Следующий код показывает правильный путь, где мы используем один и тот же регистр для именования начального и конечного тега.
Правило 2
Теги XML должны быть закрыты в соответствующем порядке, т. Е. Тег XML, открытый внутри другого элемента, должен быть закрыт до закрытия внешнего элемента. Например —
XML — Элементы
Элементы XML могут быть определены как строительные блоки XML. Элементы могут вести себя как контейнеры для хранения текста, элементов, атрибутов, объектов мультимедиа или всего этого.
Каждый документ XML содержит один или несколько элементов, область действия которых ограничена начальным и конечным тегами или для пустых элементов — тегом пустого элемента.
Синтаксис
Ниже приведен синтаксис для написания элемента XML:
element-name — это имя элемента. Имя его регистра в начальных и конечных тегах должно совпадать.
attribute1, attribute2 — это атрибуты элемента, разделенные пробелами. Атрибут определяет свойство элемента. Он связывает имя со значением, которое представляет собой строку символов. Атрибут записывается как —
element-name — это имя элемента. Имя его регистра в начальных и конечных тегах должно совпадать.
attribute1, attribute2 — это атрибуты элемента, разделенные пробелами. Атрибут определяет свойство элемента. Он связывает имя со значением, которое представляет собой строку символов. Атрибут записывается как —
За именем следует знак = и строковое значение в двойных («») или одинарных (») кавычках.
Пустой элемент
Пустой элемент (элемент без содержимого) имеет следующий синтаксис —
Ниже приведен пример документа XML с использованием различных элементов XML:
Правила XML-элементов
Следующие правила должны соблюдаться для элементов XML —
Имя элемента может содержать любые буквенно-цифровые символы. Единственные знаки препинания, допускаемые в именах, — это дефис (-), знак ниже (_) и точка (.).
Имена чувствительны к регистру. Например, Адрес, адрес и АДРЕС — это разные имена.
Начальный и конечный теги элемента должны быть идентичны.
Элемент, который является контейнером, может содержать текст или элементы, как видно из приведенного выше примера.
Имя элемента может содержать любые буквенно-цифровые символы. Единственные знаки препинания, допускаемые в именах, — это дефис (-), знак ниже (_) и точка (.).
Имена чувствительны к регистру. Например, Адрес, адрес и АДРЕС — это разные имена.
Начальный и конечный теги элемента должны быть идентичны.
Элемент, который является контейнером, может содержать текст или элементы, как видно из приведенного выше примера.
XML — Атрибуты
Синтаксис
Атрибут XML имеет следующий синтаксис —
где attribute1 и attribute2 имеет следующую форму —
значение должно быть в двойных («») или одинарных (») кавычках. Здесь attribute1 и attribute2 являются уникальными метками атрибутов.
Атрибуты используются для добавления уникальной метки к элементу, размещения метки в категории, добавления логического флага или иного связывания его с какой-либо строкой данных. Следующий пример демонстрирует использование атрибутов —
Атрибуты используются для различения элементов с одинаковыми именами, когда вы не хотите создавать новый элемент для каждой ситуации. Следовательно, использование атрибута может добавить немного больше деталей при дифференциации двух или более похожих элементов.
Вы также можете заметить, что мы объявили этот атрибут в начале XML.
Типы атрибутов
В следующей таблице перечислены типы атрибутов —
Тип атрибута | Описание |
---|---|
StringType | Он принимает любую буквенную строку в качестве значения. CDATA — это тип StringType. CDATA — это символьные данные. Это означает, что любая строка символов без разметки является законной частью атрибута. |
TokenizedType |