YAML (YAML Ain’t Markup Language, что означает “YAML – это не язык разметки”) – это формат сериализации данных, часто используемый для конфигурации и обмена данными между программами.
YAML является удобочитаемым форматом, который представляет структурированные данные в виде последовательности списков, ассоциативных массивов и скалярных значений. Он основан на простом и понятном синтаксисе, который использует отступы для организации данных. YAML обычно используется в файловых конфигурациях и API для представления данных в консистентном и удобочитаемом формате.
Примеры YAML-документов:
“`
name: John Doe
age: 30
profession: Developer
“`
“`
– name: Jane Smith
age: 25
profession: Designer
– name: Mark Johnson
age: 35
profession: Engineer
“`
“`
database:
host: localhost
port: 5432
username: admin
password: pass123
“`
YAML также поддерживает комментарии, который можно использовать для добавления пояснений в документы.
YAML имеет широкую поддержку в различных языках программирования и является популярным форматом для конфигурационных файлов, использования в системах управления версиями и передачи данных через сеть.
В трактовке названия отражена история развития: на ранних этапах YAML расшифровывался как Yet Another Markup Language («Ещё один язык разметки») и даже позиционировался как конкурент XML, но позже был переименован с целью акцентировать внимание на данных, а не на разметке документов.
Среди программных систем, использующих YAML как формат для файлов конфигурации — Ruby on Rails, Docker Compose, Kubernetes (притом поддерживается взаимно-однозначное соответствие с форматом JSON), Dancer, Symfony, GAE framework, Google App Engine, Dart, Home Assistant.
Язык YAML (YAML Ain’t Markup Language) представляет собой формат сериализации данных, который используется для представления структурированных данных. Он достаточно прост в использовании и имеет читаемый синтаксис.
Ниже приведен пример синтаксиса YAML:
“`
# Комментарий
# Создание объекта
key1: value1
key2: value2
# Вложенные объекты
parent:
child1: value1
child2: value2
# Списки
– item1
– item2
– item3
# Многострочные строки
multiline: |
Ваши
многострочные
строки
# Расширенный синтаксис
dictionary:
– { key: value }
“`
В языке YAML используется отступ для обозначения вложенности объектов и списков. Также можно использовать комментарии, которые начинаются с символа `#`. Используйте двоеточие `:` для определения ключа и значения.
YAML поддерживает разные типы данных, включая строки, числа, логические значения и null. Он также поддерживает использование специальных символов для обработки специфических случаев, таких как многострочные строки.
Также, есть более расширенный синтаксис для создания сложных структур данных. Например, можно использовать фигурные скобки `{}` для обозначения объектов внутри списка.
Отмечу, что синтаксис YAML чувствителен к регистру. Также отступы играют важную роль и должны быть корректно выровнены.
Это лишь краткое введение в синтаксис YAML.