Меню

Talis

Открытый формат обмена структурированными данными

Talis — текстовый способ записи сведений для передачи записей между системами без лишних преобразований. Запись остаётся читаемой, компактной и пригодной для хранения в обычных журналах и архивах.

Структура допускает добавление новых полей без разрушения прежнего чтения, а номер версии в каждой записи помогает различать поколения описаний. Разработан в abittech.

Раздел 01

Обзор

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

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

Формат обратно совместимый между минорными версиями: прежние читатели понимают новые записи, спокойно пропуская незнакомые поля, а новые читатели верно толкуют прежние записи. Номер версии внутри записи показывает, по каким правилам она составлена.

Текстовый

Запись состоит из строк с именами полей и значениями, её можно открыть и прочитать глазами.

Самоописываемый

Имена полей раскрывают смысл значений, отдельные таблицы расшифровки не нужны.

Версионируемый

Поле версии связывает запись с поколением описания и определяет состав полей.

Раздел 02

Формат

Каждая запись Talis — это набор полей из таблицы ниже. Обязательные поля присутствуют всегда, необязательные добавляются по мере нужды. Значения в таблице иллюстративные.

ПолеТипОписание
versionстрокаНомер поколения описания, например 1.3. Определяет состав и толкование остальных полей.
record_idстрокаОтличительный знак записи, например r-2026-0001. Служит для различения записей между собой.
record_typeстрокаРазновидность сведений в полезной нагрузке, например карточка или событие.
created_atстрокаОтметка времени создания записи, например 2026-03-12T10:00:00Z. Записывается единым способом.
payloadсловарьПолезная нагрузка: именованные значения, ради которых запись создана.
checksumстрокаПроверочное сочетание символов для выявления случайных искажений при переносе и хранении.
metadataсловарьДобавочные сведения об окружении записи: пометки, язык описания, условия хранения.
Правила чтения
Незнакомые поля пропускаются без остановки разбора. Отсутствующие необязательные поля толкуются как незаданные. Порядок строк значения не имеет.
Раздел 03

Примеры

Ниже два образца структуры записи Talis. Это образцы строения, а не исполняемые указания. Значения вымышлены и служат лишь для показа расположения полей.

01 / Строки «ключ: значение»

version: 1.3
record_id: r-2026-0001
record_type: карточка
created_at: 2026-03-12T10:00:00Z
payload:
  title: Зелёная папка
  place: Зал три
  count: 4
checksum: 9f2c-41aa-77d1
metadata:
  lang: ru
  sheet: a

02 / Скобочная запись

{
  "version": "1.3",
  "record_id": "r-2026-0002",
  "record_type": "событие",
  "created_at": "2026-03-12T11:30:00Z",
  "payload": {
    "title": "Утренний обход",
    "hall": "Зал три",
    "seats": 12
  },
  "checksum": "c41d-09be-220a",
  "metadata": {
    "lang": "ru",
    "sheet": "b"
  }
}
Раздел 04

Версии

Перечень поколений описания Talis от нового к раннему. Номер поколения всегда указан внутри записи в поле версии.