Привет, привет! 😮💨 Как пролетел месяц! У меня не было времени что-то написать, но это не значит, что я не учился. Хотя изучать самые новые и новейшие технологии очень весело, часто приходится изучать и более старые технологии (особенно для работы).
Так, недавно я узнал о расширяемом языке разметки или XML. Я хочу написать небольшое введение о нем, чтобы в дальнейшем использовать его в качестве справочника для себя и, конечно, для всех, кому может понадобиться узнать о XML 😀.
Что такое XML?
XML — это простой язык для хранения, описания и передачи информации/данных по сети в виде обычного текста. Он разработан таким образом, что язык является человекочитаемым с самоописывающимися тегами. Если вы считаете, что JSON — это способ передачи данных в виде обычного текста в форме объектов JavaScript, то можно сказать, что XML — это способ передачи данных в виде обычного текста в форме, аналогичной HTML.
XML — это язык разметки, подобный HTML, поэтому он имеет сходство с ним, поскольку состоит из иерархических тегов, которые хранят информацию. Однако, в отличие от HTML, он не имеет предопределенных тегов, поэтому вы можете создавать свои собственные теги по своему усмотрению, чтобы хранить и структурировать данные по своему усмотрению. Говорят, что XML отделяет информацию от представления, поэтому XML и HTML дополняют друг друга.
Он может использоваться всеми видами программ и программного обеспечения как метод передачи данных, подобно тому, как JSON может использоваться во всех языках.
Как это работает?
XML-документы часто начинаются с XML-декларации или пролога (это необязательно), который содержит мета-данные документа, такие как кодировка.
Обычно это выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
При создании собственных тегов XML помните о следующих моментах (правилах синтаксиса):
- Все элементы должны иметь закрывающий тег или, если это пустой элемент, вы можете использовать краткую форму, например,
<emptyTag />
. - Атрибуты должны быть заключены в кавычки, например,
<movie genre="comedy" />
. - Избегайте использования символов типа
<
,>
,&
и используйте вместо них символьные сущности, например,<
,>
; и&
. - Должен быть только один корневой элемент или один родительский элемент, который содержит все остальные элементы.
- Теги чувствительны к регистру.
- Белые пробелы сохраняются (скорее предупреждение, чем правило).
Следование вышеуказанным правилам гарантирует, что ваш XML-документ будет хорошо сформирован.
XML-документы, как и HTML, соответствуют определению Document Object Model (DOM), это древовидная структура с одним корневым узлом, который является родителем всех остальных элементов. Это означает, что вы можете получать доступ, обновлять и манипулировать XML-документами с помощью программ и сценариев.
Пример
Как обычно, лучший способ научиться — это практика, поэтому откройте свой любимый редактор кода и попробуйте создать свой собственный XML-файл с некоторыми собственными тегами. Я буду использовать VSCode. Допустим, я хочу отправить список фильмов 2020 года, тогда я могу написать что-то вроде следующего кода.
<?xml version="1.0" encoding="UTF-8"?>
<movieList year="2020">
<movie genre="action">
<title>The Old Guard</title>
<rating>
<imdb>6.6</imdb>
<rottenTomatoes>80%</rottenTomatoes>
</rating>
</movie>
<movie genre="action">
<title>Birds of Prey</title>
<rating>
<imdb>6.0</imdb>
<rottenTomatoes>79%</rottenTomatoes>
</rating>
</movie>
<movie genre="comedy">
<title>My Spy</title>
<rating>
<imdb>6.3</imdb>
<rottenTomatoes>48%</rottenTomatoes>
</rating>
</movie>
<movie genre="horror">
<title>A Quiet Place Part II</title>
<rating>
<imdb>7.2</imdb>
<rottenTomatoes>91%</rottenTomatoes>
</rating>
</movie>
</movieList>
Если вы откроете созданный вами файл в браузере, он должен отобразить XML-документ в виде древовидной структуры со складными стрелками для вложенных элементов (я столкнулся с проблемой в FireFox, но он отлично работает в Edge и GC).
Резюме
XML — это гибкий и расширяемый язык разметки, похожий на HTML, но отличающийся тем, что он используется в качестве стандарта для передачи или обмена данными по сети. XML написан с использованием не предопределенных тегов, что означает, что вы можете создавать свои собственные теги и структурировать информацию/данные по своему усмотрению, если это соответствует правилам правильно сформированного XML-документа.
Это был очень краткий обзор XML. Мне еще многое предстоит узнать об XML, и я надеюсь написать больше об этой теме в будущем, а пока спасибо за чтение 😃.