feat(cuod): + 4 справочника mission, instrument, processing_level, data_format

Греет Альтум-интеграцию (заказ съёмки) и любых других consumer'ов ДЗЗ.
Манифест cuod 1.0.0 → 1.1.0. Existing справочники (spacecraft, satellite_type,
ground_station) не тронуты — их schemaVersion остался 1.0.0.

Схемы:
- mission: программа/семейство КА (Ресурс-П, Канопус-В, Sentinel и т.д.)
- instrument: бортовой сенсор с m2m связью со spacecraft и cascade в
  data_format/processing_level через supported_*_codes
- processing_level: L0...L4 с sort_order для упорядочивания
- data_format: GeoTIFF/NITF/COG/SAFE/... с MIME + расширением

Везде x-id-source=code (auto businessKey), x-unique=true на code.
Поля name/description везде x-localized RU+EN.

Сидинг (35 записей):
- mission: 9 (российские + Sentinel + Terra/Aqua)
- instrument: 10 (Геотон-Л1, КШМСА, ГСА-2, ПСС-В, МСУ-МР, МСУ-ГС, Кондор SAR, MODIS, C-SAR, MSI)
- processing_level: 8 (L0/L1A/L1B/L1C/L2A/L2B/L3/L4)
- data_format: 8 (GEOTIFF, COG, NITF, JPEG2000, NETCDF, HDF5, SAFE, KMZ)

