BUFR - BUFR

В Бинарная универсальная форма для представления метеорологических данных (BUFR) это двоичный формат данных поддерживается Всемирная метеорологическая организация (ВМО). Последней версией является BUFR Edition 4. BUFR Edition 3 также считается актуальной для оперативного использования. BUFR был создан в 1988 г. с целью замены десятков символьных и позиционно-ориентированных метеорологический коды, такие как СИНОП (наземные наблюдения), ТЕМП. (зондирование верхних слоев атмосферы) и КЛИМАТ (ежемесячные климатологические данные). BUFR был разработан, чтобы быть портативным, компактным и универсальным. Могут быть представлены любые данные, а также их конкретный пространственный / временной контекст и любые другие связанные метаданные. В терминологии ВМО код BUFR относится к категории таблично-ориентированные кодовые формы, где значение элементов данных определяется ссылкой на набор таблиц, которые хранятся и обслуживаются отдельно от самого сообщения.

BUFR - это сложный формат, который может быть трудно использовать [1] и в нем есть некоторые слабые места.[2] Введение формата BUFR привело к "рассогласованию" данных и множеству ошибок форматирования.[3][4][5]

Описание формата

Сообщение BUFR состоит из шести разделов, пронумерованных от нуля до пяти.

  • Разделы 0, 1 и 5 содержат статические метаданные, в основном для идентификации сообщения.
  • Раздел 2 не является обязательным; если он используется, он может содержать произвольные данные в любой форме, которую пожелает создатель сообщения (это рекомендуется только для локального использования).
  • Раздел 3 содержит последовательность так называемых дескрипторы которые определяют форму и содержание информационного продукта BUFR.
  • Раздел 4 - это битовый поток, содержащий основные данные сообщения и значения метаданных, как указано в разделе 3.

Описание продукта, содержащееся в разделе 3, можно сделать сложным и нетривиальным с помощью репликации и / или дескрипторов операторов. (См. Ниже краткий обзор различных типов дескрипторов; дополнительные подробности см. В Руководстве ВМО по BUFR.)

Шаблоны

Раздел 3 содержит короткий заголовок, за которым следует последовательность дескрипторов, которая соответствует содержимому битового потока раздела 4. Последовательность дескрипторов в разделе 3 можно понимать как шаблон сообщения BUFR. Шаблон содержит информацию, необходимую для описания структуры значений данных, встроенных в соответствующий битовый поток. Его следует толковать поэтапно, подобный алгоритму манера. Учитывая набор сообщений BUFR, значения, содержащиеся в разделе 4, могут отличаться от одного сообщения к другому, но их порядок и структура будут оставаться предсказуемыми, если шаблон, представленный в разделе 3, останется неизменным. Шаблоны могут быть разработаны для удовлетворения требований конкретного информационного продукта (например, погодных наблюдений). Такие шаблоны затем можно использовать для стандартизации содержания и структуры продуктов данных в коде BUFR. ВМО выпустила ряд шаблонов BUFR для данных приземных и аэрологических наблюдений.

Дескрипторы

Все дескрипторы шириной 16 бит имеют F-X-Y структура, где F относится к двум старшим битам (крайнему левому); Икс относится к 6 средним битам и Y до младших (крайних правых) 8 бит. В F значение (от 0 до 3) определяет тип дескриптора.

  • Дескрипторы элементов (F = 0): как следует из названия, эти дескрипторы используются для передачи элементарных данных и связанных метаданных.
    В Икс value идентифицирует класс дескриптора (т.е. параметры горизонтальной координаты, параметры температуры и т. д.). В Y value - это номер дескриптора в своем классе. Дескрипторы элементов классов с 1 по 9 обладают особым свойством оставаться в силе с момента, когда они появляются в остальной части шаблона BUFR, если не противоречат или не отменены. На практике дескрипторы классов с 1 по 9 используются для пространственных, временных и других метаданных, которые применимы к основным данным сообщения BUFR.
    Все дескрипторы элементов определены в разделе спецификации BUFR, известном как «Таблица B». Добавление новых дескрипторов элементов в таблицу B не требует изменений в спецификации программного обеспечения BUFR. Определение дескриптора элемента в таблице B включает его номер, определение краткого текста, параметры декодирования (разрядность, масштабный коэффициент и смещение) и тип (числовой, символьная строка, кодовая таблица и т. Д.).
  • Дескрипторы репликации (F = 1): специальные дескрипторы, которые позволяют контролируемое повторение выбранного количества дескрипторов. Это очень мощная операция, которая вводит петлевые структуры в шаблоны BUFR. В Икс value указывает количество следующих дескрипторов, которые будут включены в репликацию; то Y значение указывает, сколько раз должна выполняться репликация. Если Y= 0, то репликация называется «отложенной репликацией», и количество репликаций должно быть получено из значения дескриптора специального элемента.
  • Дескрипторы операторов (F = 2): эти дескрипторы передают специальные операции, которые могут изменять характер данных или позволять создавать и манипулировать дополнительными данными вместе с оригиналом. В Икс значение идентифицирует оператора и Y значение используется для управления его применением. Эти дескрипторы определены в разделе спецификации BUFR, известном как «Таблица C». Добавление новых дескрипторов операторов в Таблицу C делает требует внесения изменений в спецификацию программного обеспечения BUFR и, следовательно, ведет к новому номеру издания BUFR.
  • Дескрипторы последовательности (F = 3): один дескриптор последовательности - это псевдоним для последовательности других дескрипторов, включая дескрипторы репликации и записи таблиц B, C и D. Эти дескрипторы определены в разделе спецификации BUFR, известном как «Таблица D». Использование Икс и Y значение такое же, как и для дескрипторов элементов.

Подмножества

Структура данных, установленная в шаблоне раздела 3, может многократно использоваться в одном сообщении BUFR. В таком случае Раздел 4 будет содержать последовательность так называемых подмножества. Например, подмножества можно использовать для передачи наблюдений из нескольких мест в одном сообщении.

Рекомендации

внешняя ссылка

Онлайн-валидаторы BUFR

Программные библиотеки