Приложение 2. Формат обмена ISO 2709

The UNESCO micro CDS/ISIS Software

Файлы формата обмена могут быть созданы и преобразованы в формат CDS/ISIS с помощью программы ISISXCH.

Запись ISO состоит из трех логических сегментов:

  • заголовок - фиксированной длины для каждой записи;
  • справочник - состоит из переменного количества элементов фиксированной длины, каждый из которых задает длину и расположение каждого поля переменной длины в записи. Элемент заканчивается разделителем поля;
  • поля данных - непосредственно данные в виде буквенно-цифровой информации переменной длины. Каждое поле заканчивается разделителем подполя.

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

2.1. Сегмент заголовка

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

Управляющая информация для обрабатывающей программы

2.1.1. Длина записи (5 символов)

Представляет собой десятичное число, которое определяет будущую длину записи (включая заголовок, справочник и разделитель записи).

2.1.2. Статус записи (1 символ)

Всегда "0" для выходных файлов и игнорируется для входных файлов.

2.1.3. Коды реализации (4 символа)

Эти коды определяются для каждой конкретной реализации стандарта ISO2709. Программа ISISXCH устанавливает значение "0000" для выходных файлов.

2.1.4. Длина признака (1 символ)

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

2.1.5. Идентификатор длины подполя (1 символ)

Это поле определяет длину ограничителей подполей в пределах некоторого поля данных (обычно 2 символа).

2.1.6. Базовый адрес данных (5 символов)

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

2.1.7. Для пользовательских систем (3 символа)

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

2.1.8. Длина поля "длина входа" (1 символ)

Это десятичное число, которое указывает длину в символах той части справочника, которая задает длину поля.

2.1.9. Длина позиции "начального символа" (1 символ)

Это десятичное число, которое указывает длину в символах той части входа справочника, которая задает "позицию начального символа".

2.1.10. Для последующего использования (2 символа)

Содержит пробелы.

2.2. Сегмент справочника

Каждый вход справочника представляет собой поле фиксированной длины и состоит из трех элементов:

а) метка или код, которая идентифицирует поле;
б) длина поля переменной длины;
в) размещение поля, относительно начала полей переменной длины.

Длина входа справочника определяется в соответствующих полях сегмента заголовка записи.

2.2.1. Метка (3 символа)

Этот элемент определяет поле символически. Значение метки является десятичным числом. Специфическая интерпретация смысла метки определяется обрабатывающей программой.

2.2.2. Длина поля

Десятичное значение равное длине (в символах) поля переменной длины, описываемого данным входом справочника.

2.2.3. Размещение поля

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

2.3. Сегмент полей данных переменной длины

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

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

2.4. Создание формата файла ISO, обрабатываемых CDS/ISIS

ISO файлы, обрабатываемые CDS/ISIS являются стандартными текстовыми файлами в формате, описанном выше. Исходя из этого, они являются непрактичными для управления текстовыми файлами с соответствующей длиной строк, особенно когда обрабатываются редактором строк и/или преобразовываются в телекоммуникативный формат, т. к. CDS/ISIS будет разделять каждую запись в 80 символьный сегмент строк, каждый следующий за стандартным разделителем строки ^M^J. Все сегменты, кроме последнего, будут содержать точно 80 символов текста. Таким образом, ISO запись содержащая 835 символов, будет состоять из 11 строк, первые десять по 80 символов и последняя 35 символов.

Например: запись 1 из примера базы данных CDS согдержит следующие поля:

Запись 1 + Рис. 66