Язык форматирования системы ИРБИС

Материал из Wikipedia
Перейти к: навигация, поиск

Язык форматирования ИРБИС (язык манипулирования данными) представляет собой средство, с помощью которого осуществляется разнообразное представление данных для многих операций и режимов системы, в частности, для показа и печати документов, для создания словарей, для импорта/экспорта данных, для формально-логического контроля и т.д.

Общие сведения

История появления

Язык форматирования системы ИРБИС базируется на языке форматирования системы CDS/ISIS (ЮНЕСКО).

Понятие формата

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

Формат как отдельная структура сохраняется в текстовом файле с расширением .pft.

Начало знакомства с языком форматирования ИРБИС

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

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

Обрабатывая формат, система работает с тремя объектами: запись (документ) базы данных, собственно формат и рабочая область, в которой размещаются выходные данные. Команды выполняются последовательно в порядке их представления в формате. Одни из команд порождают выходные данные (например, значения полей данных), другие - инициируют некоторые действия (например, переход на другую строку, создание нескольких пустых строк и т.д.). Создаваемые данные запоминаются в рабочей области в виде текстовых строк, которые затем передаются для последующей обработки, например, для печати.

Все команды форматирования могут вводиться прописными или строчными буквами или их комбинацией. В форматах могут присутствовать комментарии. Признаком начала комментария является комбинация символов /*. В качестве комментария принимается часть строки от признака начала комментария до конца строки.

Запись в базе данных, используемая в примерах

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

MFN: 34
600: ^AСухой П.О.^Bо нем
215: ^a383^cил.24л
920: PAZK
999: 0000000
907: ^A19941123^bdsm
964: 78.09.19
10:  ^a5-203-01472-8^dЦ.договор.
101: rus
102: RU
900: ^b05^c22
210: ^cВоенное изд-во^aМ.^d1993
700: ^aКузьмина^bЛ.М.
675: 623.746
675: 623.746(092) Сухой П.О.
908: К89
903: 623.746/К89-239165
910: ^A0^BЭ93-18430^C19930830^Dхр
910: ^A2^Dхр
200: ^aКонструктор Сухой. Люди и самолеты

Подключение программ к формату (форматные выходы)

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

С точки зрения языка форматирования формат-программы являются строковыми функциями с форматом в качестве аргумента. При этом сначала вычисляется аргумент, а затем он передается функции. Формат-программа возвращает строку символов, с которой система обращается так, как если бы она была полем форматируемого документа.

Обращение к формат-программе в формате производится следующим образом:

&имя(формат)

где:

  • & – идентификатор вызова формат-программы;
  • имя – имя формат-программы;
  • формат – аргумент.

Система предлагает для использования комплексную формат-программу UNIFOR, реализующую различные специфические функции.