Существует ли стандарт / валидатор переднего плана YAML?

Я хотел бы использовать основную часть YAML в качестве держателя метаданных для менеджера данных общего назначения, например:

---
layout: "user"
title: "Mario Brega"
slug: "mario-brega"
skills:
  - fire
  - water
  - leaf
---

# Here I will be using Markdown

yes I will, _I swear_

Он используется многими статическими генераторами как:


Вопрос: существует ли для этого стандарт? Некоторые инструменты, которые я могу легко проверить, например, согласны с тем, что все строковые значения должны быть заключены в кавычки, что логические значения — нет, и так далее.

Сопоставление основной информации YAML с схемой JSON было бы большим плюсом.


person moonwave99    schedule 08.01.2015    source источник
comment
Есть запрос на улучшение для поддержки вступительной части YAML в файлах Markdown для < href="https://github.com/redhat-developer/vscode-yaml" rel="nofollow noreferrer">vscode-yaml, который поможет, если он когда-либо будет завершен   -  person KyleMit    schedule 30.08.2019


Ответы (1)


Ближе всего к стандарту будет описание Jekyll's Front Matter. Все остальное, кажется, следует за этим. Если Jekyll не изобрел Yaml Front Matter, они были одним из первых заметных проектов, в которых он использовался.

линтер YAML Lint смог проверить компоненты YAML каждого файла, который я ему бросил. Согласно спецификации YAML, документы разделяются тремя дефисами ---; один файл YAML может содержать множество документов YAML. Содержимое Markdown после дефиса просто удаляется линтером.

YAML очень свободный и снисходительный (в основном). Цитирование всех ваших строк не повредит, но вам, вероятно, не нужно беспокоиться.

Стремление к базовому стандарту Markdown привело к созданию проекта CommonMark.

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

person joemaller    schedule 14.02.2015