Раздел помощи SpaceWeb

Что такое формат XML

01 апр, 2024

XML (eXtensible Markup Language) – это универсальный язык разметки, который предназначен для хранения и передачи данных в текстовом формате. 

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

XML – гибкий способ создания и использования собственных тегов для определения структуры данных. Эти теги определяют элементы данных и могут включать атрибуты для дополнительной информации об элементах. 

Формат XML состоит из декларации XML, элементов (тегов), атрибутов и содержимого. Элементы могут содержать текст и другие элементы (дочерние), а могут быть и пустыми. Атрибуты предоставляют дополнительную информацию об элементах. В XML-документе обычно есть один корневой элемент, который содержит все остальные элементы.

Если документ в формате XML называют формализованным, это значит, что он строго соответствует определённой структуре и правилам, заданным через схему XML или DTD (Document Type Definition). Эти механизмы определяют, какие элементы и атрибуты могут появляться в документе, в каком порядке, и как они должны быть структурированы. 

Важно! XML – это не код, который можно выполнить, а средство для структурирования и описания информации. Чтобы использовать данные, оформленные в формате XML, требуется разработать программное обеспечение (например, написанное на Java), которое будет способно отправлять, получать и анализировать эти данные.

Одной из причин, по которой XML стал широко распространённым, является его гибкость и универсальность по сравнению с другими форматами данных. Например, CSV ограничен представлением табличных данных в виде текстовых строк с полями, разделёнными запятыми; или RTF, который используется для хранения текстовых документов между различными платформами. XML превосходит их благодаря своей способности описывать не только структурированные данные (базы данных и конфигурационные файлы), но и псевдо-структурированные данные, включая веб-страницы и деловые документы.

Где используется формат XML

XML используется в самых различных областях, включая веб-разработку, конфигурацию программного обеспечения, обмен данными в бизнес-приложениях и многое другое. Благодаря своей гибкости и универсальности, XML стал ключевым инструментом в создании форматов для различных специализированных данных: XHTML, SVG, SOAP и многие другие.

XML также активно используется для создания веб-сервисов, где служит для обмена данными между различными системами и платформами. XML-документы можно легко преобразовать в другие форматы, например, HTML или PDF, с помощью XSLT (eXtensible Stylesheet Language Transformations), что делает XML мощным инструментом для разработки веб-приложений и сервисов.

Компания Microsoft – это однин из наиболее заметных примеров использования XML. Она внедрила его в широкий спектр своих продуктов, включая Office, SQL Server и многие другие, что подчёркивает важность и универсальность этого формата в современных технологиях.

Что содержится в XML-файле

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

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

Пролог

Пролог в XML-документе указывает версию XML и кодировку. Он располагается в самом начале документа. Например:

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

Тег

XML использует теги для разметки данных. Тег состоит из открывающего (<tagname>) и закрывающего (</tagname>) элементов, между которыми располагаются данные или другие теги. Например:

<note>
  <to>Дмитрий</to>
  <from>Диана</from>
  <heading>Напоминание</heading>
  <body>Не забудь обновить систему</body>
</note>

Имена элементов могут содержать буквы, цифры, подчёркивания, дефисы и точки, но не должны начинаться с цифры или пунктуации. Кроме того, XML чувствителен к регистру, так что <Tag> и <tag> будут разными элементами.

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

Атрибуты

Атрибуты предоставляют дополнительную информацию об элементах. Каждый атрибут состоит из имени и значения, которое заключено в кавычки. Атрибуты располагаются в открывающем теге элемента. Например:

<note importance="high" logged="true">
  <to>Дмитрий</to>
  <from>Диана</from>
</note>

Комментарии

Комментарии в XML начинаются с <!-- и заканчиваются на -->. Они могут располагаться практически в любом месте документа и не влияют на его обработку.

<!-- Это мой комментарий! --> 

Специальные символы

В XML есть символы, которые используются в синтаксисе и не могут быть использованы напрямую. Для их обозначения используются символьные ссылки, например &lt; для < и &amp; для &.

Пространства имён

Пространства имён используются для предотвращения конфликтов именования. Они определяются с помощью атрибута xmlns и позволяют однозначно идентифицировать элементы внутри XML-документа.

Секции CDATA

Специальные разделы, в которых содержимое не обрабатывается XML-парсером как код. Это позволяет включать фрагменты текста, которые могут содержать символы, похожие на синтаксис XML, без необходимости их экранирования. Секции CDATA заключаются в специальные теги. Пример:

<![CDATA[содержимое]]>.

Инструкции по обработке (Processing Instructions, PI)

Содержат инструкции для приложений, обрабатывающих XML-файл. Они начинаются с <? и заканчиваются на ?>.

Пример XML-файла:

 <?xml version = "1.0"?>
<Company>
   <Employee>
      <FirstName>Ivan</FirstName>
      <LastName>Ivanov</LastName>
      <ContactNum>0987654321</ContactNum>
      <Email>iivanov@mail.ru</Email>
      <Address>
         <City>Moscow</City>
         <Zip>117546</Zip>
      </Address>
   </Employee>
</Company>

Начальная схема:

На приведённой выше схеме есть корневой элемент с именем <Company>(Компания). Внутри него есть ещё один элемент <Employee>(Работник). Внутри элемента сотрудника есть пять ветвей с названиями <FirstName> (Имя), <LastName>(Фамилия), <ContactNum>(Номер), <Email>(Эл.почта) и <Address>(Адрес). Внутри элемента <Address> есть две подветви с именами <City>(Город) и <Zip>. И все эти отношения мы отобразили в примере. 

