СПЕЦИФИКАЦИЯ НА JSON-ФОРМАТ ОБМЕНА АСТРОЛОГИЧЕСКИМИ ДАННЫМИ - JALIF

Версия от 01 августа 2019 года

	JALIF - (JSON AstroLogical Interchange Format) - JSON-формат обмена астрологическими данными	

Содержание спецификации

1.	Общий обзор формата.
2.	Описание информационных элементов набора записей.
3.	Описание элементов данных записи (в наборе).
4.	Ссылки по теме.
5.	Приложение. Пример фрагмента JSON-файла данных формата JALIF.
6.	Лист регистрации изменений формата JALIF.

Общий обзор формата

Данный формат был создан в ходе работ над проектом Galaxy - Astrological Tools с целью связать, накопленные и отданные в общий доступ, астрологические данные (данные карт и событий с целым рядом признаков) и позволить без труда переносить их из одной астрологической программы в другую.

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

Для переноса или взаимного обмена данными, астрологическая программа должна поддерживать данный формат!

Формат представляет собой JSON-файл с произвольным именем и парами ключ-значение, определёнными заданной схемой хранения:
•	обменный файл формата JSON позволяет описывать любую древовидную структуру записей базы данных; 
•	кодировка файла данных - UTF-8; 
•	информационные элементы набора записей однозначно идентифицируют данный формат и его набор записей; 
•	элементы записи описывают содержимое одной записи (карты или события).

Описание информационных элементов набора записей

Данные элементы несут информационную составляющую каждого набора записей.
Элемент	Описание	Формат, примечание	Варианты, Примеры	
 fsign	Сигнатура формата	Сигнатура формата необходима для однозначного определения формата файла	JALIF_DataFormat	
fver	Версия формата	YYYYMMDD
	20190801	
utctag	Признак направления поправки UTC	В России и Европе принято считать поправку положительной к востоку от Гринвича, а в США - наоборот	P - плюс к востоку от Гринвича
N- минус к востоку от Гринвича	
nameset	Название набора данных	SSS...SSS
Любая доступная строка символов	Тестовый пример	
dtset	Дата формирования набора	YYYYMMDDHHMISS
(год-месяц-день-часы-мин-секунды)	20190801211317	
totrec	Количество записей в наборе	Описывает количество записей данного набора	52	
author	Информация об авторе подборки данных набора	Астролог-составитель данного набора данных и (или) ссылка на страницу в Интернете	Igor (TomCat) Germánenko	

Описание ключей данных записи (в наборе)