Cross-refs работают: mission.spacecraft_codes и instrument.spacecraft_codes
ссылаются на existing spacecraft businessKeys; instrument.supported_*_codes —
на новые data_format/processing_level. Импортер CuodBundleImporter
идемпотентен — на ребуте поднимет всё, существующее не тронет.
This commit is contained in:
Zimin A.N.
2026-05-04 15:44:38 +03:00
parent 7b2fe6f2d5
commit e284fa85be
9 changed files with 809 additions and 1 deletions
@@ -0,0 +1,48 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://ordinis.nstart.cloud/schemas/cuod/data_format/1.0.0",
"title": "Data Format (формат файлов)",
"description": "Формат поставки данных — GeoTIFF, NITF, JPEG2000, COG, NetCDF и т.д.",
"type": "object",
"required": ["code", "name", "mime_type", "file_extension", "status"],
"additionalProperties": false,
"x-id-source": "code",
"properties": {
"code": {
"type": "string",
"description": "Код формата. Например GEOTIFF, NITF, JPEG2000.",
"pattern": "^[A-Z][A-Z0-9_]{1,31}$",
"x-unique": true
},
"name": {
"type": "object",
"x-localized": true,
"description": "Человеко-читаемое наименование",
"patternProperties": {
"^[a-z]{2}-[A-Z]{2}$": { "type": "string", "minLength": 1 }
},
"required": ["ru-RU"]
},
"description": {
"type": "object",
"x-localized": true,
"patternProperties": {
"^[a-z]{2}-[A-Z]{2}$": { "type": "string" }
}
},
"mime_type": {
"type": "string",
"description": "MIME-тип файла",
"pattern": "^[a-z0-9.+-]+/[a-z0-9.+-]+$"
},
"file_extension": {
"type": "string",
"description": "Расширение файла, начинается с точки",
"pattern": "^\\.[a-zA-Z0-9]{1,16}$"
},
"status": {
"type": "string",
"enum": ["active", "archived"]
}
}
}
@@ -0,0 +1,77 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://ordinis.nstart.cloud/schemas/cuod/instrument/1.0.0",
"title": "Instrument (бортовой сенсор)",
"description": "Конкретный сенсор/полезная нагрузка на борту КА. Один прибор может летать на нескольких бортах (many-to-many со spacecraft).",
"type": "object",
"required": ["code", "name", "type", "status"],
"additionalProperties": false,
"x-id-source": "code",
"properties": {
"code": {
"type": "string",
"description": "Код прибора. UPPER кириллицу транслитерируем; разрешены буквы, цифры, _ и -.",
"pattern": "^[A-Z][A-Z0-9_\\-]{1,63}$",
"x-unique": true
},
"name": {
"type": "object",
"x-localized": true,
"description": "Наименование прибора",
"patternProperties": {
"^[a-z]{2}-[A-Z]{2}$": { "type": "string", "minLength": 1 }
},
"required": ["ru-RU"]
},
"description": {
"type": "object",
"x-localized": true,
"patternProperties": {
"^[a-z]{2}-[A-Z]{2}$": { "type": "string" }
}
},
"spacecraft_codes": {
"type": "array",
"description": "businessKey'и КА с этим прибором (many-to-many)",
"items": { "type": "string" },
"uniqueItems": true
},
"type": {
"type": "string",
"description": "Тип сенсора. UI использует для фильтрации.",
"enum": ["optical", "sar", "infrared", "multispectral", "hyperspectral", "thermal", "lidar", "radiometer"]
},
"spatial_resolution_m": {
"type": "number",
"description": "Лучшее пространственное разрешение, метры",
"minimum": 0
},
"swath_km": {
"type": "number",
"description": "Ширина полосы захвата, километры",
"minimum": 0
},
"spectral_bands": {
"type": "array",
"description": "Спектральные каналы прибора",
"items": { "type": "string" },
"uniqueItems": true
},
"supported_format_codes": {
"type": "array",
"description": "businessKey'и из data_format — какие форматы поддерживает выгрузка",
"items": { "type": "string" },
"uniqueItems": true
},
"supported_level_codes": {
"type": "array",
"description": "businessKey'и из processing_level — какие уровни обработки доступны",
"items": { "type": "string" },
"uniqueItems": true
},
"status": {
"type": "string",
"enum": ["active", "archived", "planned"]
}
}
}
@@ -2,7 +2,7 @@
"bundle": "cuod", "bundle": "cuod",
"displayName": "ЦУОД ДЗЗ", "displayName": "ЦУОД ДЗЗ",
"description": "Bundle справочников для Центра Управления Обработкой Данных ДЗЗ. Anchor v1.", "description": "Bundle справочников для Центра Управления Обработкой Данных ДЗЗ. Anchor v1.",
"version": "1.0.0", "version": "1.1.0",
"supportedLocales": ["ru-RU", "en-US"], "supportedLocales": ["ru-RU", "en-US"],
"defaultLocale": "ru-RU", "defaultLocale": "ru-RU",
"dictionaries": [ "dictionaries": [
@@ -29,6 +29,38 @@
"scope": "PUBLIC", "scope": "PUBLIC",
"schemaResource": "ground_station.schema.json", "schemaResource": "ground_station.schema.json",
"schemaVersion": "1.0.0" "schemaVersion": "1.0.0"
},
{
"name": "mission",
"displayName": "Миссии / программы",
"description": "Программы ДЗЗ — Ресурс-П, Канопус-В, Sentinel и т.д. Группируют семейства КА.",
"scope": "PUBLIC",
"schemaResource": "mission.schema.json",
"schemaVersion": "1.0.0"
},
{
"name": "instrument",
"displayName": "Инструменты съёмки",
"description": "Полезная нагрузка / сенсоры на борту КА (Геотон-Л1, MODIS, C-SAR, ...)",
"scope": "PUBLIC",
"schemaResource": "instrument.schema.json",
"schemaVersion": "1.0.0"
},
{
"name": "processing_level",
"displayName": "Уровни обработки",
"description": "Стандартные уровни обработки L0-L4 по NASA/ESA",
"scope": "PUBLIC",
"schemaResource": "processing_level.schema.json",
"schemaVersion": "1.0.0"
},
{
"name": "data_format",
"displayName": "Форматы данных",
"description": "Форматы поставки растровых продуктов (GeoTIFF, COG, NITF, NetCDF и т.д.)",
"scope": "PUBLIC",
"schemaResource": "data_format.schema.json",
"schemaVersion": "1.0.0"
} }
] ]
} }
@@ -0,0 +1,58 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://ordinis.nstart.cloud/schemas/cuod/mission/1.0.0",
"title": "Mission (программа / семейство КА)",
"description": "Программа ДЗЗ — например Ресурс, Канопус, Sentinel. Группирует семейство spacecraft, общие цели и задачи.",
"type": "object",
"required": ["code", "name", "status"],
"additionalProperties": false,
"x-id-source": "code",
"properties": {
"code": {
"type": "string",
"description": "Код программы. UPPER_SNAKE_CASE.",
"pattern": "^[A-Z][A-Z0-9_]{1,63}$",
"x-unique": true
},
"name": {
"type": "object",
"x-localized": true,
"description": "Краткое наименование программы для UI",
"patternProperties": {
"^[a-z]{2}-[A-Z]{2}$": { "type": "string", "minLength": 1 }
},
"required": ["ru-RU"]
},
"description": {
"type": "object",
"x-localized": true,
"description": "Развёрнутое описание программы",
"patternProperties": {
"^[a-z]{2}-[A-Z]{2}$": { "type": "string" }
}
},
"spacecraft_codes": {
"type": "array",
"description": "businessKey'и из spacecraft, входящих в эту программу",
"items": { "type": "string" },
"uniqueItems": true
},
"operator": {
"type": "object",
"x-localized": true,
"description": "Оператор программы",
"patternProperties": {
"^[a-z]{2}-[A-Z]{2}$": { "type": "string" }
}
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 код страны",
"pattern": "^[A-Z]{2}$"
},
"status": {
"type": "string",
"enum": ["active", "archived", "planned"]
}
}
}
@@ -0,0 +1,45 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://ordinis.nstart.cloud/schemas/cuod/processing_level/1.0.0",
"title": "Processing Level (уровень обработки)",
"description": "Уровень обработки данных ДЗЗ — L0 raw → L4 derived products. Стандарт NASA/ESA + ГОСТ.",
"type": "object",
"required": ["code", "name", "sort_order", "status"],
"additionalProperties": false,
"x-id-source": "code",
"properties": {
"code": {
"type": "string",
"description": "Код уровня обработки. Например L0, L1A, L2.",
"pattern": "^L[0-9][A-Z]?$",
"x-unique": true
},
"name": {
"type": "object",
"x-localized": true,
"description": "Краткое наименование уровня",
"patternProperties": {
"^[a-z]{2}-[A-Z]{2}$": { "type": "string", "minLength": 1 }
},
"required": ["ru-RU"]
},
"description": {
"type": "object",
"x-localized": true,
"description": "Подробное описание содержания уровня",
"patternProperties": {
"^[a-z]{2}-[A-Z]{2}$": { "type": "string" }
}
},
"sort_order": {
"type": "integer",
"description": "Порядок отображения для упорядочивания L0 → L1 → L2 → ...",
"minimum": 0,
"x-unique": true
},
"status": {
"type": "string",
"enum": ["active", "archived"]
}
}
}
@@ -0,0 +1,114 @@
[
{
"businessKey": "GEOTIFF",
"data": {
"code": "GEOTIFF",
"name": { "ru-RU": "GeoTIFF", "en-US": "GeoTIFF" },
"description": {
"ru-RU": "Растровый формат TIFF с привязкой к географическим координатам. Стандарт OGC.",
"en-US": "Georeferenced TIFF raster format. OGC standard."
},
"mime_type": "image/tiff",
"file_extension": ".tif",
"status": "active"
}
},
{
"businessKey": "COG",
"data": {
"code": "COG",
"name": { "ru-RU": "Cloud-Optimized GeoTIFF", "en-US": "Cloud-Optimized GeoTIFF" },
"description": {
"ru-RU": "Профиль GeoTIFF с внутренней тайловой организацией для эффективного чтения по диапазонам байт через HTTP.",
"en-US": "GeoTIFF profile with internal tiling for efficient HTTP byte-range reads."
},
"mime_type": "image/tiff",
"file_extension": ".tif",
"status": "active"
}
},
{
"businessKey": "NITF",
"data": {
"code": "NITF",
"name": { "ru-RU": "NITF", "en-US": "NITF" },
"description": {
"ru-RU": "National Imagery Transmission Format — стандарт NATO для ДЗЗ-снимков.",
"en-US": "National Imagery Transmission Format — NATO imagery standard."
},
"mime_type": "application/octet-stream",
"file_extension": ".ntf",
"status": "active"
}
},
{
"businessKey": "JPEG2000",
"data": {
"code": "JPEG2000",
"name": { "ru-RU": "JPEG 2000", "en-US": "JPEG 2000" },
"description": {
"ru-RU": "Wavelet-сжатие, поддерживает геопривязку через GMLJP2/GeoJP2.",
"en-US": "Wavelet compression, supports georeferencing via GMLJP2/GeoJP2."
},
"mime_type": "image/jp2",
"file_extension": ".jp2",
"status": "active"
}
},
{
"businessKey": "NETCDF",
"data": {
"code": "NETCDF",
"name": { "ru-RU": "NetCDF-4", "en-US": "NetCDF-4" },
"description": {
"ru-RU": "Самоописываемый формат для научных массивов, базируется на HDF5. CF-conventions для климатических данных.",
"en-US": "Self-describing scientific array format on top of HDF5. CF conventions for climate data."
},
"mime_type": "application/x-netcdf",
"file_extension": ".nc",
"status": "active"
}
},
{
"businessKey": "HDF5",
"data": {
"code": "HDF5",
"name": { "ru-RU": "HDF5", "en-US": "HDF5" },
"description": {
"ru-RU": "Иерархический формат для больших научных датасетов. Используется для гиперспектральных и L2-продуктов.",
"en-US": "Hierarchical format for large scientific datasets. Used for hyperspectral and L2 products."
},
"mime_type": "application/x-hdf5",
"file_extension": ".h5",
"status": "active"
}
},
{
"businessKey": "SAFE",
"data": {
"code": "SAFE",
"name": { "ru-RU": "SAFE", "en-US": "SAFE" },
"description": {
"ru-RU": "Standard Archive Format for Europe — пакет ESA для Sentinel-продуктов (zip с XML-манифестом и tiff'ами).",
"en-US": "Standard Archive Format for Europe — ESA Sentinel product package (zip with XML manifest and TIFFs)."
},
"mime_type": "application/zip",
"file_extension": ".zip",
"status": "active"
}
},
{
"businessKey": "KMZ",
"data": {
"code": "KMZ",
"name": { "ru-RU": "KMZ", "en-US": "KMZ" },
"description": {
"ru-RU": "Сжатый KML для отображения растровых наложений в Google Earth и QGIS.",
"en-US": "Zipped KML for raster overlays in Google Earth and QGIS."
},
"mime_type": "application/vnd.google-earth.kmz",
"file_extension": ".kmz",
"status": "active"
}
}
]
@@ -0,0 +1,191 @@
[
{
"businessKey": "GEOTON-L1",
"data": {
"code": "GEOTON-L1",
"name": { "ru-RU": "Геотон-Л1", "en-US": "Geoton-L1" },
"description": {
"ru-RU": "Оптико-электронный комплекс высокого разрешения для КА Ресурс-П: панхром 1 м, мультиспектр 3-4 м, 5 каналов VNIR.",
"en-US": "High-resolution optoelectronic payload on Resurs-P: 1 m PAN, 3-4 m multispectral, 5 VNIR bands."
},
"spacecraft_codes": [],
"type": "optical",
"spatial_resolution_m": 1.0,
"swath_km": 38,
"spectral_bands": ["PAN", "B", "G", "R", "RE", "NIR"],
"supported_format_codes": ["GEOTIFF", "COG", "JPEG2000"],
"supported_level_codes": ["L1A", "L1B", "L1C", "L2A"],
"status": "active"
}
},
{
"businessKey": "KSHMSA",
"data": {
"code": "KSHMSA",
"name": { "ru-RU": "КШМСА (Комплекс широкозахватной мультиспектральной съёмки)", "en-US": "KShMSA (Wide-swath multispectral imager)" },
"description": {
"ru-RU": "Широкозахватный мультиспектральный сенсор Ресурс-П: 4 канала VNIR, разрешение 60-120 м, полоса 441 км.",
"en-US": "Wide-swath multispectral sensor on Resurs-P: 4 VNIR bands, 60-120 m resolution, 441 km swath."
},
"spacecraft_codes": [],
"type": "multispectral",
"spatial_resolution_m": 60,
"swath_km": 441,
"spectral_bands": ["B", "G", "R", "NIR"],
"supported_format_codes": ["GEOTIFF", "COG"],
"supported_level_codes": ["L1A", "L1B", "L1C", "L2A", "L3"],
"status": "active"
}
},
{
"businessKey": "GSA-2",
"data": {
"code": "GSA-2",
"name": { "ru-RU": "ГСА-2", "en-US": "GSA-2" },
"description": {
"ru-RU": "Гиперспектральный сенсор для Ресурс-П: 96-216 каналов в диапазоне 400-1100 нм, разрешение 25-30 м.",
"en-US": "Hyperspectral sensor on Resurs-P: 96-216 channels in 400-1100 nm, 25-30 m resolution."
},
"spacecraft_codes": [],
"type": "hyperspectral",
"spatial_resolution_m": 25,
"swath_km": 25,
"supported_format_codes": ["GEOTIFF", "HDF5", "NETCDF"],
"supported_level_codes": ["L1A", "L1B", "L2A"],
"status": "active"
}
},
{
"businessKey": "PSS-V",
"data": {
"code": "PSS-V",
"name": { "ru-RU": "ПСС-В (Панхроматическая съёмочная система)", "en-US": "PSS-V Panchromatic imager" },
"description": {
"ru-RU": "Панхроматический сенсор Канопус-В: разрешение 2,1 м, полоса 23 км.",
"en-US": "Panchromatic sensor on Kanopus-V: 2.1 m resolution, 23 km swath."
},
"spacecraft_codes": [],
"type": "optical",
"spatial_resolution_m": 2.1,
"swath_km": 23,
"spectral_bands": ["PAN"],
"supported_format_codes": ["GEOTIFF", "COG"],
"supported_level_codes": ["L1A", "L1B", "L1C"],
"status": "active"
}
},
{
"businessKey": "MSU-MR",
"data": {
"code": "MSU-MR",
"name": { "ru-RU": "МСУ-МР (Многозональное сканирующее устройство малого разрешения)", "en-US": "MSU-MR low-resolution scanner" },
"description": {
"ru-RU": "Многозональный сканер Метеор-М: 6 каналов VIS-TIR, разрешение 1 км, полоса 2900 км.",
"en-US": "Multi-band scanner on Meteor-M: 6 VIS-TIR bands, 1 km resolution, 2900 km swath."
},
"spacecraft_codes": [],
"type": "multispectral",
"spatial_resolution_m": 1000,
"swath_km": 2900,
"spectral_bands": ["VIS", "NIR", "SWIR", "TIR"],
"supported_format_codes": ["GEOTIFF", "NETCDF", "HDF5"],
"supported_level_codes": ["L1A", "L1B", "L2A", "L3"],
"status": "active"
}
},
{
"businessKey": "MSU-GS",
"data": {
"code": "MSU-GS",
"name": { "ru-RU": "МСУ-ГС", "en-US": "MSU-GS" },
"description": {
"ru-RU": "Многозональное сканирующее устройство геостационарного наблюдения для Электро-Л: 10 каналов VIS/IR, диск Земли каждые 15-30 минут.",
"en-US": "Multi-band scanner for Elektro-L geostationary platform: 10 VIS/IR bands, full disk every 15-30 minutes."
},
"spacecraft_codes": [],
"type": "multispectral",
"spatial_resolution_m": 1000,
"swath_km": 22000,
"spectral_bands": ["VIS", "NIR", "MWIR", "TIR"],
"supported_format_codes": ["GEOTIFF", "NETCDF", "HDF5"],
"supported_level_codes": ["L1A", "L1B", "L2A"],
"status": "active"
}
},
{
"businessKey": "KONDOR-FKA-SAR",
"data": {
"code": "KONDOR-FKA-SAR",
"name": { "ru-RU": "РЛК Кондор-ФКА", "en-US": "Kondor-FKA SAR" },
"description": {
"ru-RU": "Радиолокатор синтезированной апертуры S-диапазона на КА Кондор-ФКА: разрешение от 1 м, полоса 10-120 км.",
"en-US": "S-band SAR on Kondor-FKA: 1 m best resolution, 10-120 km swath."
},
"spacecraft_codes": ["2024-149E"],
"type": "sar",
"spatial_resolution_m": 1,
"swath_km": 10,
"spectral_bands": ["S_BAND"],
"supported_format_codes": ["GEOTIFF", "NITF", "HDF5"],
"supported_level_codes": ["L1A", "L1B", "L1C", "L2A"],
"status": "active"
}
},
{
"businessKey": "MODIS",
"data": {
"code": "MODIS",
"name": { "ru-RU": "MODIS", "en-US": "MODIS" },
"description": {
"ru-RU": "Moderate Resolution Imaging Spectroradiometer на Terra/Aqua: 36 каналов VIS-TIR, разрешение 250/500/1000 м.",
"en-US": "Moderate Resolution Imaging Spectroradiometer on Terra/Aqua: 36 VIS-TIR channels at 250/500/1000 m."
},
"spacecraft_codes": ["1999-068A"],
"type": "multispectral",
"spatial_resolution_m": 250,
"swath_km": 2330,
"spectral_bands": ["VIS", "NIR", "SWIR", "MWIR", "LWIR", "TIR"],
"supported_format_codes": ["HDF5", "NETCDF", "GEOTIFF"],
"supported_level_codes": ["L1A", "L1B", "L2A", "L2B", "L3", "L4"],
"status": "active"
}
},
{
"businessKey": "C-SAR",
"data": {
"code": "C-SAR",
"name": { "ru-RU": "C-SAR (Sentinel-1)", "en-US": "C-SAR (Sentinel-1)" },
"description": {
"ru-RU": "C-band SAR на Sentinel-1: разрешение 5x20 м (IW), полоса 250 км. Открытые данные.",
"en-US": "C-band SAR on Sentinel-1: 5x20 m (IW), 250 km swath. Open data."
},
"spacecraft_codes": ["2014-016A"],
"type": "sar",
"spatial_resolution_m": 5,
"swath_km": 250,
"spectral_bands": ["C_BAND"],
"supported_format_codes": ["SAFE", "GEOTIFF", "COG"],
"supported_level_codes": ["L1A", "L1B", "L1C", "L2A"],
"status": "active"
}
},
{
"businessKey": "MSI-S2",
"data": {
"code": "MSI-S2",
"name": { "ru-RU": "MSI (Sentinel-2)", "en-US": "MSI (Sentinel-2)" },
"description": {
"ru-RU": "Multispectral Instrument Sentinel-2: 13 каналов VNIR/SWIR, разрешение 10/20/60 м, полоса 290 км.",
"en-US": "Sentinel-2 Multispectral Instrument: 13 VNIR/SWIR bands at 10/20/60 m, 290 km swath."
},
"spacecraft_codes": ["2015-028A"],
"type": "multispectral",
"spatial_resolution_m": 10,
"swath_km": 290,
"spectral_bands": ["B", "G", "R", "RE", "NIR", "SWIR"],
"supported_format_codes": ["SAFE", "GEOTIFF", "COG", "JPEG2000"],
"supported_level_codes": ["L1A", "L1B", "L1C", "L2A", "L3"],
"status": "active"
}
}
]
@@ -0,0 +1,137 @@
[
{
"businessKey": "RESURS_P",
"data": {
"code": "RESURS_P",
"name": { "ru-RU": "Ресурс-П", "en-US": "Resurs-P" },
"description": {
"ru-RU": "Российская программа оптического ДЗЗ среднего и высокого разрешения. Mass-class — большие КА на ССО.",
"en-US": "Russian optical Earth observation programme, mid-to-high resolution. Heavy buses on SSO."
},
"spacecraft_codes": [],
"operator": { "ru-RU": "Роскосмос / РКЦ Прогресс", "en-US": "Roscosmos / RSC Progress" },
"country": "RU",
"status": "active"
}
},
{
"businessKey": "KANOPUS_V",
"data": {
"code": "KANOPUS_V",
"name": { "ru-RU": "Канопус-В", "en-US": "Kanopus-V" },
"description": {
"ru-RU": "Малые КА оперативного мониторинга техногенных и природных катастроф, картографирование.",
"en-US": "Small satellites for rapid monitoring of man-made and natural disasters, mapping."
},
"spacecraft_codes": [],
"operator": { "ru-RU": "Роскосмос / ВНИИЭМ", "en-US": "Roscosmos / VNIIEM" },
"country": "RU",
"status": "active"
}
},
{
"businessKey": "KONDOR_FKA",
"data": {
"code": "KONDOR_FKA",
"name": { "ru-RU": "Кондор-ФКА", "en-US": "Kondor-FKA" },
"description": {
"ru-RU": "Российская программа радиолокационного наблюдения Земли S-диапазона, всепогодные снимки.",
"en-US": "Russian S-band radar Earth observation programme, all-weather imaging."
},
"spacecraft_codes": ["2024-149E"],
"operator": { "ru-RU": "Роскосмос / НПО Машиностроения", "en-US": "Roscosmos / NPO Mashinostroyeniya" },
"country": "RU",
"status": "active"
}
},
{
"businessKey": "ELEKTRO_L",
"data": {
"code": "ELEKTRO_L",
"name": { "ru-RU": "Электро-Л", "en-US": "Elektro-L" },
"description": {
"ru-RU": "Геостационарная гидрометеорологическая программа. Многоспектральная съёмка диска Земли каждые 15-30 минут.",
"en-US": "Geostationary meteorological programme. Multi-spectral full-disk imaging every 15-30 minutes."
},
"spacecraft_codes": [],
"operator": { "ru-RU": "Росгидромет / НПО Лавочкина", "en-US": "Roshydromet / Lavochkin Association" },
"country": "RU",
"status": "active"
}
},
{
"businessKey": "METEOR_M",
"data": {
"code": "METEOR_M",
"name": { "ru-RU": "Метеор-М", "en-US": "Meteor-M" },
"description": {
"ru-RU": "Российская гидрометеорологическая полярная программа. Глобальное покрытие 1-2 раза в сутки.",
"en-US": "Russian polar meteorological programme. Global coverage 1-2 times per day."
},
"spacecraft_codes": [],
"operator": { "ru-RU": "Росгидромет / ВНИИЭМ", "en-US": "Roshydromet / VNIIEM" },
"country": "RU",
"status": "active"
}
},
{
"businessKey": "ARKTIKA_M",
"data": {
"code": "ARKTIKA_M",
"name": { "ru-RU": "Арктика-М", "en-US": "Arktika-M" },
"description": {
"ru-RU": "Высокоэллиптическая орбита (Молния) для непрерывного мониторинга Арктики и северных широт.",
"en-US": "Highly elliptical Molniya orbit for continuous Arctic and high-latitude monitoring."
},
"spacecraft_codes": [],
"operator": { "ru-RU": "Росгидромет / НПО Лавочкина", "en-US": "Roshydromet / Lavochkin Association" },
"country": "RU",
"status": "active"
}
},
{
"businessKey": "SENTINEL_1",
"data": {
"code": "SENTINEL_1",
"name": { "ru-RU": "Sentinel-1", "en-US": "Sentinel-1" },
"description": {
"ru-RU": "C-band SAR-программа Copernicus, всепогодная радиолокация, открытые данные.",
"en-US": "Copernicus C-band SAR programme, all-weather radar, open data."
},
"spacecraft_codes": ["2014-016A"],
"operator": { "ru-RU": "ESA / Copernicus", "en-US": "ESA / Copernicus" },
"country": "FR",
"status": "active"
}
},
{
"businessKey": "SENTINEL_2",
"data": {
"code": "SENTINEL_2",
"name": { "ru-RU": "Sentinel-2", "en-US": "Sentinel-2" },
"description": {
"ru-RU": "Multispectral imaging для Copernicus, 13 каналов VNIR/SWIR, разрешение 10/20/60 м.",
"en-US": "Copernicus multispectral imaging, 13 VNIR/SWIR bands at 10/20/60 m."
},
"spacecraft_codes": ["2015-028A"],
"operator": { "ru-RU": "ESA / Copernicus", "en-US": "ESA / Copernicus" },
"country": "FR",
"status": "active"
}
},
{
"businessKey": "TERRA_AQUA",
"data": {
"code": "TERRA_AQUA",
"name": { "ru-RU": "Terra / Aqua (EOS)", "en-US": "Terra / Aqua (EOS)" },
"description": {
"ru-RU": "Платформы NASA EOS с MODIS-сенсором для глобального мониторинга суши, атмосферы и океана.",
"en-US": "NASA EOS platforms carrying MODIS for global land, atmosphere, and ocean monitoring."
},
"spacecraft_codes": ["1999-068A"],
"operator": { "ru-RU": "NASA", "en-US": "NASA" },
"country": "US",
"status": "active"
}
}
]
@@ -0,0 +1,106 @@
[
{
"businessKey": "L0",
"data": {
"code": "L0",
"name": { "ru-RU": "Сырые данные", "en-US": "Raw data" },
"description": {
"ru-RU": "L0 — поток с борта без какой-либо обработки. Содержит служебные кадры и недекодированные пакеты CCSDS.",
"en-US": "L0 — raw downlink stream with no processing. Contains housekeeping frames and undecoded CCSDS packets."
},
"sort_order": 0,
"status": "active"
}
},
{
"businessKey": "L1A",
"data": {
"code": "L1A",
"name": { "ru-RU": "Декодированные кадры", "en-US": "Decoded frames" },
"description": {
"ru-RU": "L1A — служебная информация отделена, спектральные кадры разобраны, без радиометрической коррекции.",
"en-US": "L1A — housekeeping stripped, spectral frames decoded, no radiometric correction."
},
"sort_order": 10,
"status": "active"
}
},
{
"businessKey": "L1B",
"data": {
"code": "L1B",
"name": { "ru-RU": "Радиометрически скорректированный", "en-US": "Radiometrically corrected" },
"description": {
"ru-RU": "L1B — применена радиометрическая калибровка, значения в физических единицах (W/(m²·sr·μm)).",
"en-US": "L1B — radiometric calibration applied, values in physical units (W/(m²·sr·μm))."
},
"sort_order": 20,
"status": "active"
}
},
{
"businessKey": "L1C",
"data": {
"code": "L1C",
"name": { "ru-RU": "Геометрически скорректированный (TOA)", "en-US": "Geometrically corrected (TOA)" },
"description": {
"ru-RU": "L1C — ортотрансформирован к картографической проекции, отражение на верхней границе атмосферы (TOA reflectance).",
"en-US": "L1C — orthorectified to map projection, top-of-atmosphere reflectance."
},
"sort_order": 30,
"status": "active"
}
},
{
"businessKey": "L2A",
"data": {
"code": "L2A",
"name": { "ru-RU": "Поверхностное отражение", "en-US": "Surface reflectance" },
"description": {
"ru-RU": "L2A — атмосферная коррекция применена, значения отражения подстилающей поверхности (BOA).",
"en-US": "L2A — atmospheric correction applied, bottom-of-atmosphere surface reflectance."
},
"sort_order": 40,
"status": "active"
}
},
{
"businessKey": "L2B",
"data": {
"code": "L2B",
"name": { "ru-RU": "Тематические продукты", "en-US": "Thematic products" },
"description": {
"ru-RU": "L2B — производные индексы (NDVI, NDWI, LAI и т.д.) на единичный снимок.",
"en-US": "L2B — derived indices (NDVI, NDWI, LAI etc.) per single scene."
},
"sort_order": 50,
"status": "active"
}
},
{
"businessKey": "L3",
"data": {
"code": "L3",
"name": { "ru-RU": "Сводные продукты", "en-US": "Aggregated products" },
"description": {
"ru-RU": "L3 — мозаики, временные композиты, агрегированные сводки на регулярной сетке.",
"en-US": "L3 — mosaics, time composites, aggregated grids."
},
"sort_order": 60,
"status": "active"
}
},
{
"businessKey": "L4",
"data": {
"code": "L4",
"name": { "ru-RU": "Производные модели", "en-US": "Derived model products" },
"description": {
"ru-RU": "L4 — продукты ассимиляции и моделирования (например прогноз биомассы, climate reanalysis).",
"en-US": "L4 — assimilation and modelled products (e.g. biomass forecast, climate reanalysis)."
},
"sort_order": 70,
"status": "active"
}
}
]