Как сделать формат XML

Есть несколько способов сделать файл с расширением XML. Во-первых, вы можете создать его вручную с нуля, используя структуру, о которой мы говорили выше. Во-вторых, преобразовать из другого файла. Давайте рассмотрим оба случая.

Способ 1. Создание с нуля

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

Сейчас мы рассмотрим, как создать базовый XML-файл:

  1. Перед началом работы необходимо чётко определить структуру данных, которую вы хотите представить в формате XML. Это включает в себя определение основных элементов, их атрибутов и взаимосвязей. Например, вы можете сделать схему, подобную той, что мы предлагали выше. 
  2. XML-документ может начинаться с пролога, который указывает версию XML и кодировку файла. Это необязательный шаг, но он может быть полезен для обеспечения правильного отображения и обработки файла.
<?xml version="1.0" encoding="UTF-8"?>

  1. Каждый XML-документ должен содержать один корневой элемент, который «обрамляет» все остальные элементы. Этот элемент представляет собой основной контейнер для данных.
<products>
  <!—Здесь будут дочерние элементы -->
</products>

  1. Внутри корневого элемента вы можете определить структуру данных с помощью вложенных элементов и атрибутов. Элементы используются для представления данных и могут содержать текст, другие элементы или оба. Атрибуты предлагают дополнительную информацию об элементах.
<product>
  <name>Ноутбук SWB2000</name>
  <price>100 000</price>
  <description>Высокопроизводительный ноутбук для настоящих профессионалов.</description>
</product>

  1. Убедитесь, что все элементы корректно вложены и правильно закрыты. У каждого открывающего тега должен быть соответствующий закрывающий тег.
  2. Вы можете добавлять различные комментарии в XML-файл. Они не будут обрабатываться как часть данных.
<!-- Это комментарий о продукте -->

  1. После создания XML файла рекомендуется проверить его на валидность и корректность синтаксиса. Для этого можно использовать валидаторы XML, доступные онлайн. Например, подойдут сервисы W3 Schools, Code Beautify и XML Validation.
  2. Сохраните документ с расширением .xml. Убедитесь, что выбрана правильная кодировка (например, UTF-8), чтобы обеспечить корректное отображение символов.

Способ 2. Преобразование готового файла

  1. Откройте новую книгу в Excel.
  2. Введите данные в таблицу, структурируя их таким образом, чтобы каждый столбец представлял собой поле данных, которое вы хотите включить в ваш XML-файл. Например, если вы создаёте список контактов, столбцы могут включать имя, фамилию, адрес электронной почты и другие необходимые данные.

Важно! Если у вас уже есть схема XML (XSD-файл), которой должны соответствовать данные, вы можете добавить её в Excel. В противном случае сразу перейдите к шагу 6. 

  1. Перейдите во вкладку «Разработчик» в ленте Excel. Если она не отображается, включите её через:

Windows

 «Файл» > «Параметры» > «Настройка ленты» > «Разработчик» > «Сохранить»

macO

«Excel» > «Параметры» > «Лента и панель» > «Разработчик» > «Сохранить».

  1. Перейдите на вкладку «Разработчик».
  2. Щёлкните Экспорт.

Важно! Если вы не использовали схему, Excel предложит создать XML-карту на основе структуры вашей таблицы.

  1. В «Типе файла» выберите Файлы XML
  2. Сохраните файл в нужном месте на вашем компьютере, дав ему имя с расширением .xml.

Как открыть файл XML

Открытие файла XML можно выполнить разными способами. Выбор зависит от ваших потребностей: если вам нужно просто просмотреть содержимое, подойдёт любой текстовый редактор или веб-браузер. Для глубокой работы с XML, включая редактирование, валидацию и преобразование, лучше использовать специализированные редакторы с соответствующими расширениями.

  • Текстовый редактор. Любой базовый текстовый редактор, такой как Notepad (Блокнот) в Windows, TextEdit в macOS или gedit в Linux, позволяет открыть и просмотреть исходный код XML. Однако, используя этот метод, вы увидите только текст XML без какой-либо обработки или форматирования.
  • Веб-браузеры. Браузеры могут открывать файлы XML и отображать их структуру в виде дерева, что упрощает навигацию по документу. Для этого достаточно либо перетащить файл в окно браузера, либо использовать функцию открытия файла (Ctrl+O или Cmd+O). Обратите внимание, что браузеры могут не отображать пользовательские стили или применять XSLT-преобразования.
  • Офисные программы. Некоторые офисные программы, например, Microsoft Excel или LibreOffice Calc, могут открыть XML-файлы как таблицы данных. Это особенно полезно, если XML содержит структурированные данные, которые легко переводятся в табличную форму. Однако, важно понимать, что такие программы могут интерпретировать XML-данные по-своему, исходя из внутренних правил обработки XML.
  • Специализированные редакторы XML. Также существуют специализированные редакторы и IDE для работы с XML: XMLSpy, Oxygen XML Editor и другие, которые предлагают расширенные функции, включая подсветку синтаксиса, проверку на ошибки, автозаполнение и визуальное представление структуры XML.
  • Программы, расширения и онлайн-сервисы для просмотра. Есть программы, которые созданы специально для просмотра XML-файлов. Чаще всего они называются «XML Viewer» и обеспечивают базовый интерфейс для просмотра XML-файлов. Некоторые из них также предоставляют небольшой набор инструментов.

Таким образом, мы с вами узнали, что такое XML, из чего он состоит и как можно с ним работать.