Данные элементы описывают содержимое каждой записи (карты или события), относящейся к набору.
Элемент	Описание	Формат, примечание	Варианты, Примеры	
rkey	Уникальный ключ записи, однозначно идентифицирующий её	Записью может быть как карта, так и папка. Ключ должен однозначно идентифицировать каждую запись. В качестве ключа рекомендуется использовать GUID	7AA8AC13A2F947CC82470CCBEE0B4700	
pkey	Уникальный ключ записи родителя для формирования древовидной структуры	Родителем может быть только папка. Ключ должен однозначно идентифицировать каждую запись. В качестве ключа рекомендуется использовать GUID	A73B273FF6094B14972F01FDD383320E	
rtag	Признак типа записи	S
Описывает тип записи как папку или карту.	F - папка
D - карта	
name	Наименование (ФИО, событие, вопрос и т.д.	SSS...SSS
Любая доступная строка символов.	Рождение Владимира Высоцкого	
dt	Дата-время карты 
	YYYYMMDDHHMISS
(год-месяц-день-часы-мин-секунды)	19380125093400 - 25 января 1938 года в 9 часов 34 минут 0 секунд	
delta	Поправка к UTC 
	NHHMISS
(знак-часы-мин-секунды)	+030000 - UTC+3 часа (к востоку)
+053017 - UTC+5:30:17 (к востоку)
-010000 - UTC-1 час (к западу)
с учётом знака поправки	
lat	Широта места
	DDMISSN
(градусы-мин-секунды-полусфера)	554500N - 55°45'00" с.ш.
000001S	- 0°0'1" ю.ш.	
lon	Долгота места 
	DDDMISSN
(градусы-мин-секунды-полусфера)	0373700E - 37°37'00" в.д.
0070101W - 7°1'1" з.д.
0000000E - 0°0'0" в.д.	
place	Текстовое описание места
	SSS...SSS
Любая доступная строка символов.	Москва (Московская)	
remc	Примечание 
	SSS...SSS
Любая доступная строка символов.	ректификация Astroman	
ctag	Признак карты 
	S	0 - признак не определён
N - натальная карта
E - событие
H - хорарная карта	
thems	Тема(ы) карты для события и темы кверента-квезита для хорара 	NNMM	0000 - для натальной карты
0500 - событие по теме 5
0107 - тема кверента 1, тема квезита 7	
sex	Признак пола 
	S	0 - (ноль) пол не определён 
M - мужской
F - женский	
prectag	Признак точности карты 
	S	Для натальных карт:
0 - (ноль) точность не определена
K - космограмма
N - карта не ректифицирована
R - карта ректифицирована

Для событий:
0 - (ноль) точность не определена
P - событие точно
M - минуты
H - часы
D - дни
W - недели
Y - месяцы	
rpic	Ссылка на файл фотографии
	SSS...SSS 
Имя файла и расширение	vvisockiy.png - файл находится в папке с JSON-файлом
img\vvisockiy.png - файл находится в папке IMG, которая находится в папке с JSON-файлом	
nkey	Уникальный ключ записи натальной карты для события	В качестве ключа рекомендуется использовать GUID. Используется при сопоставлении события кверента с его натальной картой для автоматического анализа событий.	A73B273FF6094B14972F01FDD383320E
	
addvals	Дополнительные условия	SSS...SSS
Строка, содержащая теги и значения. Дополнительные условия, используемые для расширения возможностей автоматизированного выполнения операций ректификации и прогностики. 	<addtheme>28</addtheme>
<useobj>0304</useobj>
<ignoreobj>06</ignoreobj>

Например, здесь задаются дополнительные темы домов (тег "addtheme"), дополнительные объекты карты (тег "useobj") и исключаемые объекты (тег "ignoreobj"), которые используются для определения тематических объектов, используемых при ректификации и прогностике.	
fval	Величина для анализа	N.M
N - целая часть
M - дробная часть
	33.1719 или -15 или 4.0 и т.д.
используется в случае автоматизированного анализа событий и карт. Например, величина курса валюты для населённого пункта (биржи) в указанную дату.	

Ссылки по теме

Ссылка	Описание	
http://galaxyprog.ru/download_jalif.html	Страница с описанием формата JALIF	
http://galaxyprog.ru/upload/jalif/jalif_spec.rtf	Документ спецификации формата JALIF	
http://galaxyprog.ru/upload/jalif/JALIF_test.zip	Тестовый пример формата JALIF	

Игорь (TomCat) Гермáненко,
Санкт-Петербург, 2014-2019.

Приложение.

Пример 2-х записей (папка и натальная карта) JSON-файла данных формата JALIF

[
{"addvals":null,
"ctag":"",
"delta":null,
"dt":null,
"fval":null,
"lat":null,
"lon":null,
"name":"Банк примеров для компонентов Galaxy",
"nkey":[null],
"pkey":"00000000000000000000000000000000",
"place":null,
"prectag":"",
"remc":"Банк содержит реальные данные людей и событий жизни Владимира Семёновича Высоцкого",
"rpic":"img\\00000000000000000000000000000001",
"rtag":"F",
"sex":"",
"thems":""},

{"addvals":"",
"ctag":"N",
"delta":"+030000",
"dt":"19380125093400",
"fval":null,
"lat":"554500N",
"lon":"0373700E",
"name":"Высоцкий Владимир - рождение",
"nkey":[null],
"pkey":"A73B273FF6094B14972F01FDD383320E",
"place":"Москва (Московская)",
"prectag":"R",
"remc":"ректификация Astroman",
"rkey":"1AF1C4215D5C48A89AF90728AEC2F8E4",
"rpic":null,
"rtag":"D",
"sex":"M",
"thems":"0000"}
]

Лист регистрации изменений формата JALIF

Дата	Кем внесено изменение	Краткое описание	
 01 августа 2019	Игорь (TomCat) Гермáненко	Базовая версия формата