Система автоматизации библиотек CDS/ISIS

The UNESCO micro CDS/ISIS Software

CDS/ISIS (Computer Documentation System / Integrated System Information Services) — пакет прикладных программ для построения автоматизированных информационных систем библиотек, архивов и музеев. Разработан Джиампаоло дель БИДЖИО в 80-х гг. XX ст. Развивается и бесплатно распространяетя ЮНЕСКО. Имеет версии для работы под управлением операционных систем DOS, Windows и Unix. Функционирует в локальных и глобальных компьютерных сетях. Используется в 20 тыс. организаций 90 стран мира.

CDS/ISIS является обобщенной системой для ввода, хранения и поиска информации, управляемой с помощью меню, и разработанной специально для компьютерной обработки структурированных нечисловых баз данных.

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

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

Для опытных пользователей, имеющих отношение, к компьютерным профессионалам, CDS/ISIS предлагает интегрированное программное средство, позволяющее осуществлять разработку специальных приложений и/или функциональное расширение базовых возможностей системы. Средства программирования описаны в руководстве CDS/ISIS Паскаль, издаваемое отдельно.

Если вы в данный момент используете программы версии 1.0, вы должны внимательно просмотреть раздел этого; руководства "Обзор системы", и, частично раздел "Системные и технические требования", который описывает процедуры установки и обеспечивает помощь в преобразовании БД, построенных с помощью версии 1.0 для использования в версии 2.3. Главные новации, введенные в версию 2.3 суммированы ниже:

  • все программы (ISIS, ISISINV, ISISDEF, ISISPRT, ISISUTL, ISISXCH) сейчас интегрирированы в отдельную программу и доступны из главного меню. Элементы меню позволяют напрямую выбирать функции, которые наиболее часто необходимы. К тому же, каждый раз когда высвечивается меню, две нижние строки экрана содержат информацию о БД, которая представляет собой имя выбранной в данный момент БД, формат выдачи и рабочие листы а также наибольший присвоеный MFN (информация о статусе высвечивается как только БД выбрана);
  • теперь БД может содержать до 16 млн. записей, поэтому структура файла несовместима со структурой файла, используемой в версии 1 и требует преобразования;
  • после занесения или изменения каждой записи будет осуществляться связь данных посредством слияния всех буферов главного файла (это будет предотвращать повреждение файла в случае нарушения питания или программных сбоев);
  • различные категории файлов (системное меню,рабочие листы,файлы сообщений и файлы БД) могут теперь находиться в разных директориях и/или носителях; это средство дает вам возможность оптимизировать размещение файлов на вашей машине (и, для VAX версии позволяет устанавливать защиту файлов в зависимости от приложения); например защита системных файлов, пользовательских файлов и т.д.
  • новые и мощные возможности добавлены в язык форматирования, включая связывание записей и просмотр таблиц (максимальный размер формата выдачи также был увеличен от 2 тыс. до 4 тыс.символов);
  • идентификаторы опций меню и под/меню сейчас могут быть выбраны в соответствии с требованием каждого языка;
  • последовательности сортировки (для вывода на печать) сейчас могут быть выбраны в соответствии с отдельными соглашениями каждого языка.

Система автоматизации библиотек CDS/ISIS

The UNESCO micro CDS/ISIS Software

CDS/ISIS (Computer Documentation System / Integrated System Information Services) — пакет прикладных программ для построения автоматизированных информационных систем библиотек, архивов и музеев. Разработан Джиампаоло дель БИДЖИО в 80-х гг. XX ст. Развивается и бесплатно распространяетя ЮНЕСКО. Имеет версии для работы под управлением операционных систем DOS, Windows и Unix. Функционирует в локальных и глобальных компьютерных сетях. Используется в 20 тыс. организаций 90 стран мира.

Передмова

CDS/ISIS является обобщенной системой для ввода, хранения и поиска информации, управляемой с помощью меню, и разработанной специально для компьютерной обработки структурированных нечисловых баз данных.

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

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

Для опытных пользователей, имеющих отношение, к компьютерным профессионалам, CDS/ISIS предлагает интегрированное программное средство, позволяющее осуществлять разработку специальных приложений и/или функциональное расширение базовых возможностей системы. Средства программирования описаны в руководстве CDS/ISIS Паскаль, издаваемое отдельно.

Если вы в данный момент используете программы версии 1.0, вы должны внимательно просмотреть раздел этого; руководства "Обзор системы", и, частично раздел "Системные и технические требования", который описывает процедуры установки и обеспечивает помощь в преобразовании БД, построенных с помощью версии 1.0 для использования в версии 2.3. Главные новации, введенные в версию 2.3 суммированы ниже:

  • все программы (ISIS, ISISINV, ISISDEF, ISISPRT, ISISUTL, ISISXCH) сейчас интегрирированы в отдельную программу и доступны из главного меню. Элементы меню позволяют напрямую выбирать функции, которые наиболее часто необходимы. К тому же, каждый раз когда высвечивается меню, две нижние строки экрана содержат информацию о БД, которая представляет собой имя выбранной в данный момент БД, формат выдачи и рабочие листы а также наибольший присвоеный MFN (информация о статусе высвечивается как только БД выбрана);
  • теперь БД может содержать до 16 млн. записей, поэтому структура файла несовместима со структурой файла, используемой в версии 1 и требует преобразования;
  • после занесения или изменения каждой записи будет осуществляться связь данных посредством слияния всех буферов главного файла (это будет предотвращать повреждение файла в случае нарушения питания или программных сбоев);
  • различные категории файлов (системное меню,рабочие листы,файлы сообщений и файлы БД) могут теперь находиться в разных директориях и/или носителях; это средство дает вам возможность оптимизировать размещение файлов на вашей машине (и, для VAX версии позволяет устанавливать защиту файлов в зависимости от приложения); например защита системных файлов, пользовательских файлов и т.д.
  • новые и мощные возможности добавлены в язык форматирования, включая связывание записей и просмотр таблиц (максимальный размер формата выдачи также был увеличен от 2 тыс. до 4 тыс.символов);
  • идентификаторы опций меню и под/меню сейчас могут быть выбраны в соответствии с требованием каждого языка;
  • последовательности сортировки (для вывода на печать) сейчас могут быть выбраны в соответствии с отдельными соглашениями каждого языка.

1. Обзор системы

The UNESCO micro CDS/ISIS Software

1.1. База данных CDS/ISIS

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

В самом общем виде можно считать базу данных CDS/ISIS файлом родственных данных, который удовлетворяет общим информационным требованиям данного пользователя. Это может быть, например, простой адресный файл или более сложный файл, такой как каталог библиотеки или справочная система для научных проектов. Каждая информационная совокупность (обьект) хранится в базе данных и состоит из отдельных элементов данных, каждый из которых содержит подробные характерные особенности описанного обьекта. Например, библиографическая база данных состоящая из информации о книгах, отчетах, предметных журналах, и т.д. Каждый обьект, в этом случае, состоит из таких элементов данных, как автор, заглавие, дата публикации и т.д.

Элементы данных хранятся в полях, каждому из которых присвоена численная метка, характеризующая это содержимое. Вы можете считать метку как имя поля узнаваемую системой CDS/ISIS.

Множество полей, содержащее все элементы данных обьекта предметной области называют записью.

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

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

1.2. Системные функции

The UNESCO micro CDS/ISIS Software

Наиболее важные функции, предусмотренные в CDS/ISIS, позволяют вам:

  • определить базу данных, содержащую требуемые элементы данных;
  • вводить новые записи в установленную базу данных;
  • модифицировать, корректировать или удалять хранимые записи;
  • автоматически строить и поддерживать файлы быстрого доступа для каждой базы данных, обеспечивающие максимальную скорость поиска;
  • ввосстанавливать содержимое записей;
  • отображать записи или их порции в соответствии с вашим запросом;
  • сортировать записи в любой желаемой последовательности;
  • смещать память или полные каталоги и/или индексы;
  • развивать программно систему, используя Паскаль CDS/ISIS.

Эти средства реализованы посредством 8 больших программ, классифицированных в две широкие категории: четыре пользовательских программы и четыре системных программы. Пользовательские средства только требуют знаний основных возможностей CDS/ISIS, тогда как системные средства предполагают углубленное знание всех компонент системы и знакомства с программированием.

Четыре пользовательских программы обеспечивают следующие функции:

  1. ISISENT- ввод данных и редактирование записей;
  2. ISISRET- поиск информации;
  3. ISISPRT- печать результатов вывода, например,каталогов  и индексов;
  4. ISISINV- обслуживание инвертированного файла и функций утилит.

Четыре системы программы обеспечивают:

  1. ISISDEF-определение новой базы данных и/или модификацию существующих определений баз данных;
  2. ISISUTL-средства редактирования системных бланков, меню,системных сообщений;
  3. ISISХСН-возможности для обмена данными с другими системами и функции утилит главного файла;
  4. ISISРАS- средства программирования, позволяющие разрабатывать программные средства, развивающие возможности CDS/ISIS.

1.3. Структура базы данных

The UNESCO micro CDS/ISIS Software

Хотя база данных CDS/ISIS кажется пользователю целостным файлом информации, в действительности она состоит из множества логически связанных, но физически различных файлов. Управление физическими файлами есть функция CDS/ISIS и пользователю не требуется знать их детальную структуру.

Раздел 1

1.3.1. Определение файлов базы данных

Перед тем как создать БД, необходимо определить файлы базы данных. Эти файлы должны стать известными CDS/ISIS, а следовательно они должны быть описанными определенными характеристиками и удовлетворять структуре записи.

Описание БД CDS/ISIS состоит из следующих составляющих, каждая из которых содержится в отдельном файле:

Таблица Определения Полей (ТОП или FDT) определяет поля, которые могут присутствовать в записях базы данных и их характеристики (FDT более полно описано в разделе 3.1 "Таблица Определения Полей ").

Рабочие листы для ввода данных: один или более экранных форматов,используемых для создания и/или обновления записей главного файла БД.СDS/ISIS содержит специальный редактор для создания этих; рабочих листов (см. раздел 15 "Редактор рабочих листов").

Формат вывода: Формат вывода определяет требования по форматированию каждой строки экрана записи или форматы печати выходных результатов таких как каталог и индексы. CDS/ISIS обеспечивает мощный и всесторонний язык форматирования, который позволяет отображать содержимое записи в любом требуемом представлении.Это описано в разделе 3.2 "Язык форматирования" .

Таблица выбора полей (ТВП или FST): Единственная ТВП описывает поля базы данных, делает их поисковыми через инвертированный файл. Дополнительно ТВП описывает требования многоаспектной сортировки для БД. ТВП или FST описана в разделе 3.4 "Таблица выбора полей ".

1.3.2. Главный файл

Главный файл состоит их всех записей данной БД, каждая запись состоит из множества полей переменной длины. Каждая запись идентифицирована уникальным числом, автоматически присвоенным CDS/ISIS при ее создании, и названная Номер Главного файла или MFN.

Для того, чтобы обеспечить быстрый доступ к каждой записи главного файла, CDS/ISIS соединяет специальные файлы в Главный файл, названный Файлом перекрестных ссылок, который на самом деле присваивает индекс каждой записи и затем размещает ее в главном файле.

Вы можете создать, модифицировать или удалить записи Главного файла посредством меню ввода данных, используя программу ISISENT.

1.3.3. Инвертированный файл

Несмотря на то, что запись главного файла может быть непосредственно найдена своим MFN, необходим дополнительный путь поиска записей через файл перекрестных ссылок.При поиске библиографической записи, желательно чтобы она была доступной по авторам, предметным рубрикам, любым другим элементам данных, встречающимся в записи. CDS/ISIS позволяет обеспечивать фактически неограниченное число терминов доступа для каждой записи через специальный файл, названный ивертированным файлом.

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

Для примера, четыре главные записи (с MFN 18,204,766 и 1039) содержат ключ ADULT EDUCATION. Логическая структура записи инвертированного файла будет:

ADULT EDUCATION 18 204 766 1039

Здесь, ADULT EDUCATION является термином доступа (или термином словаря), а каждая ссылка на запись главного файла,называется индексной ссылкой.

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

CDS/ISIS создает инвертированный файл для каждой базы данных. Вы можете выбирать поля, подполя или элементы подполей для включения в инвертированный файл. Вы можете включать также указанные слова, фразы или дескрипторы из выделеных полей в этот файл.

Вы описываете поисковые элементы при установке базы данных посредством таблицы выбора полей , она содержит поля, которые будут инвертированы и индексированы.Техника индексирования будет применяться для каждого поля. В отличие от других систем поиска, основанных на инвертированных файлах, в которых есть отдельный инвертированный файл для каждого поля, CDS/ISIS использует инвертированный файл для любой установленной БД. Из-за частичной структуры этого файла, это функционально эквивалентно подходу с многими инвертированными файлами. В настоящее время каждая регистрация термина поиска содержит не только MFN, но и также добавочную информацию, точно идентифицирующую поле, из которого были выделены данные, а также относительную позицию слова внутри поля.

Реализованное усовершенствование позволило иметь термины доступа до 30 символов. Элементы, которые длинее чем максимум, преобразуются перед вводом в инвертированный файл.

1.3.4. ANY файл

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

Использование термина ANY обьясняется более детально в разделе 3.6 "Поисковый язык CDS/ISIS".

1.3.5. Взаимосвязь между файлами

Логическую взаимосвязь между основными файлами БД CDS/ISIS рассмотрим на примере поиска. Поиск в базе осуществляется с целью определения списка MFN, удовлетворяющего данному множеству поисковых терминов.

Если после этого вы запросите вывод на экран найденной записи, CDS/ISIS будет читать каждую запись из главного файла, MFN которой указан в hit списке, и будет форматировать ее в соответствии с указанным форматом и выводить на экран.

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

 

1.4. Архитектура системы

The UNESCO micro CDS/ISIS Software

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

1.4.1. Меню

Вы выбираете операции, которые будут выполнены с помощью опций из меню, которые система отображает на экране. Меню - это список функций из которого вы делаете выбор посредством набора единственной буквы. Как пример, опции меню по поиску информации, изображены на рис. 1.

Каждой опции в меню вы ставите в соответствие единственный символ, который называется идентификатором опции, (например S), за которым следует обьяснительный текст, названный описанием опции (например "Формулировка поиска"). Заметим, что различные системные меню могут в действительности быть отличными от показанных в этом руководстве, так каждый пользователь может менять набор меню так же хорошо, как связывать опции дескрипторов или опции идентификаторов. Однако, если используются стандартные пользовательские процедуры, имя данного меню будет тем же самым (исключая язык как показано ниже).

Когда меню отображено на экране, позиция курсора CDS/ISIS находится под следующим символом "?" Выбрав одну из опций, вы просто вводите соответствующий символ идентификатора опции. Так, для примера, выбрав опцию "Сохранение результатов поиска", вы вводите букву Р (которая может быть введена в любом (верхнем или нижнем) регистре).

1.4.2. Многоязыковый диалог

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

CDS/ISIS всегда выводит на экран первое меню на языке, выбранном по умолчанию администратором базы данных, когда система устанавливалась на вашей машине. Опция L в этом меню отображает меню xXLNG, которое содержит предоставленные языки.

Модель меню xXLNG показана на рис.2 (однако вы должны помнить, что меню xXLNG может выглядеть иначе чем здесь в документе).

Выбору входного языка соответствует буква (например F для Французкого). CDS/ISIS затем возвращается в меню, из которого опция L была выбрана. Начиная из этой точки, все меню, системные сообщения и подсказки будут выводиться на экран на том языке, который вы выбрали.

1.4.3. Рабочие листы

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

Программа ISISRET

Меню EXGEN
Поиск информации в базе данных.

L - Сменить язык диалога
В - Просмотреть файл документов
Т - Просмотреть поисковые термины словаря
S - Подготовить запрс на поиск информации
D - Вывести результаты поиска информации
F - Изменить формат вывода
R - Вывести формулировки запросов данного сеанса
G - Выполнить поиск по предыдущему запросу
Р - Сохранить рузультаты поиска на диске
Х - Выход
?_

Рис.1: Пример меню CDS/ISIS

Рис. 2

Меню xXM3

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

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

Существует два типа рабочих листов: системные рабочие листы и рабочие листы по вводу данных.

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

Рабочие листы по вводу данных используются для создания и модификации записи базы данных. Этот тип рабочего листа содержит все поля которые могут присутствовать в данной записи. Поэтому рабочие листы по вводу данных должны быть созданы для каждой БД. Для создания рабочих листов в CDS/ISIS имеются соответствующие редакторы.

1.5. Системные ограничения

The UNESCO micro CDS/ISIS Software

Системные ограничения

1.6. Соглашения, используемые в данном руководстве

The UNESCO micro CDS/ISIS Software

Именам меню предшествует строчный символ 'X', который указывает код языка. Например, xXGEN - имя меню CDS/ISIS, для которого могут существовать столько версий меню, сколько языков введено. Например для английской версии - EXGEN, для французской версии - FXGEN и т. д.

Специальные функциональные клавиши указаны своими именами и заключены в скобки (например CR). Использованные имена есть символические имена, указывающие на функции, которые эти клавиши выполняют.

Также заметьте, что некоторые специальные символы (такие как @ или !) могут не быть в распоряжении всей клавиатуры. В этом случае обратитесь к разделу 2.1.1.12 "Параметры описывающие функциональную клавиатура", где дается метод для определения находящегося символа. Приложение также дает соответствие между символическими именами функциональной клавиатуры и фактическими клавишами на вашей клавиатуре.

2. Системные и технические требования

The UNESCO micro CDS/ISIS Software

Минимальные технические требования для запуска; CDS/ISIS следующие:

IBM-PC/XT/AT или совместимое оборудование;
512К оперативная память (640К рекомендуется);
1 гибкий диск;
1 жесткий диск (винчестер);
1 (монохромный или цветной) экран;
1 принтер.

Заметим, что 512К это минимальное требование для памяти и достаточное для нормального использования CDS/ISIS. Однако,например, компонующая запись и печать выходного формата может потребовать более чем 512К.

Для нормального использования и работы CDS/ISIS подходят следующие машины:

IBM PS/2(под управлением MSDOS);
Olivetti;
Compag 286 n 386;
Bull Micral 30;
Goupil 3,4,5;
Amstrad PC 1512;
Philips PC;
Commodore PC10, PC20;
Hewlett Packard HP-Vectr2.

Версия WANG-PC под управлением операционной системы MS-DOS также годится для работы.

Версия мини-ЭВМ годится для машин серии VAX (включая микро VAX) созданной Digital Equipment Corporation, под управлением операционной системы VAХ/VMS.

2.1. Параметры системных файлов

The UNESCO micro CDS/ISIS Software

2.1.1. SYSPAR.PAR: Глобальные параметры

Системный файл SYSPAR.PAR содержит систему установки параметров. Когда CDS/ISIS стартует, первым просматривается файл SYSPAR.PAR в текущем директории. Если этого файла нет, все системные параметры принимают значения по умолчанию. Файл SYSPAR.PAR это стандартный текстовый файл, который можно подготовить посредством выбраного редактора (например EDLIN). Каждый параметр начинается с новой строки и имеет следующий формат:

n=value

где n - номер параметра (как обьяснено ниже);
value - соответствующее значение.

Значение должно следовать сразу за знаком равенства, если за знаком равенства будет следовать несколько пробелов, то они будут восприниматься как часть значения. Когда значение содержит имя директория, это будет конкатенироваться с именем файла CDS/ISIS при создании спецификации настоящего файла. Поэтому, для файлов MS-DOS, имя директория должно заканчиваться обратным слэшэм (\) или иначе будет порождено ошибочное имя файла. Например:

(IBM PC) 2=\ISIS\menu\              (vax) 2=[ISIS.menu]

Отсутствующим параметрам, или параметрам с пустым значением будет присвоено стандартное значение по умолчанию. Поэтому в SYSPAR.PAR необходимо содержать только те параметры, которые вы хотите менять.

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

2.1.1.1. Параметр 0: переназначение SYSPAR.PAR

Этот параметр может использоваться для переназначения самого файла SYSPAR.PAR на другой драйвер или директорий. Значение может содержать:

1. полное имя файла, которое может содержать драйвер и/или информацию о директории. Например:

Полное имя файла, которое может содержать драйвер и/или информацию о директории

В этом случае фактические параметры будут использованы для чтения файла mypar в директории \isis драйвера с:;

2. вопросительный знак (?) или восклицательный знак (!), которые служат приглашением. Для примера:

0=?  Пожалуйста, введите имя параметра системного файла...

В этом случае CDS/ISIS отображает приглашение и затем имени параметров файла каждый раз, вызывая программу из данного директория. Если вы используете восклицательный знак вместо вопросительного,то набраный текст, в ответ на приглашение, не будет выведен на экран. Это дает возможность переназначить SYSPAR.PAR каждый раз, когда это требуется.

Например, файл MYPAR в примере ранее, может содержать сам параметр 0, указывающий на другой файл. Заметим, что если SYSPAR.PAR переназначен, то новый файл будет определять каждый параметр уже определенный в зараннее описанном процессе, и он будет за менен новым значением. Более того, некоторые параметры, которые следуют за параметром 0 в текущем файле, будут игнорироваться.

Можно обеспечить определенный уровень системы защиты данных, используя параметр 0, через установление значений SYSPAR.PAR обычно содержащий примененные параметры и один файл для каждого пользователя или группы пользователей, который может быть пустым или возможно содержать выбранные параметры, характерные для каждого пользователя. Предположим, для примера, что созданы следующие файлы:

Образец определенного уровеня системы защиты данных

В этом случае CDS/ISIS каждый раз начинает с того, что первым читаем SYSPAR.PAR и устанавливает систему, пути сообщения и меню, и выбирает Испанский, как язык по умолчанию. Затем пользователю будет подсказано ввести пароль (параметр 0.) Если ответ на этот пароль есть John, CDS/ISIS читает файл с именем Jon, и сохраняет наборы параметров: поэтому этот пользователь, будет работать в английском языке и использовать BIBLIO, как базу данных по умолчанию.

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

2.1.1.2. Параметр 1: Программный путь.

Этот параметр определяет дисковод и/или директорий, в котором размещаются прикладные программы на Паскале для CDS/ISIS (файлы PAS и РСD). По умолчанию, это должно быть в текущем директории. Заметим, что файлы листингов программ (LST) хранятся в пути рабочих файлов, определенных в параметре 4.

2.1.1.3. Параметр 2: Путь меню.

Этот параметр определяет дисковод и/или директорий, в котором запоминаются меню CDS/ISIS и рабочие листы. По умолчанию предполагается, что меню и рабочие листы будут в текущем директории. Всем файлам с расширением FМТ и Х или Y в 3-ей позиции имени (т. е. для меню и системных рабочих листов) будет присвоен этот путь (см. Приложение 5 "Файлы CDS/ISIS").

Файлы ISISUC.ТАВ и ISISAC.ТАВ должны также быть в этом директории.

2.1.1.4. Параметр 3: Путь сообщения.

Этот параметр определяет дисковод и/или директорий,в котором запоминаются файлы системных сообщений CDS/ISIS. По умолчанию,подразумевается, что они будут в текущем директории. Всем файлам,содержащимся в базе данных сообщений (хМSG.*) будет присвоен этот путь.

2.1.1.5. Параметр 4: Путь рабочего файла.

Этот параметр определяет дисковод и/или директорий, в котором CDS/ISIS требует создать любой рабочий файл (например рабочие файлы сортировки). По умолчанию, рабочие файлы создаются в текущем директории. Всем файлам, не определенным другими параметрами будет установлен этот путь, например файлам печати.

2.1.1.6. Параметр 5: Путь базы данных

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

Следующим файлам базы данных ( исключая базу данных сообщений) будет присвоен этот путь:
ANY, CNT, IFP, L01, L02, N01, N02, MST, XRF, FDT, FST, FMT (рабочие листы по вводу данных), PFT, STW и SRT. Всем другим файлам базы данных, таким как HIT, LN?, LK? и т. д. присвоится путь рабочих файлов, описанный в параметре 4. Заметим, что файлы базы данных могут распределяться на один или более директорий и/или дисководов, описанных в файле dbn.PAR (см. раздел 2.1.2 "dbn.PAR: Параметры базы данных"). Необходимо чтобы выполнялось следующее условие: либо указывался параметр 5, либо для каждой базы создавать свой файл dbn.PAR.

2.1.1.7. Параметр 6: Имя базы данных по умолчанию.

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

2.1.1.8. Параметр 7: Язык по умолчанию.

Этот параметр есть однобуквенный код, описывающий выбранный диалоговый язык. Начальный язык по умолчанию есть Е (Английский) (см. раздел 17.1 "Создание новой языковой версии") для получения информации о создании локальных языковых версий.

2.1.1.9. Параметр 8: Разделитель повторяющихся полей.

Этот параметр определяет символ, который используется CDS/ISIS как разделитель, в случае повторения полей при вводе данных (см. раздел 3.1.1.3 "Повторяющиеся поля"). По умолчанию CDS/ISIS использует знак процента (%), который эффективно зарезервирован для этих целей. Если необходимо ввести знак процента как данное, то можно определить его другим символом вместо него. Заметим что, поскольку этот символ становится в CDS/ISIS контрольным символом, вы должны выбрать его таким, чтобы быть уверенным, что он никогда не встретится в ваших данных.

Например:

8=&

определяет символ & как разделитель повторяющихся полей.

Можно также присвоить полуграфический символ (например длинная вертикальная полоса). Затем можно присвоить функцию клавише, породившей этот символ с одновременным нажатием клавиши.

2.1.1.10. Параметр 9: Инициирование автоматического выбора.

Этот параметр определяет строку символов, которая автоматически печатается каждый раз, когда CDS/ISIS стартует. Строка закодирована тем же путем, что и функциональная клавиша, описывающая строку (см. раздел 2.1.1.12 "Параметры описывающие функциональную клавиатуру"). Например, следующее определение заставит CDS/ISIS выбрать базу данных CDS и сразу попасть в меню поиска.

9=scds^m

2.1.1.11. Параметр 10. Инициирование режима редактора.

Этот параметр определяет инициальный режим редактора поля CDS/ISIS (см. раздел 13 "Редактор поля"). По умолчанию, редактор поля стартует в режиме замены. Можно заставить редактор стартовать в режиме вставки следующим образом:

10=I

2.1.1.12. Параметры, описывающие функциональную клавиатуру

Можно определить клавише функцию - автоматически выполнять типичную, часто повторяемую серию нажатия клавиши. Например, можно определить функциональной клавише выполнять такую работу, как запуск печати или экспорт операций.

Параметры функциональных клавиш описываются следующим образом:

kn=string

где n - есть код сканирования вами определенной функциональной клавиши,
а string - есть строка, которая автоматически будет печататься при нажатии этой клавиши. String может содержать обычный текст в кодах ASCII и/или управляющие символы или другие функциональные клавиши.

 

На рис. 3 даны коды сканирования, которые могут быть определены. Заметим, что большинство клавиш имеет иной код сканирования, если их нажимать одновременно с клавишами Shift, Ctrl или Аlt. Например, для определения F1 используют К59=, а для определения shift-F1 используют К84=.

Рис.3

Рис. 3.

Не разумно переопределять значения раннее определенных клавиш редактирования, поскольку это будет непрерывно менять их значения.

Клавиши, которые не следует переопределять есть: F1, F2, F3, F4, F5, F6, F8, (и F10 для арабской версии), НОМЕ и PgDn в их нормальном состоянии (однако Аlt-F1, например, может быть благополучно определена).

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

^M    CR
^I    TAB
^H    BSP
^W    CTRL W

? - заставляет CDS/ISIS возвращаться в главное меню (хХISI) из любого другого меню. ? будет генерировать столько Хs(exlt), сколько требуется, чтобы возвратиться в главное меню. Заметим, что это будет требуемый результат только тогда, когда меню находится на экране; где

! n - код сканирования данный на рис. 3, ссылка на функциональную клавишу. Заметим, что в случае если определение клавиши может быть двусмысленным, вы должны использовать 3-х значные коды сканирования, чтобы обеспечить однозначность. Например, последовательность !7111/120 - двусмысленна, поскольку это может быть интерпретировано как !71 11/120 или как !711 1/120. В этом случае это может быть описано как !07111/120, что обеспечит однозначность, поскольку коды сканирования ограничены 3 цифрами.

Например, определение клавиши:

К67=?Ccds^MPP^М1/10!64^M^M^M^M^M@cds^M^M^M^M^MN^M^
M^M^M^Mmylist!81^M^M?

будет вызывать следующее действие: возврат в главное меню (?), выбор опции С и базы данных CDS, затем опции Р для выбора меню печати, выбора Р из этого меню, заполнения рабочего листа печати с границами MFN 1К 10 (1/10), формат печати @cds, номер страницы N, и имя файла печати mylist. Таким образом, каждый раз, когда вы нажимаете клавишу F9, CDS/ISIS будет создавать файл называемый mylist, содержащий первые 10 записей из БД CDS, а потом возвращаться в главное меню. Заметим, что использование F6 (!64) очистит содержимое полей границ MFN, которые установлены по умолчанию как 1/32000 в рабочем листе печати.

Если параметр 8 определяет полуграфический символ, который обычно генерируется многими нажатиями клавиш, то вы можете зарезервировать функциональную клавишу, чтобы генерировать ее одним нажатием. Предположим, например, что параметр 8 определяет вертикальную черту (ASCII 179 на IВМ/РС или совместимых компьютерах). Поскольку этот символ обычно отсутствует на клавиатуре, он должен генерироваться нажатием ALT, а потом набором 179 на цифровой клавиатуре, что требует 4-х нажатий клавиш. Это может значительно замедлить ввод данных и может быть сочтено нерациональным. Путем определения функциональных клавиш можно сделать этот прием более рациональным. Для этого клавишу,которая не используется CDS/ISIS для иных целей, например можно использовать как, например клавишу :

8=
К73=

Вы должны в этом случае пояснить операторам ввода данных, чтобы они нажимали PgUp для отделения встречающихся повторяемых полей.

2.1.2. dbn.PAR: Параметры базы данных

Когда выбирается БД, CDS/ISIS будет сначала пытаться найти файл, называемый dbn.PAR, где dbn имя БД ( путь БД определен в параметре 5:SYSPAR.PAR). Если этот файл не существует, то все файлы БД, подразумевается, будет путь базы данных.

dbn.PAR позволяет определять индивидуальный путь для файлов базы данных. Можно, поэтому, разместить длинную базу данных на двух или более дисководах, если это необходимо. dbn.PAR может содержать до 10 параметров (которые имеют тот же формат, что и в SYSPAR.PAR):

10 параметров dbn.PAR

Не все параметры необходимо описывать. Файлы для которых вы неопределили путь, будут, находить в базе данных путь, описанный в параметре 5 SYSPAR.PAR. Для примера, следующий файл параметров CDS/ISIS, такой как Главный файл, находится на носителе d: файл IFP на носителе е: на указанных директориях (другие файлы БД будут в базе данных, путь которой, точно определен в SYSPAR.PAR):

2=d:\biblio\
3=e:\biblio\

2.2. Установка CDS/ISIS на компьютере

The UNESCO micro CDS/ISIS Software

2.2.1. Установка CDS/ISIS на IBM/PC или на совместимых компьютерах и на WANG PC

CDS/ISIS размещен на 3-х дискетах помеченных ISIS01, ISIS02 и SAMPLES.

Дискета ISIS01 содержит командный файл названный INSTALL.ВАТ (см. Приложение 8 "Распечатка файла INSTALL.ВАТ"), который поможет установить CDS/ISIS на вашем жестком диске (винчестере). Перед использованием INSTALL.ВАТ, вы должны установить число директорий как показано ниже.

2.2.1.1. Установка директорий

Хотя можно загружать все файлы CDS/ISIS в один директорий, рекомендуем, для лучшей работы и удобства использования, установить CDS/ISIS в его собственный главный директорий с пятью поддиректориями, каждый из которых содержит специальную категорию следующих файлов:

Системный директорий: содержит исполнительный ISIS файл (EXE) и родственные ему файлы (OVL).

Заметим,что OVL файлы могут и не входить во все реализованные версии CDS/ISIS. Проверяйте содержимое вашей системной дискеты или ленты.

Директорий меню: содержит меню, системные рабочие листы и системные таблицы.

Директорий сообщений: содержит системные сообщения базы данных.

Директорий базы данных: содержит файлы базы данных, (этот поддиректорий может сам содержать другие поддиректории как, например, описанные в разделе 2.1.2 "dbn.PAR: Параметры базы данных").

Программный директорий: содержит прикладные программы, CDS/ ISIS, написанные на Паскале.

Можно присвоить любое имя директорию по вашему выбору. Однако, процедура, описанная здесь, подразумевает имена данные ниже.

Если вы присвоите другие имена, то сделайте дальнейшие изменения в описанных командах. Сделайте директории CDS/ISIS, такими, как приведено ниже, выполнив команды MS DOS:

MD\ISIS- создать главный директорий CDS/ISIS;
CD\ISIS- сделать его директорием по умолчанию;
MD\SYS- создать поддиректорий для программ;
MD\MENU- создать поддерикторий для меню и системных таблиц;
MD\MSG- создать поддиректорий для файлов сообщений;
MD\DATA- создать поддиректорий для пользовательских файлов базы данных;
MD\PROG- создать поддерикторий для пользовательских программ;

2.2.1.2. Загрузка INSTALL.BAT на жесткий диск (винчестер)

INSTALL.BAT должен быть скопирован на винчестер перед тем как запустить его. Установите дискету с ISIS01 на носителе а:, и установите главный директорий CDS/ISIS созданный выше, затем скопируйте этот файл:

CD\ISIS
COPY A:INSTALL.BAT

2.2.1.3. Запуск INSTALL

Процедура INSTALL имеет четыре параметра, которые необходимо назначить в следующем порядке:

  1. путь системного директория;
  2. путь директория меню;
  3. путь директория сообщений;
  4. путь директория базы данных;
  5. путь программного директория.

Запуск INSTALL:

NSTALL\ISIS\SYS \ISIS\MENU \ISIS\MSG \ISIS\DATA \ISIS\PROG

Если эта процедура выполнится, то не потребуется монтировать каждую дискету.

2.2.1.4. Установка пути ISIS программы.

Вы должны установить теперь путь доступа к этому поддиректорию таким образом, чтобы DOS был способен искать CDS/ISIS программу. Чтобы сделать это, вы должны отредактировать AUTOEXES.BAT (или создать его, если его нет) в корневом директории и изменить, или добавить соответствующую команду PATH. Вы можете использовать любой знакомый вам редактор текста доступный на вашем компьютере, например такой как EDLIN. Например:

PATH=C:\ISIS\SYS

Заметим, что если уже существует команда РАТН в вашем AUTOEXEC. ВАТ файле, вы должны добавить путь CDS/ISIS к уже существующим путям. Например:

PATN=C:\;C:\DOS;C:\X\Y;C:\ISIS\SYS

2.2.1.5. Создание SYSPAR.PAR

Для выполнения CDS/ISIS,главный директорий CDS/ISIS должен содержать файл SYSPAR.PAR, который описывает размещение системных и пользовательских файлов. Этот файл детально описан в разделе 2.1.1. "SYSPAR.PAR:Глобальные параметры".

Вы можете создать его с помощью любого текстового редактора, доступного на вашем компьютере, например EDLIN. Вместе с именем директория, созданным вами ранее, необходимо создать следующий SYSPAR.PAR:

1=\ISIS\PROG\
2=\ISIS\MENU\
3=\ISIS\MSG\
4=\ISIS\
5=\ISIS\DATA\

2.2.1.6. Требования к начальной конфигурации

Вы должны иметь в виду, что обычное форматирование экрана CDS/ISIS не будет выполняться правильно, если установлен драйвер ANSI.SYS, хотя все другие функции системы будут выполняться правильно.

Поэтому вы должны убедиться, что ваш MS DOS установлен для поддержки нескольких файлов, требуемых CDS/ISIS. Все эти требования содержаться в DOS файле, называемом CONFIG.SYS, который выполняется каждый раз, когда загружается компьютер. Переключитесь в корневой директорий и напечатайте этот файл на экран следующим образом:

CD\
TYPE CONFIG.SYS

Если этот файл не существует, вы должны его создать, включив в него следующие команды:

BUFFERS=24
FILES=24

Для этого используйте EDLIN или какой-нибудь другой редактор.

Заметим, что в зависимости от конфигурации и установки на вашем компьютере, вы можете иметь, в некоторых случаях, возрастание числа файлов.
Если файл CONFIG.SYS уже содержит проверку, и число файлов и буферов есть по крайней мере 20, то прибавьте в существующий файл команды, описанные выше или увеличьте значение BUFFERS и FILES. Если файл не видоизменен, то прибавьте команды описанные выше или увеличьте значения.
Затем проверьте, содержит ли файл следующую комманду:

DEVICE=ANSI.SYS

Если содержит, то вы должны удалить ее для правильного режима работы CDS/ISIS. Однако, если некоторая другая программа, установленная на вашем компьютере, требует драйвер ANSI.SYS, вы должны сохранить копию оригинала CONFIG.SYS, перед тем, как удалить эту команду.

Мы предлагаем в этом случае, чтобы вы хранили две копии CONFIG.SYS, например, одну назвать CONFIG1.SYS, а другую CONFIG2.SYS. Перед использованием CDS/ISIS вы проверяете CONFIG. SYS, был ли он выбран во время запуска, путем вывода файла CONFIG на экран. Если это не так, то повторите все и затем перезапустите систему.

2.2.2. Установка CDS/ISIS на микро VAX или компьютерах типа VAX.

VAX версия CDS/ISIS размещается на 2-х RX50 дискетах помеченных ISIS01, и ISIS02.

Дискета ISIS01 содержит коммандный, файл названный INSTALL.COM (это описано в Приложении 9 "Распечатка файла INSTALL.COM"), который поможет вам установить CDS/ISIS на вашем жестком диске (винчестере). Перед использованием INSTALL.COM вы должны первым делом создать рабочий директорий, который будет содержать файлы на протяжении всего процесса установки (этот директорий может быть позже удален):

create/dir[ISISTEMP]

2.2.2.1. Загрузка установленного файла на диск

Выберите временный директорий как текущий директорий:

set det [ISISTEMP]

Выделите носитель DAU1:

allocate DUA1:

Вставьте дискету ISIS01 на носитель DUA1 и скопируйте ее содержимое следующим образом:

mount DUA1:ISIS01
cory DUA1:[ISIS]*.* *.*
dismount DUA1:

Снимите дискету ISIS01 с носителя DUA1 и повторите то же, но с дискетой ISIS02, затем скопируйте ее содержимое следующим образом:

mount DUA1: ISIS02
cory LUA1:[ISIS]*.* *.*
dismount DUA1:

2.2.2.2. Установка директориев.

Хотя вы можете загрузить все файлы CDS/ISIS в том же директории, мы рекомендуем для лучшей работы и удобств использования устанавливать CDS/ISIS в его собственный главный директорий с пятью поддеректориями, причем каждый должен содержать следующие файлы:

Системный директорий: содержит исполнительный ISIS файл (EXE);

Директорий меню: содержит меню, системные рабочие листы и системные таблицы;

Директорий сообщений: содержит системные сообщения базы данных;

Директорий базы данных: содержит файлы базы данных (этот поддерикторий может также содержать другие поддиректории, как, например, (см. раздел 2.1.2 "dbn.PAR: Параметры базы данных").

Программный директорий: содержит прикладные программы написаные на Паскале.

Можно присвоить любое имя директорию по вашему выбору.
Однако, INSTALL.COM подразумевает, описанные ниже имена.
Если вы присвоите различные имена, то сделайте дальнейшее перемещение в описанных командах. Сделайте дирректории CDS/ISIS следующего типа, на приглашение VMS:

create/dir [ISIS]- создать главный директорий CDS/ISIS;
create/dir [ISIS.MENU]- создать поддиректорий для меню и системных таблиц;
create/dir [ISIS.MSG]- создать поддиректорий для файлов сообщений;
create/dir [ISIS.DATA]- создать поддиректорий для базы данных пользователя;
create/dir [ISIS.PROG]- создать поддиректорий для программ на Паскале CDS/ISIS;
SET def [ISIS]- множество директорий по умолчанию

По умолчанию INSTALL.COM хранит исполнительный файл в SYS$system. Если вы хотите хранить его в другом директории, тогда вы должны создать его. Например:

create/dir [ISIS.SYS]

2.2.2.3. Запуск INSTALL.

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

set def [ISISTEMP]
@INSTALL

Как только эта процедура выполнится, она пригласит вас вводить различные имена директорий. Если вы здесь ответите RETURN, то будет использоваться имя по умолчанию.

2.2.2.4. Определение в CDS/ISIS вызова команд

После выполнения INSTALL.COM вы должны определить команду DCL, которая будет использована для активизации CDS/ISIS. Например:

ISIS:==$SYS$SYSTEM:ISIS.EXE

2.2.2.5. Определение защиты файла

Установив CDS/ISIS на вашем компьютере вы или ваш системный программист должны менять требования защиты для исполнительного файла и других системных файлов.
Владелец файлов, поддерживаемый UNESCO, есть SYSTEM (система) защиты файлов (RWED, RWED, RE,).

Для безопасности, системные файлы защищены и только системный администратор CDS/ISIS имеет доступ в их записи. Рекомендуем защищать следующие файлы:

системные файлы: (ЕХЕ файл, меню, системные рабочие листы, системные таблицы и сообщения) назначить (RWED, RWED, RE, RE);
пользовательские файлы: (база данных и рабочие файлы) назначить (RWED, RWED, RWED, RWED).

Конечно возможны варианты другой защиты, в зависимости от окружения и стандартов на вашем компьютере.

2.2.2.6. Особенности для VAX.

(1) Поддержка терминала

Единственный тип терминала, поддерживаемый сейчас, есть VT100 или совместимый с ним (например VТ200, который работает как совместимый с VТ100). Вся функциональная клавиатура CDS/ISIS поддерживает используемые назначения, показанные на рис. 4 (см. также Приложение 1 "Эквивалентные клавиатуры").

Клавиши переключения меню (см. раздел 4.2 "Клавиши переключения меню") и описаны следующим образом:

F2 малая клавиатура PF2. Включает главное меню (хХISI)
F3 малая клавиатура PF3. Включает меню поиска (хХGEN)
F4 малая клавиатура PF4. Включает меню ввода данных (хХЕ1)
F5 Малая клавиатура. Включает меню печати (хХPRT).

Кроме того, как только меню выведено на экран,вы можете ввести коммандный режим VAX/VMS (без разрешения CDS/ISIS), нажимая малую клавишу, (F6). Когда вы нажмете F6, экран очистится и CDS/ISIS отправит вам VMS приглашение $. В этом режиме вы можете вводить любую DCL команду, при условии, что вы имеете собственные привилегии для запрашивания команд. Для того, чтобы обратно включить CDS/ISIS, нажмите клавишу RETURN (возврат).

(2) Печать имени файла на бланке печати.

Вы можете указать SPOOL, чтобы направить вывод на стандартный поток печати SYS$print.

(3) Печать файлов посредством администратора буферов.

Когда вы печатаете файлы, созданные CDS/ISIS с помощью администратора буфера VMS, то вы должны убедиться, что размер страницы, определенный для выводного потока, в который вы направили вывод, соответствует размеру страницы, созданной CDS/ISIS.

Если размер страницы потока меньше чем размер страницы CDS/ISIS,VMS может вставлять дополнительно символ перевода страницы (если вы указали FEED для очереди вашего принтера по умолчанию, определяемому при установке).

Чтобы избежать этой проблемы, вы должны выводить свои файлы следующим образом:

PRINT имя файла/NOFEED

Заметим, что эта проблема может привести при печати файлов буферизованных в SYS$print путем указания SPOOL как имени файла печати (смотри ранее). Если вы обнаружили ошибочный символ перевода страницы в вашем выводе с буферизацией, то избегайте использования SPOOL, как имени файла печати.

(4) Поддержка многопользовательского окружения.

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

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

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

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

Рис.4

Рис.4.

Более того, вам должно быть гарантировано, что каждый пользователь имеет отдельный путь рабочего файла (параметр 4: SYSPAR. PAR), во избежение столкновения рабочих файлов. Например, если два пользователя, разделили некоторый рабочий путь, создали и сохранили файл с некоторым именем, например myfile. То в этом случае CDS/ISIS создаст две версии этого файла:

myfile.sav;1 и myfile.sav;2.

Любая ссылка на файл myfile.sav (без указания полностью версии файла) будет направлять на файл myfile.sav;2, который был создан позднее. Так один из двух пользователей может печатать файл сохранения, созданный другим пользователем.

2.3. Преобразование базы данных, построенной на версии 1.0

The UNESCO micro CDS/ISIS Software

Если вы уже работали с версией 1.0 CDS/ISIS, вы можете свою базу данных, построенную на этой версии, перенести на версию 2.3. Однако, из-за очень большой базы данных, способной поддерживаться версией 2.3, физический формат записи некоторых файлов базы данных отличается от версии 1.0. Поэтому база данных должна быть конвертирована в новый формат.

Ниже даны рекомендации как это сделать. (Предполагается, что вы уже имеете установленную версию 2.3 и соответствующий установленный файл SYSPAR.PAR как обьяснялось выше).

1. Экспортируйте вашу БД, используя версию 1.0 программой ISISХСН (опцией Е). Заметим, что если вы хотите сохранить ваши текущие MFN, вы должны экспортировать базу данных, используя исправления в FST (это только путь, вы можете экспортировать MFN записи как показано в разделе 12.2.4.3 "Перенумерация записей". Для того, чтобы упростить обращение, используйте тот же самый признак для ввода и вывода и присвойте неиспользованный признак (например 999) вашему MFN. Например:

    1 0 (V1/)
    2 0 (V2/)
    3 0 (V3/)
999 0 mfn

2. Скопируйте в директорий базы данных (определенные в параметре 5 файла SYSPAR.PAR или параметра 10 файла dbn.PAR) и проинвертируйте следующие файлы базы данных: FDT, FST, PFT, FMT, ANY, и STW (формат этих файлов совместим с версией 1.0).

3. Используя версию 2.3 CDS/ISIS, выберите опцию D из главного меню (программы ISISDEF). Убедитесь, что не выбрано ни одной базы данных когда вы это делали. Выберите опцию I из меню хХDEF и введите, на приглашение имя базы данных. Это желание создать и инициализировать Главный и инвертированный файлы (XRF, MST, CNT, N01, N02, L01, L02 и IFP).

4. Возвратитесь в главное меню и выберите опцию М (программы ISISXCH), затем опцию I из меню хХСН, получите значение базы данных, экспортируемой на шаге 1. В рабочем листе импорта укажите спецификацию L и введите признак ис пользованный для экспорта MFN в шаге 1, в поле "Входное поле содержащее MFN" (см. раздел 12.3.3.2 "Входное поле содержащее MFN").

5. Переинвертировать базу данных вместе с версии 2.3 (выбрав опцию I из главного меню, затем опцию F из меню хХG1). Прежде чем это сделать, убедитесь, что вы имеете достаточно пространства на диске.

Заметим, что версия 2.3 создает два несортированных файла связей (LN1 и LN2) и два сортированных файла связей (LК1 и LК2). Необходимое пространство для этих файлов это, в среднем, около половины необходимого пространства файла связей в версии 1.0 (пропорционально зависимого от коротких и длинных терминов). Время, необходимое для сортировки файла связей будет от 20 до 100 раз меньше чем в версии 1.0.

3. Техническое описание

The UNESCO micro CDS/ISIS Software

3.1. Таблица определения полей (ТОП)

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

ТОП используется для управления созданием рабочих листов по вводу данных для базы данных и для контроля содержания полей; создается модифицируется посредством программы ISISDEF, используя строковый редактор CDS/ISIS (описанный в разделе 14 "Строковый редактор"). Пример ТОП в строковом редакторе показан на рис. 5.

Рис. 5

3.1.1. Структура базы данных

Возможности CDS/ISIS позволяют описать базу данных в соответствии со спецификой ваших требований. CDS/ISIS не фиксирует семантики обрабатываемой информации. Он просто выполняет набор функций, обычно требуемых в любой системе хранения и поиска информации, которые обеспечивают создание эффективных информационных систем. В связи с этим, невозможно предложить ряд исчерпывающих правил для создания базы данных, а возможно предложить только общие рекомендации. Ниже изложены основные требования к структуре базы данных. Для того,чтобы в совершенстве изучить CDS/ISIS, вы должны ознакомиться со всеми его возможностями, в частности, с элементами базы данных, описанными в этой главе, поскольку слабое знание базы данных может позже помешать использованию некоторых возможностей CDS/ISIS. Например, полное понимание таких совершенных возможностей как REF функция языка форматирования (см. главу 3.3.2.2 "REF(выражение, формат)", или программных возможностей ISISPAS, необходимых при создании интегрированных баз данных.

3.1.1.1. Элементы данных

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

Чтобы определить это, вы будете задавать себе; типичные вопросы, такие; как: "Будет ли обьект нуждаться в сортировке ?", "Должен ли он быть поисковым ?", "Нужно ли его печататьиначе, чем остальные, например жирным шрифтом или большими буквами и т. д.".

Если ответ на любой из этих вопросов будет "Да", тогда обьект будет выбран как элемент данных.

3.1.1.2. Поля и подполя

Элементы данных содержатся в полях или подполях. Поле идентифицируется числовым признаком и описывается в ТОП базы данных. Вы можете считать признак именем поля или его номером, поскольку он известен CDS/ISIS. Каждый раз, когда вы хотите обрабатывать отдельные элементы данных CDS/ISIS, вы должны указать номер поля, где этот элемент описан. Например, в данной раннее ТОП, Title присвоен номер 24. Если вы хотите отобразить содержимое поля Title вы должны в CDS/ISIS указать V24 (на языке форматирования команд поля).

CDS/ISIS, обычно, трактует содержимое поля, как непрерывную строку символов и как один обьект. Вы можете, однако, подразделить поле на подполя. В этом случае поле будет содержать более чем один элемент данных, каждый из них будет описан в различном подполе. Непохожие поля, подполя не отождествляются признаком, но ограничены подполем.

Ограничителем подполя есть 2 символьный код, предшествующий и идентифицирующий подполе переменной длины внутри поля. Он состоит из символа ^(не знак), далее следует алфавитный или числовой символ, например: ^a.

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

^aParis^bUnesco^c1985

Поле, содержащее подполя, может быть доступно как единый обьект при ссылке на его номер (например V26).

В этом случае CDS/ISIS использует опции, которые подавляют признаки подполей, автоматически замещая их знаками пунктуации.

Однако, так как подполя идентифицируются разделителями, вы можете также иметь доступ к каждому подполю отдельно, указывая как признак поля, так и ограничитель релеватного подполя. Например: V26 ^b относится к подполю Publisher поля Imprint и V26 ^a относится к подполю места публикации.

При проектировании базы данных, необходимо помнить, что язык форматирования CDS/ISIS имеет средства для автоматической замены разделителей подполей знаками пунктуации. Попробуйте если возможно, выбрать коды разделителей таким образом, чтобы пунктуация была подходящей для применения, в противном случае вы должны будете форматировать каждое подполе индивидуально. Стандартная таблица замены разделителей дана в разделе 3.2.2. "Командный режим". Заметим, что первое подполе, разбитого на подполя поля, не должно иметь ограничителя подполя, так как считается, что он уже есть. Например, если в поле заглавие, где вы хотите использовать подполе для подзаглавия, и заглавная часть поля присутствует всегда, то разделитель подполя не нужен. Таким образом, следующее содержимое этого поля возможно:

IL nome della rosa^bnaturalmente, un manoscritto

3.1.1.3. Повторяющиеся поля

В тех случаях, когда элементы данных могут встречаться более одного раза в записях, CDS/ISIS будет создавать столько полей, сколько требуется, сколько нужно, чтобы включать все случаи наличия таких элементов данных. Этот тип поля называется повторяемым типом поля. Типичным примером есть поле автор в библиографической записи. Все экземпляры повторяющегося поля имеют тот же номер. CDS/ISIS предоставляет возможности для работы и форматирования таких полей. Помните однако, что в основном вы не имеете доступа к отдельному экземпляру повторяющегося поля индивидуально.Часты случаи, например, когда первый экземпляр повторяющегося поля требует отдельной обработки (например, первый автор). Если ваше приложение требует этого, то нужно определить два разных поля: одно содержащее первое вхождение (не повторяющееся), и второе поле, содержащее другое вхождение (повторяющееся).

Повторяющиеся поля могут содержать подполя, которые дают вам возможность обращаться к 2-х размерным табличным данным (одно измерение - поле, другое - подполе). Заметим, что CDS/ISIS не имеет возможности прямо обращаться к повторяющимся подполям в пределах поля. Однако, вы можете осуществить это, если это требует приложение, путем использования возможностей программирования CDS/ISIS. Кроме того, вы можете описать поле повторяющимся даже если оно содержит один элемент данных. Это может быть полезно, например, чтобы иметь возможность разрывать относительно длинный текст, такой как статья или реферат, чтобы сохранить их содержимое при выводе. Путем определения такого поля, как повторяющегося, вы можете потом использовать возможности языка форматирования,предназначенные для повторяющихся полей, чтобы выделить первую строку каждого абзаца.

Другой пример, когда вы хотите иметь возможность искать длинные поля по словам путем ввода каждого параграфа, как отдельного вхождения. Вы можете использовать опцию F поискового языка, ограничив поиск в параграфе двумя или более словами, причем такими, что поиск не смог бы осуществляться, если поле было повторяемым (см. раздел 3.6 "Поисковый язык CDS/ISIS").

3.1.1.4. Управляющие символы

Обычные символы, хранимые в полях, также индексированы как данные, и могут быть интерпретированы CDS/ISIS как управляющие символы, в отличие от символов данных, и будут вызывать некоторые специальные процедуры обработки. Управляющие символы резервированы для использования в CDS/ISIS и поэтому не могут быть использованы как данные.

3.1.1.4.1. Ограничители поисковых терминов

Ограничители поисковых терминов могут использоваться для идентификации ключевых слов или выражений, содержащихся в записях, чтобы обеспечить их поиск. Различные технические приемы, которыми снабжен CDS/ISIS в указателе записи, описаны в главе "Таблица выбора полей (ТВП)". Ключевые слова в записях могут быть отмечены двумя путями: либо заключены между парой косых (/.../), либо заключены в треугольные скобки (<...>). Преимущество использования треугольных скобок предпочтительней использования пары косых, поскольку треугольные скобки в отличии от косых скобок, являются резервируемыми символами и CDS/ISIS воспринимает как опцию каждое появление скобок или подавляет их, когда отсутствие опции подавляет скобки.

Когда скобки подавлены, они обычно удалены из отображенной версии поля, исключая тот случай, когда открывающая скобка непосредственно следует за закрывающей: в этом случае CDS/ISIS будет ставить (замещать) их точкой с запятой и пробелом.

Например, путем выбора соответствующего режима вывода на экран следующая строка:

university course  documentation training  library schooL
будет отображена как:
university course; documentation trainind; library school.

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

Mission report   describing   a   (university   course)  in  (docunentation training) at an East African (library school)
Окружающее пространство вокруг ключевых слов должно присутствовать для того, чтобы правильно отображать результат:
Mission report    describing   a   university   course   in documentation training at an East African library school.

Если поле было введено как:
Mission report           describing            a (university course) in (documentation training)  at  an  East  African (library school)
CDS/ISIS отобразит его как:
Mission report      describing      auniversity      course indocumentation trainingat an East Africanlibrary school

Другими словами CDS/ISIS просто игнорирует скобки и не будет заменять их пробелами.

3.1.1.4.2. Средства сортировки

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

Эти возможности позволяют вам инструктировать CDS/ISIS заменять или игнорировать любую последовательность символов данных в поле всякий раз, когда поле используется как запоминающий элемент, используя один из следующих спецификаций:

text-a=text-b в этом случае, CDS/ISIS заменит text-a на text-b когда поле использовано в сортировке, но использует text-a (и игнорирует text-b) когда поле отображается.

text-a в этом случае, text-a будет игнорироваться когда сортируется и только используется для отображения поля.

Ниже показано несколько случаев в которых обычно эти возможности использованы (но их применение не ограничено только этими случаями):

Введено как The evolution of information systems
Отсортировано как EVOLUTION OF INFORMATION SYSTEMS
Отображено как The evolution of information systems
Введено как 100=onehundred days
Отсортировано как ONEHUNDRED DAYS
Отображено как 100 days
Введено как Мс=mac Pherson, J.
Отсортировано как MACPHERSON J.
Отображено как МсPherson, J.

3.1.2. Параметры ТОП

Каждая строка ТОП описывает одно поле записи файла документов и содержит 6 параметров: номер поля, имя, длина, тип, повторяемость и разделители подполей или шаблоны. Они описаны ниже.

3.1.2.1. Номер поля.

Номер - это уникальное числовое значение (в диапазоне 1- 32767) идентифицирующее поле. Признак поля используют всякий раз, когда CDS/ISIS необходимо выполнить данную операцию на полем. Признак описан в главной записи и соединен с содержимым соответствующего поля.

3.1.2.2. Имя поля

Имя поля - описательное имя, которое вы присваиваете полю. Оно обычно используется в рабочих листах для ввода данных для идентификации на экране. Вы можете полагать что имя поля это то, что вам известно, тогда как номер есть имя, согласно которому поле известно CDS/ISIS. Имя поля может быть длиной до 30 символов.

При создании рабочего листа по вводу данных, CDS/ISIS будет выводить это имя как имя поля по умолчанию.

3.1.2.3. Длина поля.

Это число (в диапазоне 1-1650) показывает предполагаемую длину поля. Пока создается рабочий лист по вводу данных, CDS/ISIS будет использовать это значение как длину по умолчанию.

Из-за закрытой связи между длиной поля и рабочими листами по вводу данных, CDS/ISIS не позволяет вам определить длину поля большую чем 1650 символов (что соответствует одной странице рабочего листа), поэтому поле не может быть в промежутке между двумя страницами рабочих листов. Заметим, однако, что, хотя все поля в базе данных имеют переменную длину, длина точно определенная здесь только характеристическая и CDS/ISIS не настаивает на ней, исключая поля для типа - шаблон, где длина фиксирована и максимальная длина ограничена 20 символами. Для другого типа поля, вы имеете опцию, где создаетя рабочий лист по вводу данных, каждый предел длины поля определен в ТОП или строковый редактор снабжен произвольной длиной по умолчанию 100 символов, если вы не введете длину.

3.1.2.4. Тип поля.

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

X - поле может содержать любой алфавитно-цифровой символ. Поля X - типа не проверяются CDS/ISIS.

A - поле может только содержать текстовые символы (заметим, что пробел не является текстовым символом!). На протяжении ввода данных, CDS/ISIS проверяет эти ограничения, выдавая сообщения, если ограничение не удовлетворено, и просит вас откорректировать поле.

N - поле может только содержать численные символы (0-9). На протяжении ввода данных, CDS/ISIS проверяет это условие, и выдает сообщение об ошибке, если условие не удовлетворено, то просит вас откорректировать поле.

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

Описанные текстовые символы могут быть настроены каждым пользователем посредством системной таблицы ISISAC.ТАВ, описанной в разделе 17.6 "Таблица буквенных символов (ISISAC.ТАВ)".

3.1.2.5. Повторяемость

Этот параметр определяет, есть ли поле повторяемым (т. е. оно может встречаться более чем раз в любой длинной записи) или нет. R указывает на то, что поле повторяется (см., например, поля 44, 70, 71, 72, 74 и 76 в примере ТОП данном на рис. 5). Заметим, что Р-тип (шаблон) поля может не быть повторяемым.

Число вхождений поля повторяемости ограничено максимальной длиной записи.

3.1.2.6. Подполя и Шаблон

В зависимости от определенного типа поля, этот элемент определяет набор полей, допустимых в поле, если таковые есть, (для типов Х, А или N), или шаблон (для типа Р).

3.1.2.6.1. Подполя

Если поле содержит подполя, идентификатор подполя позволяет определить их в порядке, в котором они должны появляться. Заметьте, что символ отрицание(^), идентифицирующий разделитель подполя не вводится. Например, если поле содержит подполя ^а ^в и ^с, они определены в ТОП как aбс (но не ^a^в^c).

3.1.2.6.2. Шаблон

Шаблон-посимвольное описание содержимого поля.

Для каждой позиции поля вы определяете в шаблоне тип символа, который он может содержать:

X - позиция может содержать любой алфавитно-цифровой символ

A - позиция должна содержать текстовые символы

9 - позиция должна содержать числовые символы

other (другие) - позиция должна содержать указанные символы

Заметим, что X и A должен вводиться в верхнем регистре (как заглавные).

Ниже даны некоторые примеры шаблонов и соответствующие входные данные:

Примеры шаблонов

Заметим следующие ограничения на поля Р-типа:

  • максимальная длина ограничена 20 символами;
  • они не могут быть повторяемыми; и
  • они не могут содержать подполя.
3.1.3. Модификация ТОП

Хотя вы можете модифицировать ТОП после ее создания, используя программу ISISDEF, вы должны знать, что некоторые изменения могут иметь тяжелые последствия, особенно если вы имеете уже введенные записи в соответствующей базе данных. Каждый раз изменяя ТОП, CDS/ISIS выполнит проверку последовательности рабочих листов, определенных для базы данных и, если необходимо, автоматически модифицирует их под определенные условия. Дополнительные изменения, однако, могут требоваться не только в рабочих листах, но также в ТОП и форматах воспроизведения.

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

Ниже даны некоторые пояснения относительно влияния некоторых изменений ТОП, а также индикации, на которую CDS/ISIS автоматически реагирует.

Добавление поля: Добавить поле, как последнее в рабочих листах ввода данных; прибавить поле, в как последнее в форматах отображения; прибавить поле в инвертированном файле FST, если потребуется.

Удаление поля: CDS/ISIS будет автоматически удалять поле во всех рабочих листах в которых оно встречается, которое будет эффективно сдерживать любой дополнительный ввод этого поля в базе данных; вы можете, если хотите удалить поле из рабочих листов, в которых оно встречалось, используя программу ISISDEF; удалить поле из форматов в которых оно встречалось; если поле было введено в любую запись базы данных, то используйте программу ISISXCH для его удаления; если поле было инвертировано, удалите его из ТОП и переинвертируйте базу данных.

Изменить номер (код) поля:

Делается тогда, когда вы будете удалять старое поле и добавлять новое.

Чтобы изменить номер поля, используют программу ISISXCH, затем, если поле было инвертировано, переинвертируйте базу данных.

Изменение имени поля: Изменить, если необходимо, имя поля в рабочих листах и в форматах.

Увеличение длины поля: Увеличить, если необходимо, длину поля в рабочих листах.

Уменьшение длины поля: CDS/ISIS автоматически уменьшает длину поля в рабочих листах, если поле не есть повторяющимся.

Изменение типа поля: CDS/ISIS будет автоматически изменять тип поля во всех рабочих листах, где поле встречается. Однако, если запись содержит данные, описанные по-старому, не совместимые с новым типом, тогда такие поля могут требовать ручных изменений.

Сделать поле повторяемым: Увеличить, если необходимо, длину поля в рабочих листах или определить его как поле прокрутки, если поле инвертировано, модифицировать инвертированный файл ТОП для извлечения всех случаев поля; модифицировать форматы для точного формирования поля.

Сделать поле не повторяемым: CDS/ISIS уменьшит, если необходимо, длину поля в рабочем листе, где поле встречается; вы должны вручную удалить дополнительные лишние входные поля, если таковые есть в базе данных или предпринять альтернативные действия.

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

Изменения шаблона поля: CDS/ISIS автоматически изменяет шаблон во всех рабочих листах, где встречается поле. Однако, записи, уже описанные в базе данных, могут быть несовместимыми с новым шаблоном, который вы определили. В этом случае они должны быть изменены вручную.

3.2. Язык форматирования

The UNESCO micro CDS/ISIS Software

Язык форматирования позволяет определить точные требования по форматированию записей базы данных. С помощью этого языка, можно выбрать один или более конкретных элементов данных в нужном порядке, вставить текстовые константы по вашему выбору, например, отметить подзаголовками некоторые или все поля, а также определить требования по горизонтальному и вертикальному размещению данных. Совокупность команд по форматированию печати, описываемых в данной главе, называется форматом. В общем случае формат определяет подмножество полей записей базы данных, которые затем могут использоваться CDS/ISIS для выполнения заданной функции. Хотя форматы в основном используются для спецификации способа выдачи записей на экран или принтер, однако они также широко используются в системе каждый раз, когда необходимо выполнить специфические операции с одним или несколькими элементами данных. Hапример, в таблице выбора полей формат используется для определения данных, к которым должна применяться данная техника индексирования. Язык форматирования, следовательно, является ядром многих операций CDS/ISIS и эффективное использование CDS/ISIS требует тщательного его изучения. Формальное определение языка форматирования дано в разделе 3.2 "Язык форматирования".

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

Хотя все форматы составлены с использованием одного и того же языка форматирования, они могут быть разделены на группы в зависимости от предполагаемого их использования:

Экранные форматы используются для вывода записей на экран или принтер (в последнем случае их называют форматами печати).

Форматы выборки используются в ТВП для определения данных, которые нужно индексировать.

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

Когда формат используется для выдачи данных на экран, продуцируемые строки обычно ограничены определенной максимальной длиной (шириной строки). Hапример, вызывая строки на экран, CDS/ISIS автоматически ограничивает ширину строки 80 символами. Hесмотря на то, что командами форматирования требуется перейти на новую строку, CDS/ISIS будет выдавать данные последовательно, стараясь заполнить каждую строку настолько, насколько возможно. Если данное поле превышает длину строки, CDS/ISIS поделит его на необходимое количество строк. Когда CDS/ISIS разбивает данные на строки, точка деления всегда оказывается на уровне слов, т. е. слово никогла не разрывается на две строки.

Все команды формата могут вводиться большими или маленькими буквами или комбинацией больших и малых букв.

Все примеры по форматированию в следующих разделах ссылаются на запись, приведенную на рис. 6, в которой содержание полей дано в том виде, в каком оно хранится в записи. Эта запись взята из базы данных CDS, поставляемой ЮHЕСКО на дискетах вместе с CDS/ISIS (ТОП соответствующей базы данных описана в разделе 3.1 "Таблица определения полей (ТОП)").

Рис. 6

Рисунок 6

3.2.1. Селекторы поля

Селекторы поля - это команды, используемые для извлечения определенного поля или подполя из записи. Специальная команда позволяет извлечь номер записи в файле документов (MFN), хотя MFN не является полем. (MFN не имеет метки и не определен в ТОП).

3.2.1.1. Команда поля

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

Рис. 7

Рисунок 7

3.2.1.2. Команда подполя

Для извлечения конкретного подполя из данного поля просто добавьте соответствующий разделитель подполя к метке, как показано на рис. 8. Заметьте, что вы можете использовать специальный разделитель подполя ^* для извлечения первого подполя, если оно есть. В этом случае первому подполю необязательно должен предшествовать действительный разделитель подполя.

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

Рис. 8

Рисунок 8

3.2.1.3. Извлечение фрагмента поля или подполя

Вам может понадобиться, в некоторых случаях, извлечь часть поля, которая не является подполем, особенно в случаях, когда поле имеет фиксированный формат во всей базе данных (например, стандартизованную запись даты YY-MM-DD). Вы можете сделать это введением команды смещение/длина непосредственно после команды поля или подполя, к которому эта команда применяется. Эта команда может быть введена в виде *смещение.длина или *смещение или длина, где:

*смещение указывает позицию первого символа, который должен быть извлечен из поля или подполя (позиции символов считаются с нуля, т. е. первый символ находится в позиции номер 0, второй - в позиции 1 и т. д.); если смещение опущено, CDS/ISIS считает смещение равным 0;

.длина указывает количество символов, которые нужно извлечь; если длина опущена, то извлекается все поле, начиная с символа, указанного в смещении.

Некоторые примеры этой команды даны на рис. 9 где предполагается, что запись, взятая для примера, содержит также поле 1 в следующем виде:

88-Nov-05


Рис. 9

Рисунок 9

Отметьте, в двух последних примерах есть разница в обращении с полем, содержащим подполя: если идет ссылка на поле (т. е. V26), то смещение ноль представляет первый действительный символ поля, в то время как при ссылке на подполе (т. е. V26^b) смещение ноль представляет первый символ данных после разделителя подполя.

3.2.1.4. Команда смещения

Когда CDS/ISIS обрабатывает команду поля или подполя, вывод содержимого поля начинается с текущей позиции строки, которая зависит от последней выполненной команды. Если поле не вмещается в текущую строку, CDS/ISIS создает столько; дополнительных строк, сколько требуется. Обычно последующие строки начинаются с первой позиции. Вы можете изменить эти позиции с помощью команды смещения, которая должна следовать непосредственно за командой поля (или подполя). Команда смещения кодируется следующим образом (f, c) или (f), где:

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

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

Значение ноль может быть назначено как для f, так и для с. Если нужно использовать только f, c может быть опущено (CDS/ISIS присваивает ноль по умолчанию). Однако, если нужно только c, вы должны определить и f. Hекоторые примеры приведены на рисунке 10.

Рис. 10

Рисунок 10

3.2.1.5. Команда MFN

Для извлечения номера записи в файле документов введите следующее:

MFN или MFN(d)

где d - количество цифр, которые должны быть выведены на экран. Если (d) опущено, по умолчанию выводится 6 цифр. См. рисунок 11.

Рис. 11

Рисунок 11

Oтметьте, что вы можете использовать F функцию (см. раздел 3.3.2.1 "F(expr-1, expr-2, expr-3)") для подавления ведущих нулей.

3.2.2. Команда режима

CDS/ISIS может выводить данные на экран в трех различных режимах:

режим проверки: в этом режиме поля выводятся на экран точно в том виде, как они хранятся в записи. Отметьте, что CDS/ISIS не вносит никаких разделителей между полями или экземплярами повторяющегося поля. Следовательно, это забота пользователя обеспечить адекватное разделение полей с помощью команд размещения, литералов или повторяющихся групп (см. разделы 3.2.3., 3.2.4, 3.3.5,"Команды вертикального и горизонтального размещения", "Литералы", и "Повторяющиеся группы"). вертикального и горизонтального размещения", "Литералы" и "Повторяющиеся группы). Этот режим обычно используется для вывода на экран записей в проверочных целях;

режим заголовка: этот режим обычно используется для заголовков при печати каталогов и индексов. Все управляющие символы, введенные в данные, такие как средства изменения порядка сортировки (см. раздел 8.3.13 "Сортировка") и ограничители дескрипторов (и) игнорируются (за исключением указанного ниже), в то время как разделители подполей заменяются пунктуацией (см. ниже).

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

Когда CDS/ISIS форматирует поле, содержащее подполе, в режимах заголовка или данных, он автоматически заменяет введенные разделители подполей знаком пунктуации (первый разделитель подполя, если есть, всегда игнорируется). Далее, специальная комбинация символов >< заменяется на ';', обеспечивая таким образом простой способ форматирования полей, содержащих перечень ключевых фраз, заключенных в угловые скобки (и сохраняя нажатие клавиши во время ввода данных). Таблица стандартного замещения разделителей подполей выглядит так:

^a         замещается на ';'
^b до ^i   замещается на ','
все другие замещаются на '.'

Команда режима кодируется Mmc, где:

m  определяет режим следующим образом:
   Р - режим проверки
   H - режим заголовка
   D - режим данных
с определяет способ написания следующим образом:
   U - данные конвертируются в заглавные буквы
   L - данные не изменяются

Команда режима может появляться в формате столько раз, сколько необходимо, каждая команда действует до тех пор, пока не появляется следующая. Если команда режима отсутствует, CDS/ISIS использует по умолчанию MPL (режим проверки, данные не конвертируютсяв заглавные буквы). Примеры команды режима даны на рис. 12.

Рис. 12

Рисунок 12

3.2.3. Команды горизонтального и вертикального размещения

Язык форматирования обеспечивает пять команд для управления горизонтальным и вертикальным размещением. Они приведены на рис.13.

Рис. 13

Рисунок 13

Команда Xn вносит n пробелов перед форматированием следующих данных. Однако, если на текущей строке осталось менее n свободных позиций, CDS/ISIS просто переходит на новую строку. Так, например, если следующая свободная позиция текущей строки - 77, а ширина строки определена 80, то выполнение команды Х7 приведет к размещению следующих данных с начала следующей строки (а не с третьей позиции следующей строки).

Команда Сn указывает, что следующие данные должны размещаться, начиная с n-й позиции следующей строки. Это средство позволяет осуществлять вывод по колонкам. Если n оказывается больше ширины строки, команда игнорируется.

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

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

/#V10/#V20/#V30 ...

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

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

Так, следующий формат:

%##V10%##V20%##V30 ...

приведет к пропуску одной и только одной строки между каждым полем, даже если некоторые из них отсутствуют в записи. Дополнительные примеры этих команд даны на рис. 14.

Рис. 14

Рисунок 14

3.2.4. Литералы

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

Литералы существуют трех типов:

условные литералы : определяют текст, который будет выведен только если соответствующее поле присутствует в записи. Если команда выбора соответствующего поля - это команда подполя (т. е. v24^a), то текст будет выведен только тогда, когда соответствующее подполе присутствует в записи. Если команда выбора поля определяет повторяющееся поле, то текст будет выведен только один раз, независимо от количества повторений поля. Условные литералы заключаются в двойные кавычки ("), " например, "Заголовок: ".

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

безусловные литералы : определяют текст, который будет выведен независимо от наличия полей. Безусловные литералы заключаются в одинарные кавычки ('), например 'Краткое содержание'. Поскольку безусловные литералы всегда выводятся как единый фрагмент текста (т. е. безусловные литералы не могут разбиваться на две строки), их длина не может превышать ширину строки, иначе они будут обрезаны. Чтобы вывести текст, превышающий ширину строки, нужно разбить его на два или более литералов. Можно также обеспечить любое требуемое смещение с помощью команды Сn.

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

Условные и/или повторяющиеся литералы ассоциируются с полем или подполем своим размещением в формате: литералы, предшествующие селектору поля (называемые также префикс-литералами), будут выведены перед содержимым поля, в то время, как литералы, следующие за селектором поля (называемые также суффикс-литералами), будут выведены после содержимого поля.

Если за повторяющимся префикс-литералом непосредственно следует знак
'+' (например, |xxx|+), он будет выведен перед каждым, кроме первого, повторением поля.

Если повторяющемуся суффикс-литералу непосредственно предшествует знак
'+' (например, +|xxx|), он будет выведен после каждого, кроме последнего, повторения поля.

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

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

Префикс-литералы .
1. Один или более условных префикс-литералов. За условным префикс-литералом может следовать другой условный префикс-литерал, команды вертикального и горизонтального размещения, команды режима, и/или esc-команды. (см. раздел 3.3.6 "Команда перехода (Escape)"). Все команды между первым условным префикс-литералом и ассоциируемым с ним селектором поля становятся условными и будут выполнены только при наличии поля, иначе они игнорируются.
2. Один и только один повторяющийся префикс-литерал. Если такой литерал есть, он должен непосредственно предшествовать ассоциируемому селектору поля.

Суффикс-литералы.
3. Один и только один повторяющийся суффикс-литерал. Если такой литерал есть, он должен следовать непосредственно за ассоциируемым селектором поля.
4. Один и только один условный суффикс-литерал. Если такой литерал есть, он должен следовать непосредственно за повторяющимся суффикс-литералом, или ассоциируемым селектором поля.
5. Суффикс-литералы не должны разделяться запятыми, и не должно быть запятой между селектором поля и первым суффикс-литералом, запятая обозначает конец суффикс-литералов, ассоциируемых с данным селектором поля.

Hулевые литералы (т. е. литералы длиной ноль, такие как "" или ||) разрешаются и могут быть использованы, например, как префикс-литералы, для обеспечения условного вертикального размещения или как суффикс-литералы, для временного подавления автоматической пунктуации, которую CDS/ISIS обеспечивает в режиме данных.

Литералы переводятся в заглавные буквы, если расположены после команды режима.

Примеры различных типов литералов приведены на рисунке 15.

Рис. 15

Рисунок 15

3.2.5. Мнимый селектор поля

Мнимый селектор поля реализует условный вывод литералов в зависимости от наличия или отсутствия данного поля или подполя без вывода содержимого ассоциируемого поля. Мнимый селектор поля кодируется следующим образом:

Dt или Dt^x или Nt или Nt^x,

где:
D или N- указывает, что это мнимый селектор поля. D указывает, что все ассоциируемые условные литералы должны выводиться только когда поле присутствует. N указывает, что они должны выводиться только при отсутствии поля.
t - метка поля, управляющего выводом литералов.
^x - код обычного разделителя подполя. Если он приведен, то это значит, что вывод литералов зависит от наличия или отсутствия определенного подполя (отметьте, однако, что отсутствие поля говорит и об отсутствии подполей в этом поле).

Мнимому селектору поля обычно предшествует по крайней мере один условный префикс-литерал (который может быть нулевым), за ним могут следовать один или более двух условных префикс-литералов, команды вертикального и горизонтального размещения, команды режима и/или Esc-последовательности. Мнимый селектор поля не может иметь суффикс-литералов.

Hесколько примеров этих команд приведены на рисунке 16.

Рис. 16

Рисунок 16

3.2.6. Выражения

Язык форматирования позволяет вычислять и/или сравнивать значения с помощью выражений. Выражения построены так, что при вычислении возвращают значения. Этим значением может быть строка сиволов (т. е. содержимое данного поля или литерал), в этом случае выражение называется строковым выражением; число, называется числовым выражением или им может быть значение истинности (истина или ложь), тогда выражение называется булевым (или логическим). CDS/ISIS также обеспечивает набор функций, которые, основываясь на аргументе, выполняют какие-то функции и возвращают значения. Функции, возвращающие число, называются числовыми функциями; функции, возращающие строку символов, называются строковыми; а те, что возвращают значение истинности, называются булевыми. Только строковые функции могут использоваться непосредственно как команды форматирования. Числовые выражения могут использоваться в булевых выражениях или как аргументы функций. Булевы выражения и булевы функции могут использоваться только в контексте IF команды.

3.2.6.1. Числовые выражения

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

В числовых выражениях можно использовать следующие операнды:
числовые константы : такие как 5, 18, 98,65;
числовые константы могут быть представлены в виде целых чисел, десятичных или в экспоненциальной нормальной форме, например, 1.5Е5 (т. е. значение 1,5 умножить на 10 в 5-ой степени, т. е. 150000);
числовыеяфунции: такие как val(v10) (функции описаны в главе "Числовые функции");
MFN : значение MFN записи;
числовые выражения: когда выражение используется как операнд, оно должно быть заключено в скобки, например, (val(v20)-5).

Допустимые операторы:
+  сложение (или унарная +);
-  вычитание (или унарная -);
*  умножение;
/  деление.

Как и в обычной алгебре при отсутствии скобок унарные операции выполняются первыми, а умножение и деление выполняются до сложения и вычитания. Два и более операторов одного уровня выполняются слева направо. Можно использовать скобки для изменения порядка вычисления: выражения, заключенные в скобки, выполняются первыми, и выражения большей глубины вложенности вычисляются перед выражениями меньшей глубины вложенности скобок.

Отметьте, что поскольку селекторы поля (т.е.v10 или v10^a) представляют строки текста, они не могут использоваться как операнды в числовых выражениях. Однако, может быть использована функция VAL для конвертирования содержимого поля или подполя в числовое значение.

Также числовое выражение не может выводиться на экран, а должно сначала конвертироваться в символьную строку с помощью функции F.

Нами приведены примеры числовых выражений (предполагается, что MFN=10, v1^a=10, v1^b=20 и v2=30):

Примеры числовых выражений, предполагается, что MFN=10, v1^a=10, v1^b=20 и v2=30

CDS/ISIS версии IBM PC конвертирует все числа, используемые в вычислениях с плавающей точкой одинарной точности. Это обеспечивает точность - примерно 7 цифр с максимальным значением 1.701411Е38. В версии VAX используются числа с плавающей точкой двойной точности, что обеспечивает точность - 15 цифр.

3.2.6.2.Cтроковые выражения

Строковые выражения формируются из операндов, которые являются строками символов. Поскольку CDS/ISIS не обеспечивает явных строковых операторов, строковое выражение всегда состоит из одного операнда, которым может быть:

безусловный литерал: такой например, как некоторый текст
селектор поля: который может включать команду смещение/длина (т. е. v26^c*2.2);
строковая функция: такая, например, как S(v24,v25,v26) (описанная в разделе 3.3.2. "Строковые функции").

3.2.6.3. Булевые выражения

Булевые выражения используются для определения истинности или ложности множества из одного или более условий, и вычисления значения истинности. Операциями булевых выражений могут быть:

выражения отношенияя: сравнивают два значения и определяют, предшествует ли данное отношение (см. ниже), например, mfn<10;
булевые функциия: такая, например, как Р(v24), которая возвращает значение истины (см. раздел 3.3.3 "Булевые функции").

Выражение; отношения позволяет определять верно ли определенное отношение между двумя значениями. Общая форма выражения отношения:
выражение-1 оператор-отношения выражение-2
где:

Выражение-1 оператор-отношения выражение-2

Операторы отношения = () ( (= ) )= имеют свое обычное значение, когда применяются к числовым выражениям (в рамках ограничений точности числовых значений, определенных в разделе 3.2.6.1 "Числовые выражения"). Когда сравниваются строковые выражения, применяются следующие правила:

  1. кроме оператора :"содержит" строки сравниваются в точности в том виде, в каком они есть, т. е. большие и малые буквы сравниваются по своим ASCII кодам (т. е. А будет меньше а);
  2. два строковых выражения не считаются равными, несмотря на то, что имеют равную длину. Если два выражения, представляющие строки равной длины, таковы, что символ в символ равны вплоть до последнего символа более короткого выражения, то это более короткое выражение считается меньше, чем более длинное.

Оператор :"содержит" ищет строку символов (определенную выражением-2) в другой строке (определенную выражением-1). Если второй операнд оказывается где-либо в первом операнде, результатом будет истина. Этот оператор считает малые буквы равными соответствующим большим буквам. Например, результатом выражения:

v10 : `химик`

будет Истина только в том случае, если поле 10 содержит строку химик, в противном случае будет Ложь. Отметьте, что вторым операндом может быть произвольная строка символов, которая не обязательно является действительным словом. Так, в приведенном выше примере, результат будет истина не только когда поле 10 содержит слово " химик ", но и когда поле содержит такие слова, как " биохимик ", " фотохимик " и др.

Операнды булевых выражений могут объединяться с помощью следующих булевых операторов:

NOT этот оператор дает значение Истина, когда операнд имеет значение Ложь, и значение Ложь, когда операнд - Истина. Оператор NOT может использоваться только как унарный, т. е. он всегда применяется к булевому выражению, следующему за ним;
AND этот оператор дает значение Истина, когда оба операнда истинны. Если хотя бы один из операндов - Ложь, результатом является Ложь;
OR этот оператор выполняет включающую OR операцию. Результатом является Истина, когда один или оба операнда истинны, в противном случае результатом является Ложь.

При вычислении булевых выражений, при отсутствии скобок, CDS/ISIS сначала выполняет NOT операцию, затем AND операциии перед OR операциями. Набор из двух и более операторов одного уровня обрабатывается слева направо. Можно использовать скобки для изменения порядка вычисления: выражения, заключенные в скобки выполняются первыми, при наличии вложенных скобок первыми выполняются выражения, заключенные во внутренние скобки.

Примеры булевых выражений даны на рис. 17.

Рис. 17

Рисунок 17

3.3. Функции

The UNESCO micro CDS/ISIS Software

Функция вычисляет значение (называемое значением функции или возращаемым значением), которое затем подставляется вместо функции при вычислении выражения.

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

Аргументы могут быть трех типов:

формат : формат CDS/ISIS, который может содержать любую разрешенную команду форматирования; исключение составляет функция REF (см. раздел 3.3.2.2 "REF (выражение, формат)"), в которой формат используется как аргумент, т. е. результирующий текст, полученный при обработке этого формата и переданный функции, а не формат сам по себе.
числовое выражение : когда числовое выражение является аргументом, оно вычисляется первым, и его значение передается функции.
селектор поля : селектором поля в качестве аргумента может быть как команда поля, так и подполя, которая не может содержать команду смещение/ длина.

Ниже описыватся допустимые функции и соответствующие им аргументы; функции классифицированы в соответствии с типом значения, которое они возвращают.

3.3.1.Числовые функции.
3.3.1.1. VAL (формат)

Функция VAL возвращает числовое значение своего аргумента. Аргумент формат - это формат CDS/ISIS, который может содержать любую возможную команду форматирования. CDS/ISIS обрабатывает аргумент, чтобы получить строку текста. Затем эта строка сканируется слева направо до тех пор, пока не найдется числовое значение (которое может быть в экспоненциальном представлении). Функция VAL возвращает это числовое значение, переведенное во внутреннее машинное представление, удобное для выполнения вычислений. Если не найдено никаких числовых значений, возвращается значение ноль. Если текст содержит более, чем одно числовое значение, возвращается только первое. Например (предполагая, что v1^a=10, v1^b=20, v2=30):

Функция VAL

В последнем примере значение 0 (а не 1985), так как CDS/ISIS рассматривает минус между Июль и Август как начало отрицательного числового значения, а А от Август как его конец, поэтому выбранное значение получается просто '-` и результатом является 0. Поэтому важно более четко определить правила ввода данных для тех полей или подполей, которые будут использоваться для численных вычислений.

3.3.1.2. RSUM (формат)

Функция RSUM возвращает сумму одного или более числовых значений. Текст, продуцированный аргументом, сканируется слева направо, как в функции VAL, и все выбранные числовые значения складываются. Полученная сумма является значением функции. Отдельные значения должны быть разделены одним или более нечисловыми символами, и это забота пользователя внести эти разделители через формат, являющийся аргументом. RSUM может ипользоваться для вычисления суммы всех числовых значений, содержащихся во всех повторениях данного повторяющегося поля. Например (предполагая, что поле 1 имеет четыре повторения, содержащих 1, 2, 3, и 4):

Функция RSUM

3.3.1.3. RMIN (формат)

Функция RMIN возвращает минимальное значение из одного или нескольких числовых значений. Текст, продуцированный аргументом, сканируется слева направо, как для VAL функции, и извлекаются все числовые значения. Алгебраически самое малое из этих значений - значение функции. Отдельные значения должны быть разделены одним или более нечисловыми символами, и это забота пользователя внести эти символы через формат, данный в аргументе. RMIN может использоваться для вычисления минимального из числовых значений, содержащихся во всех повторениях повторяющегося поля. Например (предполагая, что поле 1 имеет четыре повторения, содержащих 10, 20, 30 и 40):


Функция RMIN

3.3.1.4. RMAX (format)

Функция RMAX возвращает максимальное значение из одного или нескольких числовых значений. Текст, продуцируемый аргументом, сканируется слева направо, как для VAL функции, и все числовые  значения  извлекаются.  Алгебраически наибольшее из этих значений - значение функции. Отдельные значения должны быть разделены  одним  или более нечисловыми символами, и это забота пользователя внести эти символы через формат, данный в аргументе. RMAX может использоваться для вычисления  максимального из числовых значений, содержащихся во всех повторениях повторяющегося поля. Например, поле 1 имеет четыре повторения, содержащих 10, 20, 30 и 40:

Функция RMAX

3.3.1.5. RAVR (формат)

Функция RAVR возвращает среднее значение (в арифметическом смысле) из одного или нескольких числовых значений. Текст, продуцируемый аргументом, сканируется слева направо, как для функции VAL, и извлекаются все числовые значения. Затем вычисляется среднее значение - значение функции. Отдельные значения должны быть разделены одним или несколькими нечисловыми символами, и это забота пользователя - внести эти символы через формат, данный в аргументе. RAVR может использоваться для вычисления среднего из числовых значений, содержащихся во всех повторениях данного повторяющегося поля. Например, поле 1 имеет четыре повторения, содержащих 10, 20, 30 и 40:

Функция RAVR

3.3.1.6. L (формат)

Функция L использует текст, продуцируемый форматом, как поисковый термин для инвертированного файла и возвращает MFN первой ссылки (если она есть). Перед поиском в инвертированном файле термин автоматически переводится в большие буквы. Если термин не найден, значением функции является ноль. Функция L обычно используется вместе с REF функцией (см. раздел 3.3.2.2 "REF (выражение, формат)", где приведены примеры использования функции L).

Отметьте, что при обработке аргумента - формата используется текущий режим вывода данных (см. раздел 3.2.2. "Командный режим "). Это важно, поскольку в результате использования неверного режима можно не найти термин в инвертированном файле. Как правило, следует использовать тот же режим, который применяется в ТВП инвертированного файла.

3.3.2. Строковые функции.

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

3.3.2.1. F (выраж-1, выраж-2, выраж-3)

Функция F преобразует числовое значение из его внутреннего представления с плавающей точкой в символьную строку. Все три аргумента - числовые выражения. Первый аргумент, выраж-1, число, которое должно конвертироваться. Второй аргумент, выраж-2, - минимальная ширина выходной строки; и третий аргумент, выраж-3 - количество десятичных позиций. Второй и третий аргументы необязательны. Отметим, однако, что если присутствует выраж-3, то выраж-2 не может быть опущено. Выраж-2 определяет минимальную ширину, т. е. значением функции будет символьная строка длиной как минимум выраж-2 символов, и если конвертируемое числовое значение требует выраж-2 символов или меньше, оно будет выровнено по правой границе внутри этой ширины. Если количество символов, требуемое для представления значения выраж-1, больше данной ширины, CDS/ISIS использует добавочные позиции. В этом случае выходная строка будет длиннее, чем выраж-2 символов.

Выраж-3 определяет количество десятичных позиций, если оно опущено, результат будет в научном экспоненциальном представлении, и, если также опущено выраж-2, то по умолчанию используется 16 символов. Если аргументы присутствуют, результатом будет округленное представление с фиксированной точкой выраж-1 с выраж-3 цифрами после запятой. Если выраж-3 равно нулю, то выраж-1 округляется до ближайшего целого числа и на выходе будет целое число без десятичных знаков.

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

Функция F может быть использована для выравнивания колонки чисел по десятичной запятой путем выбора подходящей ширины.

Ниже приведены примеры функции F:

Примеры функции F

3.3.2.2. REF (выражение, формат)

Функция REF позволяет извлечь данные из альтернативной записи файла документов. Первый аргумент - это числовое выражение, дающее MFN альтернативной записи, которая должна быть выбрана, а второй аргумент - это формат, который должет быть применен к этой записи. Если значение выражения не соответствует MFN существующей записи базы данных, то функция REF даст нулевую строку (т. е. ничего не будет выведено). Процесс, выполняемый функцией REF представлен на рис. 18, где предполагается, что текущая форматируемая запись - запись 1.

Рис. 18

Рисунок 18

Как  видно из рисунка, функция REF - очень мощное средство,поскольку позволяет объединить данные, которые хранятся в различных записях базы данных и заставляет их появиться перед пользователем как будто хранящиеся в одной записи. В этом первом примере записи 1 и 98 связываются спецификацией в поле 4 связанной записи 1 MFN, которая содержит названия страны на английском и французском языках, через формат можно извлечь любой из языков, определением релевантной метки связанной записи.

В некоторых случаях связывание записей через MFN может быть неудобным с точки зрения ввода данных. Кроме того, что любая  ошибка в MFN связанной записи даст вывод неверных данных, может потребоваться много времени для определения  правильного MFN, который надо использовать. В случае, изображенном на рис. 18, например, может оказаться, что исходный документ, с которого вводятся данные, уже содержит нормализованный код страны ("UK" в нашем случае). Для использования MFN, как связки с записью страны может потребоваться разьяснительный список или выяснение в базе данных, что MFN записи, соответствующей 'UK` - 98: было бы значительно проще ввести сразу "UK", а не 98. Это возможно, и можно получить такой же вывод, какой приведен на рис. 18, организацией базы данных таким образом, чтобы было удобно использовать функцию L (см. раздел 3.3.1.6 "L(формат)").

Функция L находит MFN соответствующий поисковому термину. Т. е. эту функцию можно использовать для преобразования символьной строки (такой как "UK" ) в MFN. Чтобы можно было использовать функцию L, нужно установить уникальное соответствие между символьной строкой и соответствующим ей MFN. Инвертированный файл обеспечивает такой механизм (см. раздел 1.3.3 "Инвертированный файл"). В нашем примере, было бы удобно инвертировать поле 10 записей 'страна` для установления уникального соответствия между кодом страны и соответствующим MFN (отметим, что понятие уникальности важно, т. к. функция L предполагает, что ключ, который она ищет, имеет одну и только одну ссылку. И это забота пользователя обеспечить уникальность этого соответствия использованием, если необходимо, префикса поисковоготермина, как указано в разделе 3.4.2 "ТВП для инвертированного файла". Рисунок 19 иллюстрирует этот метод.

CDS/ISIS не рассматривает природу соответствия между двумя записями. Она просто обеспечивает механизм связывания записей. При практическом применении пользователь обычно определяет смысл отношения через соответствующее применение языка форматирования и специальное физическое проектирование базы данных. Например, библиографическая запись должна быть связана с исходной и последующей записями, чтобы отразить различную природу этих сообщений. Отметим, что поскольку вторым аргументом; функции; REF является формат, эту функцию можно использовать рекурсивно для установления иерархических соотношений более высокого порядка, таких, например, какие требуются в тезаурусах.

Функция REF может использоваться в формате сколько угодно раз, не; превышая, однако, выходные ограничения (т. е. размеры рабочей области). Она ограничена 8000 символами. Отметим, что это ограничение выполнения,а не языка форматирования.

Рис. 19

Рисунок 19

3.3.2.3. S (формат)

Функция S возвращает текст, полученный из аргумента. Как упоминалось ранее, CDS/ISIS не обеспечивает явных операций для строковых выражений. Функция S может быть использована для выполнения строковой конкатенации. Это особенно удобно в булевых выражениях, где гораздо эффективнее использовать такое имплицитное OR по сравнению с эксплицитным оператором OR. Например, следующие булевы выражения:

S(mdl,v10,v20,v30):'water`
v10: 'water` OR v20: 'water` OR v30: 'water`

эквивалентны (они оба истинны, если хоть одно из полей 10, 20 или 30 содержит строку 'water`), но первое будет выполнено гораздо быстрее второго.

3.3.2.4. Пользовательские точки подключения в формате

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

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

С точки зрения Паскаля, CDS/ISIS является пользовательской точкой подключения, объявленной с атрибутом [FORMAT] (см. руководство по Паскалю CDS/ISIS для уточнения подробностей интерфейса).

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

Пользовательская точка подключения включается в формат следующим образом:

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

где:
& - идентифицирует пользовательскую точку подключения;
имя - имя программы на Паскале CDS/ISIS, которая должна быть выполнена;
формат - аргумент.

Команда смещения (см. раздел 3.2.1.4 "Команда смещения") может употребляться с пользовательской точкой подключения. CDS/ISIS применяет ее к выходной строке. На рисунке 20 приведен пример пользовательской точки подключения в формате, которая просто возвращает аргумент, как значение функции.

Рис. 20

Рисунок 20

3.3.3. Булевы функции.
3.3.3.1. Р (селектор поля)

Функция Р возвращает значение Истина, если форматируемая запись содержит по крайней мере одно повторение поля или подполя, указанного в аргументе. Например:

Функция Р

3.3.3.2. А (селектор поля)

Функция А возвращает значение Истина, если форматируемая запись не содержит ни одного повторения поля или подполя, данного в аргументе.

Отметьте, что из-за отсутствия поля следует отсутствие всех подполей. Таким образом, если селектор поля специфицирует подполе, функция А возвращает значение Истина, если поле присутствует, а отсутствует только указанное подполе или отсутствует все поле. Например:


Функция А

3.3.4. Команда IF

Команда IF позволяет составлять контекстно-смысловые форматы, т. е. форматы, способные варьировать вывод в зависимости от содержимого форматируемой записи.

Команда IF кодируется следующим образом:

IF условие THEN формат-1 ELSE формат-2 FI

где:

условие - булево выражение, определенное в разделе 3.2.6.3 "Булевы выражения":

формат-1 формат CDS/ISIS, который обрабатывается только и только в том случае, если значением булева выражения является Истина;
формат-2 формат CDS/ISIS, который обрабатывается только и только в том случае, если значением булевого выражения является ложь.

Предложение яELSE формат-2я необязятельно, и может быть опущено. Ключевые слова IF, THEN и FI обязательны всегда, хотя формат-1 может быть опущен, если присутствует предложение ELSE (т. е. если условие истинно, то ничего не будет выведено). Следовательно команда IF может принимать одну из следующих альтернативных форм:

IF условие THEN формат-1 FI
IF условие THEN ELSE формат-2 FI

Поскольку нет никаких ограничений на команды, которые можно употреблять в формате-1 и формате-2, IF команды могут быть вложены на любую желаемую глубину. Ключевое слово FI, в таком случае, должно закрывать каждую IF команду (можно рассматривать IF и FI как пару скобок). Например:


Команда IF. IF и FI

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


Рис. 21

Рисунок 21

3.3.5. Повторяющиеся группы.

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

Чтобы понять концепцию повторяющейся группы, надо узнать, как CDS/ISIS обращается с повторяющимися полями. Если нет никаких указаний, CDS/ISIS рассматривает все повторения повторяющегося поля (в порядке, в котором они были введены) как единую строку текста.

Повторяющаяся группа изменяет порядок обращения CDS/ISIS с повторениями повторяющегося поля путем обработки одного повторения, а не всех повторений вместе. Этот процесс наглядно представлен на рисунке 22.

Когда CDS/ISIS обнаруживает скобку, открывающую повторяющуюся группу, происходит следующее:

  1. Счетчик повторений устанавливается в 1.
  2. Обрабатывается формат, заключенный в скобки, таким образом, что все селекторы полей внутри группы выдают только повторения полей, соответствующие текущему счетчику повторений.
  3. Если никакого вывода не было произведено (т. е. больше нет повторений ни в одном из повторяющихся полей группы), обработка повторяющейся группы прекращается. В противном случае счетчик повторений увеличивается на 1 и шаги 2 и 3 повторяются.


Рис. 22

Рисунок 22

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

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

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


Использование простых команд форматирования

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


Помощь повторяющейся группы

В первом случае команда перехода на новую строку (/) выполнена япосле форматирования явсехя повторений поля 70, а во втором случае она выполнена после якаждогояповторения поля.

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


Рис. 23

Рисунок 23

Если нужно вывести литерал перед данными, продуцируемыми повторяющейся группой, можно использовать безусловный или условный литерал. Отметим, однако, что условный литерал должен ассоциироваться с селектором поля (повторяющаяся группа не является селектором поля); для этой цели удобно использовать мнимый селектор поля (см. рисунок 24).

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


Рис. 24

Рисунок 24

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

(v10,ref(val(v20),v10,(v20,v30)))

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

(v10(v20,v30))

Отметим, что использование повторяющейся группы обязательно, когда:

  1. вы используете повторяющееся поле, как аргумент функции L;
  2. первый аргумент функции REF ссылается на повторяющееся поле.

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

3.3.6.ESCAPE команда

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

Escape команда кодируется следующим образом:

! /еее/

где:
! - идентификатор escape последовательности;
/ - разделитель escape последовательности. Им может быть любой символ, не встречающийся в еее;
еее - escape последовательность, которая должна быть передана на принтер. (CDS/ISIS обычно передает ESC eee).

Например, на большинстве принтеров следующий формат приведет к печати поля 24 жирным шрифтом и поля 44 - итальянским (показано использование различных разделителей escape последовательностей):

!!Е!,v24,!;F;,v70+|; |,!{4},v44,![5]

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

Замечания для версии VAX и WANG PC: Если вы используете VAX или WANG PC версии, вы можете использовать escape команды в форматах вывода на экран для выделения полей специальным изображением, таким как подсвечивание, подчеркивание, обратная раскраска и т. д. Версия IBM PC не поддерживает escape команды для вывода на экран.

3.3.7. Ошибки формата.

Во время интерпретации и обработки формата CDS/ISIS выполняет синтаксический анализ формата для установления его соответствия правилам языка форматирования. Если CDS/ISIS обнаруживает ошибку, он прекращает форматирование и выдает сообщение *** Ошибка в формате n *** (где n - код ошибки). При выводе данных на экран или принтер, все данные, сформатированные при обнаружении ошибки, выводятся перед сообщением об ошибке. Этот вывод данных вместе с сообщением об ошибке поможет вам отыскать ошибку в формате.

Возможные коды ошибок

1. Обнаружен конец формата в конце обработки повторяющейся группы. Возможно пропущена закрывающая скобка повторяющейся группы.
2. Вложенность повторяющейся группы (т. е. одна повторяющаяся группа внутри другой повторяющейся группы).
8. Команда IF без THEN.
19. Непарная (
20. Непарная ). Также может быть неразрешенный операнд в выражении.
26. Два операнда одной операции различных типов (т. е. попытка сложить строковый операнд с числом).
28. Первый аргумент функции REF - нечисловое выражение.
51. Слишком много литералов и/или условных команд, ассоциированных с селектором поля.
53. IF команда не завершена с помощью FI.
54. Знак + вне контекста: CDS/ISIS ожидает повторяющийся литерал за знаком +.
55. Непарная FI.
56. Переполнение рабочей области: ваш формат производит слишком большую выдачу, с которой CDS/ISIS не может справиться. Рабочая область ограничена 8000 символами.
58. Один или более аргументов функции F - нечисловые выражения.
60. Нестроковая функция используется как команда (только строковые функции могут быть использованы как команды).
61. Аргумент функции А или Р - не селектор поля.
99. Неизвестная команда (т. е. арифметические ошибки в имени функции или команды); может также быть пропуск закрывающего разделителя литерала.
101. Переполнение стека (возможно из-за слишком длинного выражения).
102. Недогрузка стека (может быть из-за непарной ). Если формат верен, эта ошибка указывает на проблемы программного обеспечения CDS/ISIS).

3.4. Таблица выбора полей (ТВП)

The UNESCO micro CDS/ISIS Software

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

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

Таблицы ТВП создаются или модифицируются средствами программы ISISDEF используя редактор строки системы CDS/ISIS (см. раздел 14 "Строковый редактор"). Пример ТВП, выдаваемой на экран редактором строк, показан на рис. 25.

Рис. 25

Рис. 25

ТВП состоит из одной или более строк, каждая из которых определяется тремя параметрами :

  1. Идентификатор поля (колонка обозначенная ИП);
  2. Техника индексирования (ТИ);
  3. Формат выбора данных (использующий язык форматирования системы CDS/ISIS).

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

  1. Использует формат для извлечения соответствующих данных из записи;
  2. Применим указанный метод индексирования к данным, полученным таким образом,из указанного идентификатора поля.

Процесс, описанный выше, является чисто механическим и выполняется точно так как описан. Он не передает информацию от одного шага к другому, а только данные о его обработке, хотя все шаги объединены в достижении желаемого результата. Например, тот факт, что определенное поле было выбрано на шаге1 неизвестно шагу 2 : шаг 1 используется языком форматирования для формирования строки символов и передается на шаг 2. Шаг2 обрабатывает строку символов в соответствии с указанной техникой индексирования. Техника индексирования определяется как обработка строки символов, но не записей или полей. Это является следствием общего назначения ТВП, которая может использоватся для таких различных целей, как определение содержимого инвертированного файла или спецификации требований по сортировке при печати, которые могут выглядеть, с первого взгляда, полностью несвязанными.

Для большинства примеров, можно воспринимать ТВП, как средство, позволяющее вызвать элементы данных, требуемые для выполнения определенных задач.

3.4.1. Параметры ТВП

Три параметра строки ТВП описываются ниже в порядке их использования (при редактировании ТВП средствами редактора строки, они вводятся в определенном порядке).

3.4.1.1. Формат выбора данных

Формат выбора данных кодируется используя средства языка форматирования описанного в разделе 8.3.5 "Формат печати". Так как данные, создаваемые этим форматом, не являются средством вывода на экран, а обрабатываются впоследствии, CDS/ISIS не ограничивает ширину строки каким-то определенным значением и следовательно данные никогда не будут разорваны на несколько строк. Понятие строк, однако, может быть релевантно определенной технике индексирования, выполняемой процедурой вывода по формату. В этом случае CDS/ISIS гарантирует, что строки будут создаваться только в ответ на команды новой строки, которые указываются в формате.

В связи с этим, большинство команд форматирования, такие как "С", смещение или escape - последовательность, будут обычно не связаны в формате выбора данных и могут в некоторых случаях выдывать непредсказуемые результаты. Поэтому их следует избегать, если нет особой необходимости.

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

Заметим также, что требование перевода в заглавные буквы, может вызвать воздействие других дальнейших процессов, применяемых для выбора данных посредством ТВП. Как правило, не требуйте перевод в заглавные буквы (используйте режимы mpl, mhl, mdl чаще, чем mpu mhu mdu) до тех пор, пока вы не будете иметь каких-либо нежелательных эффектов. CDS/ISIS будет автоматически использовать перевод на режим заглавных букв при необходимости. Например, все элементы, сгенерированные посредством ТВП, будут переведены в заглавные буквы перед сохранением в словаре поисковых терминов, даже если в ТВП они были введены прописными буквами.

3.4.1.2. Метод индексирования

Техника индексирования указывает определенную обработку, которая будет выполнена с данными, выбранными по формату, в порядке указания элементов при создании ТВП. Существует пять методов индексирования. Каждому из них присваивается числовой код от 0 до 4, как объясняется ниже.

3.4.1.2.1. метод индексирования 0.

Создает элемент из каждой строки, извлеченной в соответствии с форматом. Данная техника обычно используется для индексирования целых полей или подполей. Заметим, что CDS/ISIS будет создавать элементы из строк, но не из полей. Это является следствием того, что CDS/ISIS воспринимает вывод по формату как строку символов, где поля не длиннее идентификатора. Поэтому, пользователь должен быть особо внимательным при вводе данных в формат, особенно при индексировании повторяющихся полей и/или более, чем одного поля. Другими словами, при использовании данной техники формат выбора данных должен выводить одну строку для каждого индексируемого элемента.

3.4.1.2.2. метод индексирования 1.

Создает элемент из каждого подполя или строки, выбранных по формату. Так как CDS/ISIS будет искать в выходном формате коды разделителей полей, для обеспечения правильной работы этой техники в формате должен быть использован проверочный режим (если режим не задан, то он используется по умолчанию), так как только в этом режиме сохраняются коды разделителей подполей при печати (необходимо помнить, что режимы заголовка и данных заменяют разделители подполей символами пунктуации). Заметим, что техника индексирования 1 в действительности сокращает использование техники индексирования 0. Пример использования этой техники приведен на рис. 26, который также показывает эффект использования режима данных.

3.4.1.2.3. метод индексирования 2.

Создает элемент из каждого термина или фразы, заключенные в угловые скобки < > . Любой текст вне скобок не индексируется. Обратите внимание, что данный метод требует проверочного режима, т. к. другие режимы удаляют скобки.

Пример:

Метод индексирования 2. Пример

Mission report descraibing a in at East African

даст следующие элементы при использовании данной техники:

< university course >
< documentation training >
< library school >

3.4.1.2.4. метод индексирования 3.

Выполняет те же операции, что и техника индексирования 2, за исключением того, что термины или фразы ограничиваются двумя косыми чертами (/.../). Например: mission report describing a / university course / in / document training / at an East African
/ library school / даст следующие элементы при использовании данной техники индексирования:

/ university course /
/ documentation training /
/ library school /

3.4.1.2.5. метод индексирования 4.

Создает элемент из каждого слова в тексте, выбираемого по формату. Словом является любая последовательность алфавитных символов.

При использовании этой техники, можно предотвратить индексирование некоторых незначащих слов, определив их в специальном файле, называемом файлом стоп-слов (см. раздел 17.3 "Создание файла стоп-слов", где описываются детали создания файла стоп-слов).

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

3.4.1.3. Идентификатор поля

Идентификатор поля есть число (в пределах 1 - 32767), которое назначается каждому элементу, создаваемому на шаге индексирования. Значение идентификатора поля зависит от назначения использования ТВП, что объяснено ниже.

ТВП для инвертированного файла:
идентификатор поля предназначен для использования при поиске.

ТВП для сортировки:
идентификатор поля - это метка поля, которая используется при применении формата заголовка (см. раздел 8.3.4 "Формат заголовка").

ТВП для переформатирования:
идентификатор поля - это ISO метка поля, назначаемая для экс- порта поля (см. раздел 12.2.4.1 "Реорганизация ТВП") или CDS/ISIS метка, назначаемая для импорта поля.

Можно найти дополнительную информацию в ТВП, используемую для специального назначения см. раздел 8.5 "Системные рабочие листы для сортировки xYSRT", раздел 12.2 "Рабочий лист экспорта xYISI" и раздел 12.3 "Рабочий лист импорта xYISO".

3.4.2.ТВП для инвертированного файла.

Как указывалось раньше, одна ТВП для кажой базы данных определяет содержимое соответствующего инвертированного файла. Элементы данных, создаваемые по этой ТВП, однажды запомненные в инвертированном файле, составляют словарь поисковых терминов для данной базы данных. Одного словаря, однако, недостаточно, чтобы обеспечить механизм поиска, т. е. каждый термин должен быть связан со всеми записями базы данных, в которых он имеется. Таким образом, для каждого поискового термина в словаре CDS/ISIS определяет список "регистраций", обеспечивающий такую связь. Каждый термин имеет столько регистраций, сколько раз он встречается в базе данных.

Более того, чтобы обеспечить такие сложные средства языка поиска, как операторы близости, каждая "регистрация" содержит не только МFN записи, но и дополнительную информацию о расположении термина в записи, из которой он был выбран.

Регистрация имеет четыре компоненты:

  1. MFN записи, содержащей данный термин; CDS/ISIS присваивает эту компоненту автоматически.
  2. Идентификатор поля, используемый при поиске, когда специфицируется квалификатор поля. Эта компонента указывается в ТВП. Обратите внимание, что один и тот же идентификатор поля может быть назначен различным полям, в то время как при поиске они будут представлены как одно поле.
  3. Номер назначения, необходимый для применения операторов поиска на уровне поля (F) и операторов близости в повторяющихся полях. Если использование таких операторов является предназначением данной базы данных (которое возникает в случае использования техники индексирования 4), необходимо присвоить номер значения посредством формата, разделив знаком % каждое значение повторяющегося поля. Это можно легко сделать, используя повторяющийся суффикс-литерал, например v10 /%/. CDS/ISIS устанавливает номер значения равным 1 для каждого обработанного элемента ТВП и увеличивает его на 1 каждый раз, когда встречается знак % в тексте, выдаваемому по формату.
  4. Последовательный номер термина, требуемый для отработки близости поисковых терминов. Он присваивается CDS/ISIS следующим образом:
     
    устанавливается 1 для каждого обрабатываемого элемента ТВП и каждый раз номер значения изменяется, т. е. он увеличивается на 1 для каждого элемента, созданного по указанной технике индексирования. Допустим, для примера, что база данных содержит "резюме" в повторяющемся поле 68, содержащем на каждое значение один параграф, которое должно быть индексировано с использованием техники 4. Указав формат выбора данных mdl, v68/%/, словам из "резюме" будут присвоены последовательные номера, начиная с 1 для каждого параграфа (тогда как, если формат выбора даных описан как mdl, v68, слова будут пронумерованы последовательно по всему "резюме", т. е. первое слово второго параграфа будет иметь последовательный номер, который на 1 больше, чем последнее слово в первом параграфе). В некоторых случаях, определенные термины словаря, генерируемые ТВП для инвертированного файла могут оказаться бессмысленными или двусмысленными для эффективного поиска.

Например, термин IT может быть либо местоимением (в таком случае он будет менее используемым при поиске), либо кодом страны ITALY. Он может также соответствовать цифровым терминам, таким как 34, значение которого может быть непонятным при его выборе из контекста.

Если поле, создаваемое такими терминами, индексируется с помощью техники 0, можно добавить смысл, используя префикс-литерал для указания метки, которая будет затем идентифицировать определенное использование термина. Например, когда индексируется поле, содержащее код страны, т. е. v10, можно использовать следующий формат: "КС = " v10 (правильнее чем v10), потому что код страны IT будет инвертирован как КС = IT (правильнее чем только IT ). Аналогично, если поле 20 содержит номер проекта, можно использовать формат "Проект", v20, для того чтобы потом можно осуществлять поиск Проект34 ( вернее, чем только 34).

На рис. 27 показана обработка ТВП данной на рис. 25, применяемой к записи, показанной на рис. 6. Рис. 28 показывает полную "регистрацию", назначаемую каждому элементу перед сохранением в инвертированном файле. На рис. 29 показаны элементы и соответствующие "регистрации", которые будут инвертироваться при использовании файла стоп-слов ( см. раздел 17.3 "Создание файла стоп-слов"). Необходимо отметить, что хотя стоп-слова не выводятся на экран, они учитываются в числовой последовательности терминов.

3.4.2.1. Проверка ТВП для инвертированного файла.

В этой главе описывается метод проверки ТВП, которая определяет содержимое инвертированного файла. Здесь прослеживаются все шаги, начиная с первого момента создания ТВП. Кроме того, дается возможность лучше понять функционирование ТВП. По мере приобретения опыта, появится возможность пропускать большинство этих шагов. Однако, желательно делать некоторые предварительные проверки перед полным инвертированием базы данных, особенно, если эта база большая.
1. Введите несколько записей в базу данных. Они должны быть подобраны таким образом, чтобы отражать все возможные варианты действительного содержания базы данных. Если возможно, используйте реальные данные. В этом случае появится возможность проверить существующий рабочий лист и посмотреть, достаточно ли правильно он создан для использования различных типов записей.
2. Имея под рукой распечатку ТВП, можно проверить каждый формат выбора данных. Используя средства программы ISISRET, выполните следующие действия:
а) выберите опцию F и введите формат выбора данных ТВП;
в) выберите опцию В и посмотрите полученный вывод по формату;
с) мысленно примените используемую технику индексирования к полученному выводу на экран и уточните предполагаемый результат, в частности проверка сводится к следующему:

* если вы применяете технику индексирования 0 к повторяющемуся полю, находится ли каждое значение поля на отдельной строке?
* если вы применяете технику 4 к повторяющемуся полю, указан ли знак % определяющий каждое значение поля (если нет, вы будете не в состоянии использовать (F) оператор поиска, потому что CDS/ISIS будет назначать один и тот же номер значения каждому слову и обратится ко всем значениям, как к единому полю);
* если вы применяете технику 2, ограничен ли каждый термин на экране угловыми скобками? (если нет, убедитесь, что ваш формат не потребует никакого другого режима вывода на печать, кроме проверочного режима, т. к. угловые скобки выводятся на экран только в проверочном режиме);
* если вы применяете технику 1, указаны ли на экране разделители подполей? (если нет, убедитесь, что использован проверочный режим);

d) если вы предполагаете какие-то ошибки в формате, повторите шаги (а) - (с), сделав необходимые изменения в формате;
е) повторяЙте шаги (а) - (d) для каждой строки ТВП до тех пор, пока полностью не убедитесь в том, что форматы являются правильными. Если вы изменили какой-то из форматов, проверьте все изменения, которые вы сделали или лучше распечатайте содержимое экрана на бумагу.

3. Если необходимо, выберите программу ISISDEF и модифицируйте форматы в существующей ТВП согласно замечаний, полученных на шаге 2 (е).
4. Затем выберите программу ISISINV, укажите опцию G из меню xXG1 и установите ограничения МFN для инвертирования только нескольких записей.
5. Когда связи файлов созданы, выйдите из программы ISIS и напечатайте содержимое файлов хххххх. LN1 xxxxxx. LN2 (где хххххх - имя базы данных). Эти файлы содержат все поисковые термины, которые были созданы для каждой записи: являются ли они правильными? Если нет, значит существует какая-то ошибка в вашей TBП. Повторите шаги 1 - 5 до получения необходимого результата.

Как упоминалось выше, по мере совершенствования знаний языка форматирования, вы можете пропустить шаги 4 и 5 перед попыткой полного инвертирования новой базы данных.

3.4.2.2. Модификация ТВП для инвертированного файла

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

яизменить технику индексированияя: сгенерированные элементы будут полностью отличаться, если две различные техники индексирования применяются к одинаковым данным;

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

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

Рис. 27

Рис. 27

Рис. 28

Рис. 28

Рис. 29

Рис. 29

3.5. Ввод данных

The UNESCO micro CDS/ISIS Software

Рис. 30

Рис. 30

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

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

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

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

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

3.5.1. Создание новых записей.

Создание новой записи осуществляется выбором опции N в меню xXE1 (программа ISISENT). CDS/ISIS выводит на экран отобранный рабочий лист, куда необходимо затем ввести данные и устанавливает курсор на начало первого поля на экране.

Нижняя строка указывает номер записи файла документов (MFN), которая создается, и наличие следующих доступных страниц (см. рис. 30).

Для ввода поля необходимо просто печатать соответствующие данные и заканчивать ввод, используя клавишу (CR). CDS/ISIS затем установит курсор на начало следующего поля. Ввод поля контролируется редактором поля системы CDS/ISIS (см. раздел 13 "Редактор поля"), с которым необходимо ознакомиться перед началом создания и/или модификации записей в базе данных. Для того, чтобы оставить поле пустым, нажмите (CR).

Когда рабочий лист выводится на экран, одно или более полей могут уже содержать данные, которые были определены администратором базы данных или вами, используя опцию "D" в меню xXE1 (см. раздел 6.1 "D - определение значений по умолчанию").

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

CR - переход к следующему полю;
TAB - переход к предыдущему полю. Можно использовать эту клавишу для ввода данных в поле, которое случайно осталось пустым или несформированным.
F2 - удаление выведенного на экран значения по умолчанию (на пустое поле не оказывает воздействия);
F1 - вывод на экран HELP - сообщения, определенного для поля во время создания рабочего листа. Если HELP - сообщение не было создано для поля, то CDS/ISIS выведет на экран тип поля (цифровое, алфавитное и др.)

Когда все поля сформированы, CDS/ISIS автоматически переходит в режим редактирования записи и пользователь получает возможность модифицировать только что созданные записи, если в этом есть необходимость. Редактор записей описывается ниже.

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

3.5.2. Редактирование записей

Как только запись выбрана для редактирования (опция "F" или "R" в меню xXE1 ), CDS/ISIS выводит запись на экран, используя текущий рабочий лист и предлагает указать действия, которые необходимо выполнить. Редактирование записи можно также осуществить после формирования каждой записи рабочего листа.

Следующая подсказка появляется в нижней части экрана (заметим, что подсказка 103/104 выдается при использовании рабочего листа по вводу данных, в то время как подсказка 105 - при использовании системного рабочего листа).

Подсказка 103/104 :
CR - следующая страница;
В - предыдущая страница;
М - модифицировать;
Х - выход;
С - отменить;
R - восстановление;
Т - закончить;
D - удалить;
N - новая запись.

Подсказка 105:
CR -следующая страница С - отменить
М - модификцировать,
Х - выход
Значение каждой функции объясняется ниже:
CR - листание вперед, т. е. вывод на экран следующей страницы рабочего листа (заметим, что если это последняя страница рабочего листа, то CR эквивалентно Х).
В - листание назад, т. е. вывод на экран предыдущей страницы рабочего листа.
С - оставляет запись неизмененной (все изменения, которые могли быть сделаны в записи - игнорируются).
D - удаление записи.
М - редактирование страницы.
N - запоминает запись в файле документов (аналогично Х) и затем создает новую запись. Эта опция позволяет также создавать записи последовательно, без возвращения в меню ввода данных между записями. Она также позволяет переключаться из режима редактирования записей в режим создания записей.
R - восстанавливает экран (это может быть необходимо, если ваш терминал является системной консолью, в этом случае операционная система может выводить на экран сообщения, частично заполняющие рабочий лист).
Т - оставляет запись неизмененной и прерывает действие операторов исправления. Если никаких исправлений не было сделано, то эта опция действует также как и "С".
Х - запоминает запись в файле документов.

Опции "С", "X" и "D" прекращают обработку записи так как это описано выше и передают управление меню xXE1 (если вы редактировали единственную запись), или продолжают процесс исправления для следующей записи, если она есть (если вы находились в режиме редактирования некоторой последовательности записей).

Опция "Т" является эквивалентной опции "С" относительно текущей записи, кроме того дополнительно прерывает последовательность и выводит на экран меню по вводу данных.

Если выбирается опция "М", CDS/ISIS переходит в режим редактирования и устанавливает курсор на первом поле рабочего листа выведенного на экран. Затем можно добавить данные в поле и/или модифицировать или удалить их содержимое (см. раздел "Редактор поля"). Когда курсор устанавливается на данном поле, можно использовать следующие функциональные клавиши для выполнения указанных действий:
CR - переход к следующему полю;
TAB - переход к предыдущему полю;
F1 - вывод на экран HELP - сообщения, определенного для поля при создании рабочего листа.
HELP - сообщение обычно содержит специальное руководство для правильного ввода поля. Если специальное HELP - сообщение не определено для поля, CDS/ISIS выведет на экран тип поля (цифровое, алфавитное и т. д.)
F2 - удаляет содержимое поля.

3.5.3. Удаление записи.

Можно удалить запись, ответив "D" на подсказку 103/104 (см. выше). Заметим однако, что запись удаляется логически, но не физически. Другими словами, CDS/ISIS только помечает запись для ее дальнейшего физического удаления, тем не менее, такую запись нельзя будет в дальнейшем найти или выдать на дисплей. Записи, помеченные для удаления, физически удаляются (т. е. полностью разрушаются) только при реорганизации файла документов. До наступления этого момента, существует возможность восстановить логически удаленную запись, т. е. удалить пометку на удаление, что объяснено ниже.

Если выбирается удаленная запись на редактирование (ипользуя опции "Е" или "R" меню хХЕ1, CDS/ISIS выдаст информацию о наличии этого состояния следующей подсказкой:
Подсказка 26 : Запись удалена. Введите один из следующих кодов: R - восстановить, N - создать новую запись, CR - оставить удаленной.

Ответ может быть следующий :
CR - оставить запись удаленной;
N- заменить удаленную запись на новую.
В данном случае CDS/ISIS будет вести себя так, как будто затребовано создание новой записи (см. раздел 3.5.1 "Создание новых записей"), эта новая запись будет иметь тот же MFN, что и удаленная запись, которая заменяется;

R - повторно активизировать запись.
В этом случае CDS/ISIS уничтожит метку удаления и выдаст на экран запись в режиме редактирования (см. раздел 3.5.2 "Редактирование записи"). Все данные, которые находились в записи в момент ее удаления, появятся на экране в рабочем листе. Заметим, что это имеет место только для логически удаленных записей. Если запись является физически удаленной, то ответ "R" эквивалентен ответу "N".

3.5.4. Руководство для оператора по вводу данных.

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

3.5.4.1. Ввод поля.

Как правило, печатайте данные, как будто используете пишущую машинку. Помните, однако, что вы используете редактор поля CDS/ISIS, который предлагает специальные возможности для корректироваки данных, задействуя функциональные клавиши. Все они полностью описываются в разделе 13 "Редактор поля".

Если пространство, выделенное на экране для ввода данных, больше, чем одна строка, печатайте CR или пробелы в конце каждой строки, CDS/ISIS будет автоматически переходить на следующую строку. Несмотря на то, что слова не будут разделяться по правилам грамматики, это не существенно, когда в дальнейшем поле будет выводиться на экран или на принтер, CDS/ISIS обеспечит вывод текста таким образом, что разделяться будут только строки.

3.5.4.2. Ограничители полей.

При вводе полей, содержащих подполя, необходимо указать разделитель подполя впереди каждого значения подполя. Разделитель подполя - это двухсимольный код предшествующий и указывающий переменную длину подполя внутри поля. Он состоит из символа "^" и следующего за ним буквенного или цифрового символа, например ^а. Если код подполя является алфавитным, его можно ввести на верхнем или на нижнем регистре. CDS/ISIS не воспринимает разницы между ^a или ^A. Поэтому, можно использовать наиболее удобную форму.

Не оставляйте пробелов и не вставляйте знаки препинания ни перед, ни после разделителя подполя, если нет специального указания сделать это.

Пример поля с тремя подполями :

^aUNESCO^bParis^c1985

Введение пробелов или знаков препинания может вызвать неправильный вывод поля на печать.

3.5.4.3. Повторяющиеся поля

Если вводимое поле является повторяющимся и необходимо ввести более одного значения, введите все значения один за другим, разделив каждое значение знаком процента (%). Нет необходимости вводить знак % после последнего повторителя поля. Знак % является зарезервированным символом системы. Когда поле вызывается на редактирование, CDS/ISIS будет автоматически устанавливать знак % для каждого значения повторяющегося поля, где это требуется. Можно, если необходимо, вставить новое значение между существующими значениями или использовать функции редактора поля "вырезание" или "наклеивание" для изменения порядка значений.

Нельзя вводить пробелы перед и после знака %. Если сделать это, пробелы будут восприняты как часть поля.
Пример поля "автор", содержащего два имени:

BROWN.J.%Jonson.Archibald

3.5.4.4. Поля типа шаблон

Когда CDS/ISIS устанавливает курсор на поле типа шаблон, то на экран выдается шаблон поля (при условии, что поле не имеет значения по умолчанию) для указания того, что можно вводить в каждую позицию поля. Сообщение:
"Введите поле согласно указанному шаблону" также появится в нижней части экрана. Шаблон - это посимвольное описание содержимого поля, который может быть следующим:

Х - позиция может содержать любой алфавитно-цифровой символ;

А - позиция должна содержать алфавитный символ;

9 - позиция должна содержать цифру;

другой символ - позиция должна содержать указанный символ.

Пример шаблона с некоторыми значениями:

Пример шаблона с некоторыми значениями

3.5.4.5. Проверка правильности полей

CDS/ISIS проверяет правильность каждого вводимого поля на соответствие типу поля, определенному в ТОП базы данных.
Если вводимый символ не соответствует заданному типу поля, CDS/ISIS выдает сообщение об ошибке и повторно устанавливает курсор на начало поля. Необходимо сделать исправления перед повторным вводом поля.

3.5.5. Обновление инвертированного файла

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

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

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

После нескольких экспериментов с данной базой данных, можно установить примерное время, требуемое для обновления записи и, если это время вас удовлетворяет, рекомендуется выполнять обновление инвертированного файла после каждого сеанса ввода данных (или при работе программы, как объясняется ниже). Исходя из этих соображений, можно отложить обновление инвертированного файла на более удобное время (на конец дня, недели и т. д.). Для выполнения обновления инвертированного файла вызывается программа ISISINV через главное меню системы xXISI (см. раздел 5.1 "Меню xXISI"), затем опция "U" в меню xXG1 (см. раздел 9.1 "U - обновление инвертированного файла").

Заметим также, что каждый раз при выходе из программы ISIS и смены базы данных, CDS/ISIS проверит сначала, были ли сделаны какие-то изменения в текущей базе данных. Если да, система выведет на экран общее количество сделанных изменений (укажет, сколько записей было добавлено, модифицировано или удалено), затем предложит обновить инвертированный файл, выдав на экран сообщение :

Подсказка 267 : Хотите обновить инвертированный файл
(Y/N)?

Если последует ответ "Y", CDS/ISIS начнет обновление инвертированного файла (любой другой ответ отложит обновление).
Во время обновления инвертированного файла, CDS/ISIS может обнаружить какие-то отклонения либо в файле документов, либо в инвертированном файле. Обычно это не происходит, т. к. инвертированный файл является полным отражением файла документов. Но если отклонения все же обнаружены, (они будут отражены на экране соответствующим сообщением) необходимо будет сделать требуемые исправления как только появится возможность, т. к. при наличии отклонений файл документов и инвертированный файл будут несинхронизированны.

Следующие сообщения указывают на наличие ненормальных условий :

391 Внимание! Ссылка не найдена. Нельзя удалить.

392 Внимание! Повторная связь.

393 Системная ошибка. В файле документов ошибка несоответствия. Восстановите последнее значение и перегенерируйте инвертированный файл.

Объяснение и возможные причины приведены ниже.

Сообщение 391. Внимание! Ссылка не найдена. Нельзя удалить. Это сообщение касается удаленных или модифицированных записей. CDS/ISIS пытается удалить из инвертированного файла ссылки, соответствующие удаленной записи или старую версию модифицированной записи (т. е. версию существовавшую до сделанной модификации ), но не может найти одну из ссылок, которую нужно удалить. Ссылка, вызывающая это сообщение, будет также выведена на дисплей в таком виде:

MFN/идентификатор поля/значение/последовательный номер

См. раздел 3.4.2. "ТВП для инвертированого файла". Это сообщение может быть обусловлено следующим:

* изменение ТВП для инвертированного файла без переинвертирования базы данных;
* восстановление файла документов после инвертированного файла;
* аварийное прерывание процесса обновления инвертированного файла (отключение электроэнергии).

Сообщение 392. Внимание! Повторная ссылка. Оно касается новых или модифицированных записей. CDS/ISIS пытается добавить в инвертированный файл ссылки, соответствующие новой записи или модифицированной версии записи, но находит, что одна из ссылок уже существует (обычно потому, что создаваемые ссылки должны быть уникальными). Ссылка, вызывающая это сообщение, будет выведена на экран, как и предыдущая. Это сообщение может быть обусловлено следующим :
* использование одинакового идентификатора поля более, чем для одной строки ТВП, особенно если используется техника индексирования 4;
* аварийное прерывание процесса обновления инвертированного файла (отключение электроэнергии).

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

Проблемы, связанные с этими сообщениями, обычно разрешаются путем переинвертирования базы данных (после корректировки ТВП, если необходимо).

3.6. Поисковый язык CDS/ISIS

The UNESCO micro CDS/ISIS Software

3.6.1.Введение

Поисковый язык СDS/ISIS базируется на булевой алгебре, которая обеспечивает удобный способ выражения логических операций между классами. Каждый поисковый термин, ассоциируемый с данной записью, фактически может рассматриваться как представитель класса всех записей, ассоциируемых с данным термином. Так, выражая логические операции между поисковыми терминами, вы можете точно определить класс записей, которые должны быть найдены в ответ на ваш запрос.

В следущих параграфах примеры приведены не для того, чтобы показать, как формировать специфические запросы, они просто иллюстрируют возможности поискового языка CDS/ISIS. Однако, поисковый язык сам по себе не даст вам возможности проводить поиск в конкретной базе данных. Ключ к полному и эффективеому поиску - это знание всех поисковых терминов, употребляемых в данной БД. Следовательно, важно, чтобы вы ознакомились со словарем поисковых терминов, доступных для БД, в которой вы хотите проводить поиск и с правилами индексирования записей в этой БД. Заметьте, что опция "Т" в меню ISISRET, позволит вам не только вывести словарь на экран компьютера, но и строить поисковый запрос путем выбора терминов непосредственно на экране. (см. раздел 7.1 "Т- вывод на экран терминов доступа").

Наиболее эффективный путь выполнения поиска в CDS/ISIS -через инвертированный файл (и основная причина поддерживать инвертированный файл - обеспечить быстрый поиск). Однако, вы можете это сделать только в том случае, если ваши поисковые запросы укладываются в рамки словаря поисковых терминов для данной БД, т. е. если они были выбраны, когда определялось содержание инвертированного файла. При этом, как бы хорошо ни была продумана ваша БД, все равно будут случаи, когда вы не сможете сформировать поисковый запрос через инвертированный файл. Для этих случаев СDS/ISIS обеспечивает альтернативный поисковый метод, называемый свободным поиском по тексту, который позволяет вам удовлетворить любой поисковый запрос независимо от содержания инвертированного файла. Поскольку этот второй метод менее эффективен, он обычно используется вместе с поиском по инвертированному файлу для улучшения поисковой стратегии, но может, если необходимо, использоваться независимо. Если вы обнаружите, что вам довольно часто приходится формулировать длинные запросы свободного поиска по тексту,то, возможно, вам стоит рассмотреть вопрос о переопределении инвертированного файла. Следущие несколько параграфов описывают метод поиска по инвертированному файлу. Свободный поиск по тексту описан в разделе 3.6.7. "Свободный поиск по тексту".

3.6.2.Поисковые выражения. Типы поисковых терминов

При формулировании вашего поискового выражения вы можете использовать три типа терминов: точные термины, термины, усеченные справа, ANY-термины. Все они описаны ниже.

3.6.2.1. Точные термины

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

Когда вы используете точный поисковый термин, вы должны его определить точно так, как он известен CDS/ISIS. Рекомендуется иметь список поисковых терминов под рукой во время формулировки запроса (или использовать опцию Т программы ISISRET, описанную в разделе 7.1. "Т- вывод на экран терминов доступа"), для вывода на экран поисковых терминов.

Даже небольшие изменения в написании термина заставят CDS/ISIS отвергнуть его.

Так, например, если CDS/ISIS известен термин COLOR (американское написание), вы не можете использовать этот термин в английском написании COLOUR, т. к. он будет отвергнут.

Важно помнить, что, если поисковый термин содержит скобки или любой из знаков поисковых операций (* + (G) (F) . $ ^) или начинается со знака #, вы должны заключить его в двойные кавычки с целью избежать возможной неоднозначности. Так, если ваш поисковый термин:

GERMANY (FEDERAL REPUBLIC)

вы должны ввести его в следующем виде

"GERMANY (FEDERAL REPUBLIC)"

иначе CDS/ISIS выдаст сообщение о синтаксической ошибке.

3.6.2.2. Поисковые термины, усеченные справа

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

Усечение справа обозначается знаком доллара $, который ставится сразу после последнего символа основы. Предположим, например, что ваш список терминов содержит следующий набор терминов:

file organization
film industry
film libraries
film-maker
film-making
film-making trainig
filmstrip
filtration
Тогда FILM $ является эквивалентом списку:
film
film industry
film libraries
film-maker
film-making
filmstip,
а FILM - $ является эквивалентом списку:
film-maker
film-making
film-making training

Как и для точных поисковых терминов, если ваша основа содержит скобки, или любой знак поискового оператора или начинается со знака #, вы должны заключить ее в двойные кавычки ("). "Например, "FILM $" является эквивалентом:

FILM
FILM INDUSTRY
FILM LIBRARIES
но FILM $ (без кавычек) выдаст сообщение об ошибке.

3.6.2.3. ANY термины

ANY термины - это коллективный термин ранее определенного набора поисковых терминов. Когда вы используете ANY термин в вашей поисковой формулировке, CDS/ISIS автоматически выполнит логическое OR между всеми терминами, ассоциируемыми с этим ANY термином.

ANY термин состоит из слова ANY, за которым следует уникальный идентификатор, обычно мнемонический, назначенный ассоциируемому набору терминов. Например, термин ANY BENELUX COUNTRY может быть использован для поиска записей, заиндексированных названием любой страны группы Benelux (Бельгия, Hидерланды, Люксембург). Прежде чем ANY- термин может быть использован в поисковой формулировке, его значение должно быть определено путем определения множества ассоциируемых с ним терминов (см. раздел 17.4. "Создание ANY файла"). Заметим, что не все базы данных должны пользоваться этим средством. Поэтому прежде чем пытаться использовать ANY термин, вы должны убедиться, что он доступен БД, в которой вы проводите поиск и, если да, то, что он действительно определен.

3.6.3. Поисковые термины

Вы можете объединять два или более поисковых терминов в поисковые выражения с помощью поисковых операторов, обозначающих отношения, которые вы хотите установить между терминами. Три основных оператора OR, AND, NOT схематически представлены на рис. 31, где каждый прямоугольник представляет записи, заиндексированные указанным термином, а заштрихованное пространство представляет множество записей, которые получатся в результате применения различных операторов.

3.6.3.1. Логическое OR (включающее)

Логическое OR - это оператор объединения классов. Результатом логического OR между двумя классами является класс, полученный путем слияния этих двух классов, без дублирования совпадающих элементов.

Так, если А и В - два термина, представляющие два класса документов, заиндексированных терминами А и В соответственно, логическим OR между этими двумя классами является класс документов, заиндексированных термином А, термином В или обоими терминами.

Логическое OR, следовательно, используется для расширения поиска и будет, в общем случае, увеличивать количество найденных записей. Символ, используемый для обозначения логической операции OR - знак "+".
Так, например, для того чтобы найти документы о странах Бенелюкс, можно использовать логический оператор OR следующим образом:

Бельгия + Нидерланды + Люксембург

Заметьте, что порядок, в котором даны три страны безразличен.

Рис. 31: Основные поисковые операторы

Рис. 31: Основные поисковые операторы

3.6.3.2. Логическое AND

Логическое AND - оператор пересечения классов. Результатом логического AND между двумя классами является класс, содержащий только элементы, совпадающие для этих классов.

Так, если А и В - два термина, представлющие два класса документов, заиндексированных терминами А и В соответственно, логическим AND между этими двумя классами является класс документов, заиндексированных одновременно обоими терминами А и В.

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

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

on-line systems * information retrieval

Отметьте, что порядок, в котором приведены термины, безразличен.
Результатом логического AND может быть пустой класс, т. е. класс, не содержащий элементов. В этом случае при поиске не находится ни одной записи. В приведенном выше примере будет получен пустой класс, если ни одна запись в БД не содержит одновременно оба термина: on-line systems и information retrieval.

3.6.3.3. Поисковые операторы уровня близости в поле

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

Операторами уровня поля и близости являются:

(G) - то же поле (все повторения повторяющегося поля рассматриваются как одно поле), например:

water / (G) / soil (на этот запрос) будут найдены все записи, в которых и вода, и соль встречаются в одном поле.

(F) - то же поле или повторение в повторяющемся поле, например:

water / (F) / soil будут найдены все записи, в которых и water, и soil встречаются в одном поле или, если поле повторяющееся, то в одном повторении повторяющегося поля ((G) и (F) эквивалентны для неповторяющихся полей).

    . как (F), но с дополнительным ограничением: между терминами должно быть не более n слов минус 1, где n - количество точек. Например: А . В - между терминами недолжно быть слов; А .. В - не более одного слова между А и В; А ... В - не более двух слов между А и В;
$ как (F), но с дополнительным ограничением: между терминами должно быть точно n слов минус 1, где n - количество знаков $.
Например:
А $ В между А и В не должно быть слов.
А $$ В точно одно слово должно быть между А и В.
А $$$ В точно два слова должно быть между А и В.
Отметим, что непосредственно до и после оператора должен быть пробел.

3.6.3.4. Логическое NOT

Логическое NOT - оператор исключения класса. Результатом логического NOТ между двумя классами является класс, содержащий все элементы первого класса, которые не совпадают с элементами второго класса.

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

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

Например, поисковый запрос может относиться к документам о группах, находящихся в невыгодном положении, исключая при этом ссылки на детей, находящихся в невыгодном положении (disadvanbaged children). Можно сформировать запрос следующим образом:

disadvantaged group ^ disadvantaged children

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

Отметим далее, что операция NOT, в отличие от логических операций AND и OR, не дает тех же результатов при инверсии операндов. Так, А ^ В не то же самое, что В ^ А (за исключением частного случая, когда А и В представляют один и тот же класс; в этом случае результатом этой логической операции будет пустой класс).

3.6.4. Синтаксис поисковых выражений

Вы можете формировать сложные поисковые выражения путем комбинирования двух или более поисковых терминов с помощью поисковых операторов, описанных выше.

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

Приоритет операторов

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

А + В * С

CDS/ISIS сначала вычислит В * С, а затем логическое OR между А и (В * С). В то время как при вычислении

(А + В) * С

она сначала вычислит А + В и затем логическое AND между (А + В) и С. Вы можете вкладывать скобки, если нужно, как в следующем примере:

((А + В) * С + (D + E) + F) ^ G

При формировании поисковых выражений вы должны придерживаться простых синтаксических правил:
1) никакие два логические оператора не могут располагаться рядом, исключая повторения знаков "." и "$" (которые не могут,однако, смешиваться);
2) используемые скобки должны быть сбалансированы, т. е. количество открыващихся скобок должно быть равно количеству закрывающихся скобок.

3.6.5. Квалификатор поля

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

поисковый термин/(t1, t2, t3, ...)

где t1, t2, t3 - идентификаторы полей, в которых вы хотите искать ваши термины.

Идентификатор поля - это, обычно, метка поля. Однако могут быть исключения. См. раздел 3.4.2. "ТВП для инвертированного файла" для уточнения понятия "идентификатор поля".

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

Простым применением оператора AND можно найти записи, содержащие термины INTERNATIONAL, EXPERT и MEETING:

internanional * expert * meeting

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

international (F) expert (F) meeting

количество используемых записей может быть сокращено, но все же вы не можете быть совершенно уверены в результате, т. к. термины могут появиться и в аннотации, и в заголовке, и в издательстве и т.д.
Однако, если вы добавите квалификатор /(62)

international (F) expert (F) meeting / (62),

то будут найдены только те записи, которые имеют все эти термины в одном повторении поля 62 (отметьте, что в данном случае можно применять квалификатор только к одному термину).
Если оператором является поисковый термин, усеченный справа, или ANY- термин, CDS/ISIS будет применять квалификатор ко всем членам соответствующего множества.

Так, например,

ANY Benelux country / (64)

эквивалентно

Belgium / (64) + Netherlands / (64) + Luxembourg / (64)

3.6.6. Развитие поисковой стратегии

Основным блоком при построении поисковой формулировки является поисковое выражение, как определено выше. Каждый раз, когда вы выбираете опцию S меню xXGEN программы ISISRET, вы фактически создаете новое поисковое выражение. В ответ на поисковое выражение CDS/ISIS:

1) назначает уникальный номер, называемый номером запроса к поисковому выражению, которое вы ввели (если оно не содержит синтаксические ошибки);
2) выводит на экран количество регистраций для каждого термина в выражении, для каждого подвыражения.

Так, например, если вы введете поисковое выражение

Поисковое выражение

(отметьте, что номера строк не появляются на экране, они включены для облегчения ссылки на каждую строку при объяснении, приведенном ниже):

Строка 1 содержит номер запроса, приписываемый CDS/ISIS поисковому выражению (1 в данном случае).
Строки 2-3 содержит количество регистраций (р=nnnnnn) для каждого термина, используемого на самом низком уровне выражения.
Строка 4 содержит количество записей (Т=2192), номер подвыражения (#2) и выделено само подвыражение (ITALY+FRANCE). В данном примере БД содержит 2192 записи, содержащие термин ITALY или термин FRANCE, или оба.
Строка 5 содержит количество регистраций (р=nnnnnn) для каждого термина, используемого на более высоком уровне выражения, в данном случае, на самом высоком уровне.
Строка 6 содержит количество записей (Т=8), номер подвыражения (#3:) и выделено второе подвыражение ART + #2 (строка 4).
Строка 7 содержит количество записей (Т=8), номер запроса (#1:) и номер подвыражения (#3) со строки 6.

Если поисковое выражение содержит ANY-термин, то на экран будет выдано количество регистраций всех поисковых терминов, принадлежащих данному ANY- термину, и общее количество регистраций. Аналогично, если поисковое выражение содержит поисковый термин, усеченный справа, то будут выведены на экран количество регистраций для каждого отдельного поискового термина также, как общее количество регистраций для усеченного термина.
Если вы используете недоступный поисковый термин, CDS/ISIS установит количество его регистраций равным нулю и выдаст сообщение:

** не найден **

Как было упомянуто выше, CDS/ISIS присваивает уникальный номер каждому поисковому выражению. Он также сохраняет все поисковые выражения. В последующих поисковых выражениях вы можете ссылаться на ранее введенные с помощью номера запросы, присвоенные CDS/ISIS, со знаком # перед ним.

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

Предположим, например, что после вывода на экран записей, найденных в ответ на запрос (ITALY + FRANCE) * ART вы обнаружили, что были найдены некоторые нерелевантные документы, потому что они касаются conservation of monuments. Вы можете изменить формулировку запроса следующим образом:

#1 ^ conservation of monuments

Ссылка на ранее определенное поисковое выражение называется обратной ссылкой. Заметьте, что к обратной ссылке можно применять квалификатор поля. Например,

# 1 / (64)

выберет среди записей, найденных в ответ на запрос #1, только те, в которых поисковые термины найдены в поле 64.

Для формулировки запросов нет набора правил. Вы будете развивать свои навыки, приобретая опыт при работе с CDS/ISIS. В общем, неопытному человеку не следует сразу использовать сложные поисковые выражения, а начать с простых, которые затем можно комбинировать для создания окончательной поисковой формулировки. Если опять сослаться на приведенный выше пример, этот же поисковый запрос может быть сформулирован за 4 шага:

номер запроса #1: ART
номер запроса #2: ITALY+FRANCE
номер запроса #3: CONSERVATION OF MONUMENTS
номер запроса #4: #1 * #2 ^ #3

3.6.7. Свободный поиск по тексту

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

Свободный поиск по тексту подключается при выборе опции S меню ISISRET. Чтобы отличать его от обычного поиска, перед булевым выражением ставится знак "?":

? булево выражение или
? #n булево выражение,
где
? - идентифицирует свободный поиск по тексту
#n - ограничивает свободный поиск по тексту результатами ранее введенного запроса (n - номер поискового запроса, в котором может проводиться как поиск по инвертированному файлу, так и свободный поиск по тексту или комбинация обоих типов поиска); если n опущено, то свободный поиск по тексту проводится по всей базе данных.
булево выражение - булево выражение CDS/ISIS, как определено в разделе 3.2.6.3. "Булевые выражения".

В ответ на запрос свободного поиска CDS/ISIS вычислит булево выражение для каждой записи файла документов и построит hit список записей, удовлетворяющих специфицированным условиям (т. е. все записи, для которых булево выражение получает значение "Верно").

Например:

? V24: 'Unesco' and val(V26^C) )=1986

найдет все записи, содержащие Unesco в поле 24 с датой публикации (v26^c) больше или равно 1986. Следующее выражение:

? #2 (p(V24) or p(V29)) and V26^b : 'unesco'

найдет среди записей, найденных на запрос #2, только те записи, которые содержат unesco в подполе поля 26 и при этом содержат поле 24, поле 29 или оба поля вместе.
Булево выражение может быть настолько сложным, насколько хочет пользователь, но оно не должно превышать границу в 250 символов (немногим более трех строк на экране). Как при поиске по инвертированному файлу, при свободном поиске по тексту запросу присваивается номер, который вы затем можете использовать в других поисковых выражениях.
Отметьте, что хотя выражения при поиске по инвертированному файлу и свободном поиске по тексту не могут смешиваться в одном выражении, однако можно, используя обратную ссылку, комбинировать любое количество выражений в отдельном поисковом выражении, например:

запрос 1   water * soil
запрос 2   ? # 1 val(v26^c) )1985
запрос 3   ANY LATIN AMERICA
запрос 4   #2 * #3

Поскольку CDS/ISIS должна читать каждую запись файла документов, чтобы проверить удовлетворяются ли условия, время обработки запроса по свободному поиску может быть очень большим, особенно если запрос применяется ко всей базе данных.
CDS/ISIS информирует вас о процессе обработки с помощью четырех окон, показываемых на экране, так что вы можете следить за процессом поиска.
Рис. 32 показывает, как выглядит экран во время свободного поиска по тексту.

Окна помечены следующим образом:
MFN - показывает номер обрабатываемой записи файла документов;
Hits - показывает текущее количество найденных записей (оно возрастает на 1 каждый раз, когда находится запись, удовлетворяющая булеву выражению);
% - показывает текущую hit запись, т. е. процентное соотношение найденных записей, вычисленное в отношении к обработанным записям;
Зап - общее количество записей, которые должны быть обработаны.

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

Рис. 32

4. Меню CDS/ISIS

The UNESCO micro CDS/ISIS Software

4.1. Иерархия меню

Иерархия различных меню системы CDS/ISIS представлена на рис. 33. Каждое меню имеет опцию выхода (как правило, обозначаемая буквой "Х"), которая позволяет возвратиться в предыдущее меню или закончить сеанс работы с CDS/ISIS, если вы находитесь в главном меню xXISI. Например, при выходе из меню хХМ3, CDS/ISIS выведет на экран меню хХМ1.

Обычно меню могут выбираться только в иерархическом порядке, т. е. меню хХМ1 можно выбрать только из меню xXISI, хХМ2 или хХМ3 из хХМ1, но нельзя выбрать хХМ2 из хХМ3. Однако, для наиболее часто употребляемых функций, CDS/ISIS обеспечивает пользователя специальными управляющими клавишами, которые позволяют осуществлять переход непосредственно в требуемое меню, независимо от иерархии. Заметим, что использование управляющих клавиш переключения меню эффективно только в том случае, когда меню высвечено на экране дисплея. Эти управляющие клавиши описываются ниже.

Рис. 33

Рис. 33

4.2. Клавиши переключения меню

The UNESCO micro CDS/ISIS Software

Клавиши переключения меню позволяют не выдерживать иерархию и вывести на экран непосредственно наиболее часто употребляемое меню. Предопределенными клавишами переключения меню являются следующие :

F2 - выбор главного меню xXISI;

F3 - выбор информационно-поискового меню xXGEN;

F4 - выбор меню для ввода данных хХЕ1;

F5 - выбор меню для сортировки и печати хХPRT.

4.3. Выбор опций меню

The UNESCO micro CDS/ISIS Software

Для выбора опций меню просто вводится буква, соответствующая необходимой опции. Например, для выбора опции "Информационно-поисковые функции" из меню xXISI, приведенного на рис. 35, введите букву "S" либо строчной либо прописной.

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

4.4. Меню справочной информации о состоянии системы

The UNESCO micro CDS/ISIS Software

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

Пример справочной информации, выводимой на дисплей показан на рис. 34.

Рис. 34

Рис. 34

4.5. Подсказки

The UNESCO micro CDS/ISIS Software

Однажды выбранная опция меню, соответствующая функции, может либо быть выполнена немедленно, либо запросит указать дополнительные данные, которые потребуются для выполнения задания. В последнем случае, CDS/ISIS обычно выводит на экран сообщение, называемое подсказкой, на которую необходимо дать ответ. В некоторых случаях ответ может быть выбран из другого меню, в котором необходимо сделать выбор. Например, если выбирается опция L из меню xXISI, приведенного на рис. 35, система выведет на экран другое меню, содержащее доступные языки.

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

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

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

Строчные подсказкия: обычно используются для получения информации, такой как имя базы данных. В ответ на эти подсказки печатаются необходимые данные и ввод завершается CR. Если допущена ошибка при печатании, используйте клавишу BSP для возврата к ошибочному символу, затем перепечатайте текст с нужного места. Клавиша BSP является единственной, которую можно использовать для редактирования строчных подсказок. Это связано с тем, что ответы на строчные подсказки обычно не бывают более 10 символов.

Подсказки редактированияя: как и строчные подсказки, обычно используются для выдачи единственного раздела информации. Однако, т. к. ответы на подсказки редактирования могут быть намного длиннее, чем строчные подсказки, CDS/ISIS подключает редактор поля. Таким образом, на подсказки редактирования можно отвечать, использовав все возможные средства редактора поля (см. раздел 13. "Редактор поля").

Можно легко распознать тип подсказок следующим образом: если предоставлен выбор между несколькими альтернативами - это вспомоготельное меню, если нижняя строка содержит сообщение "Редактор : вставка" (указывающее, что редактор поля подключен), значит вы имеете дело с подсказкой редактирования, иначе - это строчная подсказка.

"Список английских сообщений" дает полный перечень подсказок и системных сообщений, поставляемых на подлинной дискете CDS/ISIS. Этот список получен средствами программы ISISUTL.

4.6. Системные рабочие листы

The UNESCO micro CDS/ISIS Software

В некоторых случаях, когда более чем один параметр требуется для выполнения данной функции, CDS/ISIS выводит на экран системный рабочий лист, а не подсказку. Системный рабочий лист является в действительности разновидностью подсказки. Например, если формируется формат печати с использованием средств ISISPRT, CDS/ISIS выведет на экран системный рабочий лист для указания некоторых требуемых параметров, таких как ширина строки, количество строк на странице и т. д.

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

5. Средства CDS/ISIS

The UNESCO micro CDS/ISIS Software

5.1. Меню xXISI

Предоставляемые системой CDS/ISIS возможности определены в главном меню xXISI, приведенном на рис. 35, которое является первым меню, выводимым на экран при каждом запуске программы ISIS.

Рис. 35 Меню EXISI : Средства CDS/ISIS

Рис. 35 Меню EXISI : Средства CDS/ISIS

Выбор любой опции из этого меню, кроме "С" и "Х", выведет на дисплей другое меню, содержащее специальные опции, относящиеся к кажому средству. Опции "L", "C", "A" и "Х" объясняются ниже. Другие опции детально объясняются в следующих разделах.

А - ISISPAS - расширенная программная поддержка

Позволяет составить и/или выполнить прикладные программы, написанные на языке программирования CDS/ISIS Паскаль. Возможности, предоставляемые средствами ISISPAS, также как и сам язык, полностью описан в руководстве CDS/ISIS Паскаль, выделенном отдельно.

L - сменить язык диалога

Позволяет выбрать язык, на котором будут выводиться на экран системные меню, подсказки и сообщения. Первоначально CDS/ISIS начнет работать на языке, принятом по умолчанию. При выборе этой опции доступные языки будут выведены на дисплей в
меню xXLNG. Однажды выбранный язык остается неизменным до тех пор, пока его не изменят вновь. Все меню CDS/ISIS обеспечены опцией "L".

С - выбор базы данных

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

Подсказка 001 : Имя базы данных

В ответ на эту подсказку вводится имя базы данных, которую необходимо выбрать.
Если были сделаны добавления, модификация или удаление одной или более записей в базе, перед переходом к новой базе, система предложит опции для обновления инвертированного файла и только потом осуществит переход (см. раздел 3.5.5. "Обновление инвертированного файла").
Каждый раз при использовании опции "С" CDS/ISIS будет автоматически выбирать по умолчанию рабочий лист и формат печати соответствующие базе данных, которые были определены при ее создании.
В последствии можно изменить рабочий лист, используя опцию "W" в меню хХЕ1 по вводу данных и изменить формат печати, используя опцию "F" в поисковом меню xXGEN. Имена текущей базы данных, формат печати и рабочего листа указываются в меню справочной информации, каждый раз, когда меню выводится на экран.
Эта опция используется также для отмены выбора базы данных, которая может быть полезной иногда перед употреблением потенциально опасных опций. Для отмены выбора базы данных необходимо просто ответить CR на подсказку 001.

Х - выход

Заканчивает текущий сеанс и возвращает управление операционной системе. Если были сделаны добавления, исправления и удаления одной или более записей в последней базе данных с которой вы работали, вам будут предоставлены опции для обновления инвертированного файла перед выходом из системы CDS/ISIS (см. раздел 3.5.5. "Обновление инвертированного файла").

6. ISISENT - Программа обработки записей

The UNESCO micro CDS/ISIS Software

Программа ISISENT предоставляет все необходимые опции, связанные с операциями по вводу данных. Они позволяют добавлять новые записи в базу данных (опция "N") и модифицировать или удалять существующие записи (опции Е и R ). При создании новых записей, удобно использовать возможность, позволяющую определить значение одного или более полей, которое будет затем автоматически добавляться во все следующие записи, которые будут создаваться (опция D). Другие опции позволяют выбирать рабочий лист по вводу данных наиболее подходящий по типу записей, которые создаются или модифицируются (опция W).

Заметим, что все средства по вводу данных применяются к выбранной базе данных, если такая существует. Если база данных, которую необходимо обновить, отличается от текущей, необходимо использовать опцию "С" из меню хХISI, первоначально переключившись на требуемую базу данных. Если база данных не указана CDS/ISIS предложит указать имя базы данных перед выводом на экран меню хХЕ1 (см. раздел 5.1. "С" - смена базы данных).

Средства по вводу данных

6.1. Меню xХЕ1

Меню xХЕ1, приведенное на рис.36 появляется на экране всякий раз, когда выбирается опция "Е" из главного меню xХISI системы СDS/ISIS.

С - Убрать значения полей, выбранных по умолчанию.
   Динамически удаляет предварительно определенные значения по умолчанию (см. опция "D" ниже). После выполнения этой функции, текущий рабочий лист по вводу данных принимает свое первоначальное состояние и меню xXE1 повторно появляется на экране.
Если динамически значения по умолчанию не были определены, выбор опции С не эффективен.

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

Рис. 36 Меню ЕХЕ1: Средства для ввода данных

Рис. 36 Меню ЕХЕ1: Средства для ввода данных.

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

Когда выбирается эта опция, СDS/ISIS выведет на экран текущий рабочий лист. Значения вводятся таким же образом как и при создании записи (см. раздел 3.5.1. "Создание новых записей"). Если текущий рабочий лист определяет значения по умолчанию для одного или более полей, то эти значения появятся на экране и можно будет изменить или удалить некоторые из них, если необходимо.

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

Если предварительные значения не модифицировались, они останутся неизменными. Поэтому можно использовать опцию D для вывода на экран определенного набора значений по умолчанию и/или просто вывести на экран текущий рабочий лист.

Динамические значения по умолчанию будут оставаться эффективными до тех пор пока не используется опция "С".

Е - Редактирование записей (или последовательности записей)

Эта опция позволяет модифицировать, удалять запись, или последовательность записей, если известны их номера в файле документов (другая опция, описанная в разделе "R" -" редактирование последних результатов поиска", позволяет редактировать записи предварительно отображенные при поиске).

Подсказка 012: MFN или интервал MFN (п1 п2), модифицируемых записей:

Ответ может быть следующим:
Для редактирования единственной записи: введите MFN записи (например 15); для редактирования последовательности записей: введите верхний и нижний предел последовательности записей, разделив их пробелом (например 23 48 для редактирования с 23 по 48 записи включительно).
Для возврата в меню введите CR. CDS/ISIS отыщет запись (или последовательность записей), и выведет их на дисплей в текущем рабочем листе. Если указана последовательность записей, то после окончания редактирования одной записи, CDS/ISIS автоматически выведет на экран следующую запись, пока все записи из указанной последовательности не будут обработаны, если не прервать процесс редактирования. В деталях инструкция по редактированию записей приведена в разделе 3.5.2. "Редактирование записей".

L - Смена языка диалога
Позволяет изменить язык системных сообщений и меню (см. раздел 1.4.2. "Многоязыковый диалог").
Заметим, что эта опция неизменяет языка в рабочем листе по вводу данных.
Если база данных имеет несколько рабочих листов на разных языках, используйте опцию W для выбора необходимого.

N - Создание новой записи
Эта опция позволяет создавать новую запись. CDS/ISIS выведет на экран первую страницу выбранного рабочего листа (содержащего только значение по умолчанию, если они имеются).
Подробно создание новой записи изложено в разделе 3.5.1. "Создание новых записей".

Р - Вывести последнюю измененную запись
Эта опция повторно выводит последнюю запись, которая модифицировалась во время последнего сеанса. Используя эту опцию, можно проверить, например, какая последняя запись была модифицирована после прерывания работы.

R - Просмотр/ред. результатов последнего запроса
Используя опцию "Е" можно только редактировать запись по ее MFN, а опция "R" позволяет редактировать набор записей, отобранных по последнему поисковому запросу. (см. раздел 7.1. "S - Формулировка запроса"). В ответ на эту опцию CDS/ISIS выведет на экран каждую запись из набора, используя текущий рабочий лист. После того как заканчивается редактирование одной записи, CDS/ISIS автоматически выводит на экран следующую запись и так до тех пор, пока все записи, отобранные по запросу не будут обработаны или не будет прерван сеанс работы на ПЭВМ. (см. раздел 3.5.2. "Редактирование записей").

Х - Выход
Эта опция прекращает сеанс ввода данных и возвращает в главное системное меню xXISI.W - Выбор другого рабочего листа
Эта опция позволяет выбрать рабочий лист, отличный от текущего (имя текущего рабочего листа выводится на экран в меню справочной информации см. раздел 4.4. "Меню справочной информации").

Подсказка 011: имя рабочего листа

В ответ на эту подсказку нужно ввести имя (не более 5 символов) рабочего листа, который необходимо выбрать.
В документации по базе данных обычно указывается, какой рабочий лист имеется в распоряжении пользователя и когда он может быть использован. Например, база данных содержит различные рабочие листы для ввода каждого вида записей в базу данных или рабочий лист на разных языках.

7. ISISRET - Программа поиска информации

The UNESCO micro CDS/ISIS Software

Программа ISISRET предлагает все функции, связанные с поиском информации. Она позволяет, в частности, вывести на экран словарь поисковых терминов и использовать их при формировании запроса (опция "Т"), составлять поисковые выражения (опция "S"), выводить на экран соответствующие результаты (опция "D"), а также сохранять результаты поиска для последующей распечатки (опция "Р").

Другие опции позволяют вывести на дисплей отобранную часть файла документов (опция "В"), повторно выполнить и/или редактировать составленное поисковое выражение, применительно к различным базам данных (опция "G"), просмотреть перечень составленных поисковых выражений (опция "R") или выбрать требуемый формат печати (опция "F"). Заметим, что все поисковые опции применяются к текущей базе данных.

Для поиска в другой базе данных, первоначально используйте опцию "С" для смены базы данных из меню хХISI. Если база данных не указана, СDS/ISIS предложит указать имя базы данных перед выводом на дисплей меню хХGEN (см. раздел 5.1. "С-смена базы данных").

Требуемые средства

7.1. Меню хХGEN

Функции, предоставляемые программой ISISRET, выводятся на дисплей в меню хХGEN показанное на рис. 37

Опции описываются ниже в алфавитном порядке.

В - Просмотр файла документов
Эта опция позволяет вывести на дисплей часть файла документов, начиная с определенного MFN.

Подсказка 018: Начальный MFN для просмотра

В ответ на эту подсказку вводится MFN первой записи, которая будет выведена на дисплей, или CR для вывода на дисплей начала файла документов.

Рис. 37: Меню EXGEN. Средства поиска информаци

Рис. 37: Меню EXGEN. Средства поиска информации

Все записи выводятся на экран в текущем формате (см. опцию "F" ниже). Вывод на экран может быть прерван как обьяснено в разделе, описывающем опцию "D" ниже.

D - Выдача результатов поиска
На экран выводятся записи, отобранные по последнему поисковому выражению, составленному пользователем. Если еще не созданы элементы поиска или при последнем поиске не было найдено ни одной записи, выдается соответствующее сообщение.
В ответ на эту опцию система выдает на экран столько записей, сколько их помещается на экране (пример показан на рис. 38). Сообщение "Конец просмотра" будет появляться после последней записи.

В этом случае, нажмите клавишу CR для возврата в меню.
Если количество записей такое, что все они не помещаются на экране, то система разместит в конце экрана следующее сообщение:

Далее...

Ответ:

CR - для продолжения выдачи последующих записей (если последняя запись на предыдущей странице экрана была неполной, то вся она воспроизводится в верхней части следующей страницы, таким образом, что можно просмотреть ее полностью);

Х - для прерывания выдачи на экран и возврата в меню.
Можно также непосредственно выбрать какое-нибудь другое значение опции меню хХGEN. В этом случае отобранная опция будет выполнена немедленно без вывода меню.

Формат, используемый для выдачи записей,отобранных по запросу, это либо последний выбранный формат, предусмотренный CDS/ISIS при выборе базы данных, либо измененный при использовании опции "F".

При необходимости вывести на экран записи,отобранные по запросу, сформулированному по другому поисковому выражению, нужно сначала сделать это выражение текущим, используя опцию "S". Например, если после рассмотрения пяти поисковых выражений, необходимо вывести на дисплей результаты второго, выберите опцию "S" и введите #2. Эта операция создает новый список связи, шестой, равный второму, который можно затем вывести на экран.

Рис. 38. Пример вывода на экран результатов поиска

Рис. 38. Пример вывода на экран результатов поиска.

F - Изменить формат вывода

Позволяет редактировать и/или заменять формат выдачи на дисплей, используемый опциями "D" или "В". Можно либо указать имя имеющегося формата, либо сформулировать собственный формат.
Однажды отобранный, формат остается активным до тех пор, пока не будет модифицирован или не будет отобран другой, или пока не будет выбрана другая база данных или не осуществлен выход из программы.
Форматы вводятся и/или редактируются с помощью редактора поля (см. раздел 13. "Редактор поля").
При выборе этой опции CDS/ISIS выведет на дисплей текущий формат в режиме редактирования с предшествующим сообщением:

Подсказка 003: Введите/отредактируйте формат
(@ххххх для ранее определенного формата)

В зависимости от ваших намерений ответ может быть следующим:
- для выбора имеющегося формата:
вводится имя формата с предшествующим символом @ (т. е.@myfmt). Заметим, что символ @ указывает CDS/ISIS, что это есть имя, а не сам формат. Перед вводом имени формата, по желанию, можно нажать F2 для предварительной очистки экрана от старого формата.
- для составления собственного формата или модификации текущего формата:
введите собственный дисплейный формат (согласно языку форматирования CDS/ISIS) или редактируйте выведенный на экран. Не пытайтесь вводить собственный формат до тех пор, пока в полной мере не ознакомитесь с языком форматирования CDS/ISIS (см. раздел 3.2. "Язык форматирования"). Если создать пустой формат (путем удаления дисплейного формата с экрана) CDS/ISIS выберет встроенный формат, который выводит на экран все поля записей с предшествующей соответствующей меткой. При использовании этой опции для модификации существующего формата, внесенные изменения будут временными и действующими до тех пор, пока не произойдет выход из программы или выбор другого формата. Функциональная клавиша F8 редактора поля, позволяет сохранить постоянно сделанные изменения.

Перед нажатием F8, необходимо знать, где модифицированный формат должен быть сохранен. Для определения этого используется меню справочной информации (см. раздел 4.4. "Меню справочной информации").
Если возникли сомнения относительно сохранения модифицированного формата, нажмите CR для вывода на дисплей меню и проверьте имя текущего формата.

Оно может быть одно из следующих:

ALL - это встроенный формат. CDS/ISIS назначает это имя куда-бы не был удален существующий формат (т. е. была отобрана опция "F" и создан пустой формат). Нажатие F8, в этом случае, не вызывает реакции.

* - это временный формат. CDS/ISIS назначает это имя при использовании опции "F" для создания формата, если предыдущий формат был встроенный. Нажатие F8 сохранит формат в файле, называемом ТЕМР.РFТ в каталоге базы данных. Заметим, что этот файл будет замещаться каждый раз.

name - любое другое имя, соответствующее имеющемуся формату, т. е. формат входит в описание базы данных. Нажатие F8 будет замещать имеющийся формат соответствующим модифицированным форматом.

G - Выполнить поиск по предыдущему запросу

Позволяет повторно выполнить (и редактировать) предыдущее обработанное поисковое выражение.
Перед использованием этой опции можно использовать опцию R (см. раздел 7.1. "R - вывести формулировки запросов данного сеанса") для проверки номеров запросов поисковых выражений, которые были созданы.

Подсказка 005: Номер запроса

В ответ вводится номер поискового выражения запроса, который нужно повторно выполнить или СR для повторного выполнения последнего отработанного поискового выражения.
В ответ на эту подсказку СDS/ISIS выводит на экран поисковое выражение в режиме редактирования. Можно отредактировать поисковое выражение перед повторным рассмотрением его или просто нажать CR для повторного выполнения без изменений.
Заметим, что можно использовать эту опцию для повторного рассмотрения данного поискового выражения применительно к другой базе данных. В этом случае, однако, необходимо убедиться в том, что поисковое выражение не ссылается на другие поисковые выражения.

Например, если использовать опцию "G" для повторного выполнения следующего поискового выражения (первоначально отработанного в базе данных А) в базе данных В:

#1 + #2

Это не даст правильного результата, так как запросы 1 и 2 применимы к базе данных А, но не к базе данных В. В этом случае, необходимо первоначально повторить выполнение поискового выражения 1 и 2. Для этого можно использовать опцию "G".

Можно также использовать опцию "G" для преобразования предыдущего отработанного поискового выражения в текущее.

Например, если необходимо вывести на дисплей результаты предыдущего запроса (опция "D" вывода на дисплей действует только на самое последнее отработанное поисковое выражение), то можно это сделать, используя первоначально опцию "G" для повторного обращения к этому элементу запроса, делая таким образом этот элемент текущим и затем выбрать опцию "D".
Заметим однако, что это менее эффективно, чем метод, предложенный при использовании опции "D" выше.

L - Сменить язык диалога

Позволяет выбрать или сменить язык системных сообщений и меню. (см. раздел 1.4.2. "Многоязычный диалог").

Р - Сохранить результаты поиска на диске

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

Подсказка 032: Введите имя файла для сохранения результатов поиска:

Ответ: введите максимально 6-символьное имя файла, где должны быть сохранены результаты поиска.

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

Подсказка 321: Файл сохранения уже существует.
Удалить (Y/N)?

Ответ: Y - при повторном использовании файла. Любой другой ответ заставит CDS/ISIS проигнорировать запрос на сохранение и возвратиться в меню.

R - Вывести формулировки запросов данного сеанса

На экран выдается набор элементов запроса, созданных в текущем сеансе работы. (пример вывода приведен на рис. 39)

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

Если количество поисковых выражений превышает размер экрана

Можно, также прямо выбрать любое другое значение опции из меню ХХGEN. В этом случае выбранная опция будет выполнена немедленно, без вывода на экран меню.

Рис.39

Рис.39

S - Подготовить запрос на поиск информации
Эта опция позволяет ввести поисковое выражение.

Подсказка 004: Введите запрос

Поисковые выражения формулируются с использованием поискового языка СDS/ISIS, описанного в разделе 3.6. "Поисковый язык CDS/ISIS" и вводятся средствами редактора поля (заметим, что аналогичным способом для формулировки запроса является использование опции "Т" из этого меню). Поисковое выражение не может превышать 250 символов (и не более трех строк экрана) однако, так как некоторые поисковые выражения могут затем комбинироваться, то практически нет ограничений в комплектовании запросов, которые можно сформулировать (см. раздел 3.6.6."Развитие поисковой стратегии"). В ответ на поисковое выражение система выдаст количество регистраций для каждого термина в выражении, подсчитает результирующее количество найденных записей, и расположит его в последней выдаваемой строке. (см. пример в разделе 3.6.6. "Развитие поисковой стратегии").

После обработки поисковых выражений система остановится и предоставит возможность проверить результаты. Для продолжения нажимается CR или выбирается любая другая опция из меню хХGEN.
Например, можно нажать "D" для вывода на дисплей отобранных записей непосредственно без возврата в меню.

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

Т - Просмотреть поисковые термины словаря

Позволяет вывести на экран поисковые термины словаря и выбрать термины для поиска. При выборе этой опции, экран очищается и CDS/ISIS предлагает ввести начальный поисковый ключ.

Если нажать CR, словарь будет выводится на экран начиная с первого термина. Подобным образом, можно ввести один или два символа для выбора определенного раздела словаря: например "S" осуществит просмотр словаря, начиная с буквы "S" (нет необходимости использовать символ & для урезания терминов, как это делается при поиске). На рис. 40 показан пример, где начальным ключом используется слово "ADULT"

РИС.40

РИС.40

В ответ система выдает на дисплей до 36 терминов. Строка содержащая звездочку (*) указывает на конец словаря.

Термины выстраиваются в две колонки и каждому термину предшествуют символ подчеркивания (-). Курсор устанавливается на первом термине выведенном на экран.

В это время можно пролистать страницы словаря и/или выбрать термины для поиска, как обьяснено ниже.

1. Страничные ключи

PgDn - вывод на экран следующей страницы терминов словаря

Т - позволяет выбрать другой раздел словаря. Система предложит повторно ввести начальный ключ.

2. Ключи выбора термина

Клавиши управления курсором

UP   DOWN   LEFT   RIGNT   НОМЕ   END

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

"S" - для выбора термина (выбранные термины будут повышенной яркости на экране). Если выбираются другие термины, CDS/ISIS автоматически вставит логический оператор OR (+) между данным и предыдущим термином.

"Оператор" - если по крайней мере один термин уже выбран, можно выбрать еще один и связь его с предыдущим, используя один из следующих операторов поиска: + ^ * G F . $ . Заметим, что CDS/ISIS будет автоматически обеспечивать проверку синтаксиса для тех операторов, которые требуют более чем один символ, т. е. если нажать F, CDS/ISIS вставит (F) оператор.

Можно выбрать термины из разных страниц словаря, но поисковое выражение не должно превышать максимальное ограничение 250 символов.

3. Ключи выхода

"С" - для выхода и отмены поиска (любые отобранные термины игнорируются)

"Х" - для выхода и выполнения поиска, если необходимо (если термины не были отобраны, на экране появится поисковое меню хХGEN).

Перед выполнением поиска, CDS/ISIS выведет на экран поисковые выражения в режиме редактирования: предоставляется возможность сделать требуемые изменения перед непосредственным выполнением поиска (т. е. вставить скобки где необходимо и/или добавить или удалить термины), затем нажать CR для начала поиска. Помните, что были указаны "S" перед "ADVLT EDUCATION" и "*" перед "AFGHANISTAN" в примере показанном на рис. 40, затем определен выход и CDS/ISIS выдаст на дисплей следующее поисковое выражение:

ADULT EDUCATION * AFGHANISTAN

Как можно убедится, используя опцию "Т", достаточно указывать "операторы", а CDS/ISIS печатает термины.

Х - Выход

Возврат в главное; меню CDS/ISIS (см. раздел 5.1. "Меню хХISI").

8. ISISPRT - Программа сортировки и печати

The UNESCO micro CDS/ISIS Software

Программа  ISISPRT позволяет распечатать результат данного запроса (который был предварительно сохранен с помощью опции Р программы ISISRET), и/или распечатать выбранный интервал записей.

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

Отметим, что программа ISISPRT требует выбора базы данных. Если ни одна база данных не выбрана в текущий момент, CDS/ISIS попросит  выбрать базу данных перед выводом на экран меню хXРRT (см. раздел 5.1. "С - изменить базу данных"). Однако, можно распечатывать данные из базы данных, отличной от текущей  (см. раздел 8.3.1. "Имя базы данных").

Требуемые средства

8.1. Основные требования при печати

The UNESCO micro CDS/ISIS Software

Ниже приведены основные требования для запуска печати, которые в то же время обобщают некоторые возможности печати и сортировки в CDS/ISIS. Более подробно все эти возможности рассматриваются в следующих пунктах:

1. Определение записей, которые необходимо распечатать
Распечатать можно всю базу данных или определенный интервал записей, путем задания минимального и максимального MFN в поле пределов MFN рабочего листа для печати; либо можно распечатать результаты поиска, которые были предварительно сохранены, путем определения имени файла сохранения в поле "Имя файла сохранения".

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

3. Определение полей, которые необходимо распечатать.
Эти поля определяются в формате, который приводится в поле "Формат печати" в рабочем листе печати. Можно использовать, как ранее определенный формат, так и ввести его непосредственно в поле.

4. Определение разметки листа
Вы имеете полную свободу при определении ширины строки, количества строк на странице, количества колонок, печати, номеров страниц путем определения соответствующих параметров в рабочем листе печати.

5. Определение средств вывода
Вы можете направить вывод на принтер или в файл на диск, заданием соответствующего значения в поле "Имя файла печати" рабочего листа печати. Если вы хотите сразу распечатать результаты, вы должны убедиться, что:
   а) принтер подключен и готов;
   b) смонтированы правильные формы для вывода;
   с) в принтере достаточно бумаги.

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

7. Определение подзаголовков
Поля, по которым сортируются записи, могут использоваться как подзаголовки. Например, если сортировка идет по авторам, записи будут размещены в алфавитном порядке имен авторов. Если автор используется в качестве подзаголовка, имя каждого автора будет распечатано только один раз для всех записей, имеющих данного автора (см. примеры, данные на рис. 48 и рис. 49). Рабочий лист для сортировки позволяет определить нужно ли использовать подзаголовки для данного вывода и, если нужно, то указать количество уровней используемых подзаголовков. Можно, например, отсортировать статьи, конференции по месту проведения (первый уровень), дате (второй уровень) и названию конференции (третий уровень).

В соответствии с приведенными параметрами, CDS/ISIS поступает следующим образом (шаги 1-3 пропускаются, если сортировка не задана):
1) используя информацию, приведенную в рабочем листе для сортировки, он сначала строит HIT файл, который содержит ключи сортировки и соответствующие подзаголовки;
2) затем сортируется HIT файл;
3) используя HIT файл, система проверяет для каждой записи из этого файла, изменились ли один или несколько подзаголовков; если да, то требуемые подзаголовки форматируются и печатаются в соответствии с определенным для подзаголовка форматом, или форматом, используемым по умолчанию;
4) затем печатается соответствующая запись файла документов в определенном формате печати. Исключением является случай, когда вместо формата определена * (см. раздел 8.3.5. "Формат печати").

8.2. Меню хХPRT

The UNESCO micro CDS/ISIS Software

Возможные опции выбираются через меню хХРRT, приведенном на рис. 41.

Рис. 41

L - сменить язык диалога
Позволяет изменить язык системных меню и сообщений (см. раздел 1.4.2. "Многоязычный диалог").

Р - печать по стандартной спецификации
Выводится на экран системный рабочий лист при печати хYPRT, который содержит параметры расположения текста на странице. Этот рабочий лист описан в следующем разделе. Введенные параметры будут действительны только для текущего сеанса печати. Если оказывается, что эти параметры нужно часто использовать для данной базы данных, можно определить их для дальнейшего использования в пользовательском рабочем листе. Тогда можно использовать опцию S данного меню для вызова собственного рабочего листа при печати. Для уточнения подробностей создания собственного рабочего листа при печати см. раздел "Создание и обновление пользовательских рабочих листов для печати и сортировки".

S - печать по спецификации пользователя
Позволяет использовать один из ранее определенных рабочих листов для печати.

Подсказка 01: Имя рабочего листа

В ответ введите имя (1-5 символов) вашего рабочего листа для печати.

CDS/ISIS найдет выбранный рабочий лист и выведет его на экран. Вы можете, если нужно, изменить один или более ранее определенных параметров. Однако эти изменения будут действительны только для текущего сеанса печати. Для внесения постоянных изменений в рабочий лист для печати необходимо использовать средства ISISUTL, см. раздел 8.7. "Создание и обновление пользовательских рабочих листов для печати и сортировки".

Х - выход
Возвращает в главное меню CDS/ISIS (см. раздел 5.1. "Меню хХISI").

8.3. Системный рабочий лист для печати хYPRT

The UNESCO micro CDS/ISIS Software

Этот рабочий лист выводится на экран всякий раз, когда выбрана опция Р. Он приведен на рис. 42.

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

Рис. 42: Системный рабочий лист для печати EYPRT

Отметим, что некоторые поля пустые (например, поле "Имя файла сохранения"), в то время как другие поля уже имеют значения. Эти, уже определенные значения, являются значениями по умолчанию, CDS/ISIS их использует, если вы их не измените.

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

8.3.1. Имя базы данных

По умолчанию CDS/ISIS заполняет это поле именем текущей базы данных. Вы можете, однако, ввести другое имя, если хотите печатать данные из другой базы данных. Если вы введете другое имя, CDS/ISIS автоматически восстановит текущую базу данных после окончания сеанса печати.

8.3.2. Пределы MFN

Обычно нужно заполнять это поле, если вы не печатаете результаты поиска (см. ниже). Введите здесь интервал номеров файла документов, которые будут распечатаны. Нужно обязательно вводить и нижнюю и верхнюю границы, разделенные пробелом или любым другим нечисловым символом (например, ; : / и т.д.).

Например, если вы введете 25/350 в это поле, CDS/ISIS распечатает записи с MFN больше или равным 25 и меньше или равным 350. Отметим, однако, что, если вы также укажете имя файла сохранения (см. ниже), это ограничение по записям будет применяться только к записям, отобранным при сеансе поиска.

8.3.3. Имя файла сохранения

Заполните это поле, если вы хотите распечатать сохраненные результаты поиска. Напомним, что результаты поиска могут быть сохранены с помощью опции Р программы ISISRET меню хХGEN.

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

8.3.4. Первый, второй и третий титульный заголовки

Вы можете задать заголовок длиной до трех строк, который CDS/ISIS будет печатать перед данными.

Более того, строки заголовка, начинающиеся со знака *, если такие есть, будут печататься как текущий заголовок на второй и последующих страницах (* печататься не будет). Отметим, что заголовок центрируется на строке и между строками заголовка пропускается одна чистая строка. Каждая строка заголовка может содержать до 254 символов.

8.3.5. Формат печати

Введите здесь формат печати, который вы хотите использовать при печати записей файла документов. Можно ввести имя ранее определенного формата (в этом случае имени должен предшествовать знак (@)) или сам формат. В последнем случае, конечно, вы должны хорошо знать язык форматирования печати CDS/ISIS (см. раздел "Язык форматирования").

Отметим, что если вы забудете поставить знак @ перед именем формата, CDS/ISIS воспримет это имя как сам формат. Это вызовет прерывание печати с сообщением об ошибке в формате.

Вот два простых примера для этого поля: первый указывает CDS/ISIS использовать ранее определенный формат MYFMT, а второй предписывает распечатку полей 10 и 20:

@MYFMT
MDL,V10,V20

Если распечатываемый текст является индексом, вы имеете две возможности:

1) распечатать один или более элементов данных из каждой записи под соответствующим подзаголовком: в этом случае вы определяете в формате элементы, которые надо распечатать;
2) для распечатки только краткой ссылки на запись под каждым подзаголовком (например, MFN) введите (*) вместо формата печати. В этом случае, вместо печати записи файла документов, CDS/ISIS печатает последний уровень подзаголовка (отделенный запятой от предыдущего повторения и смещенный на величину, указанную в поле смещения данных). Эта возможность полезна для продуцирования компактных индексов, в которых вы печатаете только короткую ссылку на запись, такую как MFN. Отметьте, что если вы используете эту возможность, вы должны определить как минимум два ключа сортировки. Более того, длина ссылочного элемента должна полностью помещаться в одну строку (минус величина смещения данных, если есть).
Вы можете также оставить это поле пустым. В этом случае будут распечатаны только подзаголовки (конечно, если вы зададите сортировку в поле "Сортировка" данного рабочего листа). Эта возможность полезна при распечатке списка авторов или какого-либо проверочного списка.

8.3.6. Ширина строки

Этот параметр указывает максимальную ширину строки (в количестве печатных позиций), которую должна использовать CDS/ISIS при печати. Она не должна превышать максимальное количество печатных позиций на вашем принтере. Заголовки и записи файла документов будут соответственно разбиты на строки, не превышающие заданную ширину.

Отметим, что CDS/ISIS всегда разбивает текст на две строки на уровне слов, т. е. слово никогда не разбивается на две части. Следовательно, правое поле колонки не будет выравниваться.

8.3.7. Количество колонок

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

Если вы задаете более одной колонки, вы должны также определить параметр "Ширина колонки", описанный ниже.

Следует также отличить ограничение реализации, описанное в разделе 3.3.6. "Команда перехода (Escape)", которые позволяют использовать несколько типов шрифтов.

8.3.8. Ширина колонки

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

В этом случае отметьте, что параметр "Ширина строки", описанный выше, определяет используемую часть каждой колонки и должен быть, следовательно, меньше, чем ширина колонки. Фактически, разница между "Шириной колонки" и "Шириной строки" определяет колонку пробелов между двумя соседними колонками.

Если вы печатаете более одной колонки, вы должны убедиться, что значение выражения:

(количество колонок-1) х Ширина колонки + Ширина строки

меньше или равно количеству печатных позиций вашего принтера. Например, определяя ширину строки- 38 символов и ширину колонки- 42 символа для двух колонок, убедимся, что между самым правым печатаемым символом первой колонки и левой границей второй колонки будет по крайней мере 4 символа. И далее, в соответствии с формулой, приведенной выше, количество печатных позиций вашего принтера должно быть по крайней мере 80 (т. е. (2-1) х 42 + 38 = 80).

Каждая печатаемая строка может содержать до 300 символов. Однако, отметьте, что она включает escape- последовательности, которые вы внесли в формат печати. Ширина строки, которую вы определили для CDS/ISIS указывает максимальное количество печатаемых символов в строке, исключая любую escape последовательность (поскольку эти последовательности не соответствуют печатаемым символам, а управляют устройством, например, выбором типа шрифта). Вы должны убедиться, что, с одной стороны, ваша печатаемая строка не превышает максимальное количество печатных позиций, допустимых на вашем принтере, а с другой стороны, что максимальное количество символов в строке, посылаемой на принтер (включая, тем не менее, любую escape последовательность), не превышает 300 символов.

8.3.9. Строки на странице

Этот параметр определяет максимальное количество строк на странице.

8.3.10. Номер первой страницы

Этот параметр определяет начальный номер страницы.

CDS/ISIS печатает номер страницы в середине строки внизу каждой страницы. Кроме реального номера страницы вы можете задать следующее:

0 (ноль) CDS/ISIS не будет печатать номера страниц, но будет делить текст постранично в соответствии с заданным количеством строк на странице;

N CDS/ISIS не будет ни печатать страницы, ни делить постранично текст. Эта опция удобна для печати текстовых файлов, которые вы хотите использовать вне CDS/ISIS в других целях (т. е. в текстовом процессоре).

8.3.11. Допуск EOC (конец колонки)

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

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

Вы можете также использовать этот параметр для печати каждой записи на отдельной странице путем задания допуска EOC больше, чем количество строк на странице.

8.3.12. Смещение данных

Этот параметр может быть определен, если вы используете заголовки. Он указывает смещение каждого уровня заголовка относительно заголовка предыдущего уровня и& данных относительно последнего уровня заголовка.

Вот два примера для одного и того же вывода, первый имеет значение смещения 0, а второй 3:

Два примера для одного и того же вывода

8.3.13. Сортировка

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

8.3.14. Имя рабочего листа для сортировки

Если вы хотите использовать набор ранее определенных параметров, введите здесь имя вашего рабочего листа для сортировки. Если вы оставите это поле пустым, CDS/ISIS предложит вам заполнить системный рабочий лист.

Отметьте, что это поле важно, только если вы ввели Да в предыдущем поле.

8.3.15. Имя файла печати

Вы можете ввести в это поле либо имя файла, в котором CDS/ISIS сохранит данные для печати, либо устройство печати, если вы хотите сразу же распечатать эти данные.

Если вы оставите это поле пустым, CDS/ISIS сохранит данные в файле dbn.LST (где dbn - имя базы данных), если не было определено имя файла сохранения, либо в файле save.LST (где save - имя файла сохранения), если имя файла сохранения было определено. Отметим, однако, что нельзя создавать более, чем один файл печати с одним именем без предварительной распечатки, т. к. второй файл затрет первый.

Если вы просто хотите выдать HIT файл (который может быть нужен для операции экспорта, как объяснялось в разделе 12.2.3.3. "Результирующий HIT файл"), вы можете ввести NULL в поле "Имя файла печати". В этом случае, печать прервется, как только будет сгенерирован (отсортирован) HIT файл.

Особенность для VAX: для версии VAX CDS/ISIS вы можете также определить SPOOL. В этом, случае файл печати будет автоматически послан в системную очередь печати, как только завершится сеанс печати. Вы должны отметить, что ограничения, касающиеся этой опции, приведены в разделе "Печать файлов с помощью режима подкачки".

8.3.16. Подтверждение правильности заполнения рабочего листа для печати

После того, как вы заполните последнее поле рабочего листа для печати, CDS/ISIS предложит вам подтвердить правильность его заполнения. В 21 строке экрана появится подсказка:

Подсказка 105: CR - следующая страница М - модифицировать С - отменить Х - выход
Ответ:

CR - для подтверждения введенного. CDS/ISIS затем либо выведет на экран рабочий лист для сортировки (если вы хотите сортировать данные), либо начнет печать;

М - для изменения одного или более полей. CDS/ISIS в этом случае разместит курсор в первом поле, и вы сможете осуществить требуемые изменения;

С - для отмены печати и возврата в меню xXPRT. Отметьте, что для корректировки полей вам следует поступать также, как при корректировке записи при вводе данных (см. раздел 3.5.2. "Редактирование записи").

8.4. Пользовательский рабочий лист для печати

The UNESCO micro CDS/ISIS Software

Когда вы выбираете опцию S в меню xXPRT, CDS/ISIS выведет на экран рабочий лист, который вы выбрали. Он имеет такой же вид и тот же состав полей, что и системный рабочий лист xYPRT, который описан выше. Отличие состоит в том, что пользовательский рабочий лист обычно имеет все (или большинство) поля заполненные, что и является причиной создания пользовательского рабочего листа.

По этой причине, CDS/ISIS не будет размещать курсор в первом поле, а сразу попросит вас подтвердить правильность заполения листа. Подсказка появляется та же (105), что и при окончании заполнения системного рабочего листа xYPRT (см. выше).

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

Для внесения постоянных изменений в свой рабочий лист вы должны использовать программу ISISUTL, как объяснялось в разделе 8.7. "Создание и обновление пользовательских рабочих листов для печати и сортировки".

8.5. Системный рабочий лист для сортировки xYSRT

The UNESCO micro CDS/ISIS Software

Рабочий лист xYSRT, приведенный на рис. 43, выводится на экран после рабочего листа для печати, если вы запросили сортировку выходных данных (путем введения "Да" в поле Сортировка рабочего листа для печати). Он содержит все параметры, связанные с сортировкой и употреблением подзаголовков.

Рис. 43. Системный рабочий лист для сортировки EYSRT

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

8.5.1. Количество подзаголовков

Введите количество уровней подзаголовков, которые вы хотите использовать. Это количество должно быть меньше или равно количеству ключей сортировки (см. ниже). Если это количество будет больше, CDS/ISIS установит количество уровней равным количеству ключей сортировки.

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

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

8.5.2. Имя файла стоп-слов

Если в одной из ТВП, используемых для генерации ключей сортировки, (см. ниже) вы используете технику индексирования 4 (индексирование по словам), вы можете использовать файл стоп-слов, содержащий список незначащих слов. В этом случае введите здесь имя файла стоп-слов, который вы хотите использовать. CDS/ISIS будет игнорировать слова, перечисленные в файле стоп-слов, при построении ключей сортировки. Для уточнения подробностей о построении файла стоп-слов см. раздел 17.3. "Создание файла стоп-слов".

8.5.3. Формат подзаголовка

Вы можете ввести здесь ваш собственный формат для печати подзаголовков. Поскольку подзаголовки создаются средствами ТВП, они не обязательно должны соответствовать содержанию полей в записи (т. е. подзаголовком может быть только одно слово из поля). С другой стороны, язык форматирования (который используется также и для форматирования подзаголовков, а не только записей) не имеет специальных команд для форматирования подзаголовков, он может форматировать только поля или подполя. По этой причине, CDS/ISIS присваивает каждому подзаголовку специальную метку, которая может быть использована затем в формате для ссылки на подзаголовок.

Если вы вводили свой собственный формат, вы должны помнить, что во время печати CDS/ISIS, прежде чем выполнить печать, предпринимает следующие действия:

1) каждому подзаголовку присваивается метка, равная идентификатору поля, определенному в ТВП, используемой для построения соответствующего ключа сортировки (однако, если CDS/ISIS использует формат для подзаголовков по умолчанию, он предназначает каждому подзаголовку последовательные номера, начиная с 1);

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

Например, допустим, что индикаторы полей, присвоенные первому и второму ключам сортировки, были 1 и 2 соответственно, тогда может быть использован следующий формат подзаголовка, обеспечивающий пустую строку перед первым уровнем подзаголовка и пустую строку перед вторым уровнем подзаголовка только в том случае, если нет изменений в первом подзаголовке:

MHL,""#V1(0,4)/""#N1,V2(4,8)

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

Отметим также, что, если вы вводите свой формат для подзаголовка, CDS/ISIS будет использовать только параметр смещения данных (приведенный в рабочем листе для печати) для смещения записей, распечатываемых под последним уровнем подзаголовка. Следовательно, вы сами должны позаботиться о смещении самих подзаголовков. Если вы не вводите свой формат (т. е. оставите это поле пустым),
CDS/ISIS использует системный формат по умолчанию:

MHL,""#V1(0,i)/""#V2(i,2i)/...#

где i - значение, присвоенное вами параметру смещения данных в рабочем листе для печати
V1, V2 и т. д. - первый, второй и т. д. подзаголовки. Приведенный выше формат по умолчанию оставляет одну пустую строку перед первой записью, печатаемой под последним уровнем подзаголовка.

8.5.4. Параметры ключа сортировки

Вы можете определить до 4 ключей сортировки, которые будут использованы в иерархическом порядке. Первый ключ сортировки определяет начальную последовательность сортировки, второй ключ сортировки обеспечивает порядок расположения записей, имеющих одинаковый первый ключ и т. д. Например, в списке, отсортированном по автору (первый ключ), вы можете расположить записи, относящиеся к данному автору, а также по названию, задав название как второй ключ сортировки.

Нужно помнить, что существует большая разница между первым ключом и вторым и ключами более высокого уровня. Если в записи файла документов нет поля, соответствующего первому ключу, эта запись не появится в листинге. Например, авторский указатель включает только те записи, которые действительно имеют автора. Однако, в тех случаях, когда вы хотите быть уверены, что все записи появятся в листинге, вы должны обеспечить адекватные альтернативы для тех записей, в которых первый ключ может отсутствовать. В этом вам поможет команда IF языка форматирования (см. раздел 3.2. "Язык форматирования"). Записи, в которых отсутствуют поля, соответствующие ключам второго и более высоких уровней, будут отсортированы как пустые (т. е. они появятся в начале списка) и будут распечатаны.

Для каждого ключа вы должны ввести три параметра, описанных ниже.

8.5.4.1. Таблица выбора полей

Таблица выбора полей (ТВП) определяет содержимое ключа сортировки и, в то же время, если он используется, соответствующий подзаголовок (помните, что вы можете определить больше ключей сортировки, чем подзаголовков).Разница между ключом сортировки и подзаголовком состоит в том, что первый используется для расположения записей в определенном порядке, а второй используется для печати. Хотя ключ сортировки содержит те же данные, что и соответствующий ему подзаголовок, эти данные могут быть представлены в различной форме. Например, ключ сортировки всегда представлен большими буквами; если поле, из которого он извлечен, содержит средства изменения порядка сортировки, то ключ представлен в сортировочной форме поля; и т. д. Подзаголовок, с другой стороны, выводится в таком виде, как он определен, т. е. он не будет переведен в большие буквы, если вы не зададите этот перевод в формате ТВП. Более того, подзаголовок всегда представлен в печатаемой форме поля, если оно содержит средства изменения порядка сортировки.

ТВП подробно описана в разделе 3.4. "Таблица выбора полей (ТВП)", и, предполагается, что вы уже знакомы с этой методикой. Вы можете ввести имя ранее определенной ТВП или ввести ее непосредственно. Если вы хотите использовать ранее определенную ТВП, введите имя, которому предшествует знак (@). Знак @ говорит CDS/ISIS, что это имя, а не ТВП.

Для определения ТВП вы должны ввести три компоненты, разделенные пробелами в следующем порядке: индикатор поля, технику индексирования и формат. Если вам нужно ввести многострочную ТВП, отделите каждую строку знаком +, окруженным пробелами.

Вот два простых примера: первый предлагает CDS/ISIS использовать ранее определенную ТВП, названную АВТОР; второй предлагает системе создать ключ сортировки из поля 10 и ключ сортировки из каждого дескриптора поля 20.

@АВТОР
1 0 V10 + 1 2 V20

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

1 0 V10 + 2 2 V20

В этом случае, если вы определяете формат подзаголовка, то эта метка должна учитываться в формате. Для этой ТВП вы должны использовать V1 для ссылки на поле 10 и V2 для ссылки на поле 20. Это может быть полезным, например, при печати подзаголовков с использованием различных типов шрифтов.

Как уже упоминалось, если одно или более полей, используемых в ТВП, содержат средства изменения порядка сортировки, CDS/ISIS учитывает эти средства при построении ключей сортировки.

8.5.4.2. Индикатор обработки подзаголовка

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

Введите следующее:

0 или 2 - для генерации единственного ключа: в этом случае ключ строится из первого элемента, созданного таблицей выбора полей. Например, если вы сортируете по автору, вы можете использовать эту опцию для определения того, что вы хотите использовать в качестве ключа сортировки только первого автора, и, следовательно, что данная запись должна быть распечатана только под первым автором;

1 или 3 - для генерации многократного ключа: в этом случае CDS/ISIS построит по одному ключу сортировки из каждого элемента, созданного таблицей выбора полей. Эта опция используется обычно для продуцирования указателей. В этом случае запись, из которой извлекаются ключи, будет распечатана под каждым подзаголовком. Например, вы можете использовать генерацию многократного ключа для создания авторского указателя или предметного указателя. Если вы зададите генерацию многократного ключа на более чем одном уровне, CDS/ISIS создаст все требуемые комбинации.

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

8.5.4.3. Длина ключа

Этот параметр определяет длину ключа сортировки для данного сеанса печати. Вы должны выбрать подходящую длину в зависимости от поля, из которого извлекаете ключ, для создания верной последовательности. Например, если вы определите длину ключа для названия в 10 символов, CDS/ISIS будет сортировать только первые 10 символов каждого названия. Это может иметь следующие последствия: во-первых, все названия, которые отличаются только начиная с одиннадцатой позиции будут расположены в неотсортированном порядке, поскольку CDS/ISIS будет рассматривать их как равные; во-вторых, если название является одним из подзаголовков, то только первое из них будет напечатано, поскольку CDS/ISIS распечатывает подзаголовки, только если есть изменения в соответствующем ключе сортировки.

С другой стороны, вы не должны задавать слишком большую длину ключа, поскольку это увеличит размер файла и время, требуемое для сортировки. Более того, существует максимальный предел на общую длину ключей сортировки, который не может превышать 256 символов и на размер записи HIT файла, который не может превышать 510 символов. Так, если вам нужно провести сортировку по более, чем одному ключу, вы должны убедиться, что общая длина ключа (для всех ключей) не превышает 256 символов и что сумма длин ключей и длин соответствующих им подзаголовков не превышает 510 символов. Если это случится, CDS/ISIS выдаст предупреждающее сообщение и проигнорирует записи, не помещающиеся в предельные размеры.

8.5.5. Подтверждение правильности заполнения рабочего листа для сортировки.

После заполнения последнего поля рабочего листа для печати, CDS/ISIS предложит вам подтвердить правильность его заполнения. Подсказка появится внизу экрана:

Подсказка 105: CR - следующая строка М - модифицировать С - отменить Х - выход

Ответ на подсказку:

CR - для подтверждения правильности заполнения рабочего листа. CDS/ISIS после этого начинает печатать.

M - для изменения содержимого одного или более полей. CDS/ISIS в этом случае разместит курсор в первом поле и вы сможете выполнить необходимую корректировку.

С - для отмены сеанса печати и возврата в меню хХPRT.

Отметим, что при корректировке полей вам следует поступать так же, как и при редактировании записи при вводе данных (см. раздел 3.5.2. "Редактирование записи").

8.6. Пользовательский рабочий лист для сортировки

The UNESCO micro CDS/ISIS Software

Если вы вводите имя в поле "Имя рабочего листа" для сортировки рабочего листа при печати, CDS/ISIS выведет на экран выбранный вами рабочий лист для сортировки вместо системного рабочего листа. Он имеет тот же вид и содержит те же поля, что и системный рабочий лист для сортировки хYSRT, описанный выше. Разница заключается в том, что пользовательский рабочий лист будет, конечно, иметь все (или большинство) полей заполненными, что и является причиной создания пользовательского рабочего листа.

По этой причине CDS/ISIS не будет размещать курсор в первом поле, а сразу предложит вам подтвердить правильность заполнения рабочего листа. Подсказка появляется та же (105), что и при заполнении системного рабочего листа xYSRT (см. выше).

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

8.7. Создание и обновление пользовательских рабочих листов для печати и сортировки

The UNESCO micro CDS/ISIS Software

Для создания пользовательского рабочего листа необходимо выбрать ISISUTL в главном меню хХISI. Когда на экране появится меню хХМ1, необходимо выбрать опцию N для вывода на экран меню хХМ2, а затем опцию D этого же меню для получения копии желаемого системного рабочего листа (хYPRT или хYSRT), которому вы присваиваете имя по своему выбору.

Затем редактируйте копию рабочего листа (используя редактор рабочего листа, описанный в разделе 15.2. "Редактирование рабочего листа") для определения релевантных значений по умолчанию. Вы должны помнить, что CDS/ISIS резервирует ограниченную область памяти для рабочих листов. Эта область содержит все требуемые имена полей, значения по умолчанию, HELP сообщения и шаблоны. Поскольку стандартный системный рабочий лист xYPRT содержит пространные help сообщения, область памяти рабочих листов почти заполнена. Поэтому, если вы намереваетесь добавить длинные значения по умолчанию, вам следует удалить эти help сообщения, поскольку вы создаете свою собственную копию рабочего листа, чтобы освободить память для значений по умолчанию. Для внесения постоянных изменений в пользовательский рабочий лист, необходимо выбрать ISISUTL в главном меню хХISI. Когда на экране появится меню хХМ1, выбирете опцию N для вывода на экран меню хХМ2. Затем надо выбрать опцию Е в этом же меню для редактирования вашего рабочего листа (используется редактор рабочего листа).

8.8. Примеры печати

The UNESCO micro CDS/ISIS Software

Опишем два примера печати, произведенной с помощью ISISPRT из библиографической базы данных, которые помогут вам лучше понять отношение между различными параметрами печати и сортировки. В этой базе данных поле 70 (повторяющееся) содержит авторов, а поле 24 содержит название.

Первый листинг был получен с параметрами, данными на рисунках 44 и 45. В листинге, приведенном на рисунке 48, отметим смещение записей по отношению к подзаголовкам, и факт, что подзаголовок Bosian, G. распечатан только один раз, а под ним распечатаны две записи. Также отметим, что, поскольку в первом ключе сортировки индикатор обработки подзаголовка равен 1, запись 1 появляется как под Franco, C.M., так и под Magalhaes, A.C.

Второй листинг был напечатан с параметрами, приведенными на рисунках 46 и 47.

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

В листинге, приведенном на рисунке 49 отметим размещение ссылок для подзаголовка Bosian,G. на той же строке и использование формата подзаголовка для подавления пустых строк после подзаголовка. В этом листинге мы могли также подавить ведущие нули в MFN с помощью определения следующей ТВП для второго ключа сортировки:

2 0 '<',f(mfn,1,0),'=',mfn(5),'>'

В этом случае формат ТВП выдает MFN дважды: без ведущих нулей (для печати) и с ведущими нулями (для сортировки), это достигается с помощью введения средств изменения порядка сортировки прямо в ТВП. Например, приведенный выше формат выдаст для MFN1 следующее: (1=00001), что в соответствии с порядком применения средств изменения порядка сортировки приведет к использованию 1 при печати и 00001 при сортировке. Отметим, что использование просто f (mfn, 1, 0) в ТВП в общем случае не даст ожидаемых результатов, потому что CDS/ISIS сортирует числа слева направо (и следовательно отсортирует 10 перед 2). Использование средств изменения порядка сортировки, однако, заставит сортировать все MFN как пятизначные числа (т. е. 00002, 00010) и, следовательно, даст правильную последовательность при печати MFN без ведущих нулей.

Часто возникающей проблемой является создание печатных каталогов с одним или более указателями. В этом случае, вся запись печатается в главном листинге, а указатели обычно ссылаются на этот листинг (например, предметный указатель, такой как Adult education будет ссылаться на все записи, относящиеся к этой теме). Проблемой здесь является выбор элемента, который используется для ссылки из указателя к записям, распечатанным в основном листинге. Если ваш основной листинг отсортирован по MFN, проблема решается легко: вы можете в качестве ссылки использовать MFN (как в примере, приведенном на рис. 49). Однако, если ваш основной листинг отсортирован по названию, вы не сможете использовать MFN как ссылку (т. к. MFN не будут расположены последовательно), и вам придется использовать название (как в примере, приведенном на рис. 48). Это, однако, потребует больше страниц и результат возрастет в цене, что не всегда приемлемо. CDS/ISIS позволяет вам решить эту проблему путем совместного использования средств ISISPRT и ISISXCH следующим образом:

  1. используйте ISISPRT для подготовки HIT файла, отсортированного в желаемой последовательности вашего основного листинга (используйте все необходимые ключи сортировки); вам также следует убедиться, что каждая запись даст один и только один первый ключ сортировки путем определения значения 0 в поле индикатора обработки подзаголовка; определите значение NULL в поле "Имя файла печати", поскольку этот сеанс предназначен только для создания HIT файла;
  2. используйте ISISXCH для экспорта записей с использованием HIT файла: в рабочем листе для экспорта определите Y в поле "HIT файл";
  3. определите новую базу данных, которая будет использоваться для создания каталогов;
  4. используйте ISISXCH для импорта экспортированных записей во вновь созданную базу данных: в этой базе данных последовательность MFN соответствует последовательности вашего основного листинга;
  5. используйте ISISPRT для создания каталогов и указателей из этой базы данных.

Рисунок 44

Рисунок 44

Рисунок 45

Рисунок 45

Рисунок 46

Рисунок 46

Рисунок 47

Рисунок 47

Примеры печати

(Сортировка по автору)

Рисунок 48. Пример листинга (сортировка по автору)

Рисунок 48. Пример листинга (сортировка по автору)

Пример листинга авторского указателя

Рисунок 49. Пример авторского указателя

Рисунок 49. Пример авторского указателя

9. ISISINV - Программа работы с инвертированным файлом

The UNESCO micro CDS/ISIS Software

Программа ISISINV выполняет различные операции на инвертированном файле. Она позволяет создавать (опция F), изменять (опция U), создавать резервную копию (опция В), восстанавливать (опция С) или печатать (опция Р и D) инвертированный файл.

Заметим, что все опции ISISINV применяются для текущей базы данных, если таковая имеется. Если БД, с которой вы хотите работать, отличается от одной из выбранных, используйте опцию C из меню xXISI для переключения нa требуемую базу данных. Если ничего не выбрано, CDS/ISIS попросит вас выбрать базу перед тем как вывести на экран меню xXG1 (см. раздел 5.1. "С - Смена базы данных").

9.1. Меню xXG1

На рис. 50 представлены опции, отображенные через меню xXG1

Рис. 50. Меню EXG1: Средства инвертирования файла

B - создание резервной копии инвертированного файла.

Эта опция превращает инвертированный файл в файл связей (смотри ниже опцию F), который вы в последствии можете использовать при перезагрузке инвертированного файла, используя опцию С. Заметим, что термины без пометок, т. е. те которые не есть поисковыми, удаляются во время операции сохранения. CDS/ISIS будет показывать на экране термины, которые удаляются, если таковые имеются. Для того, чтобы удалять термины без пометок из инвертированного файла, файл связей должен быть обновлен. Для этого используют опцию С сразу же после сохранения. Это обеспечит, также, реорганизацию и уплотнение инвертированного файла и уничтожение всего неиспользованного пространства, которое может появляться при изменениях до последней реорганизации.

В зависимости от размера инвертированного файла, выполнение этой опции может длиться некоторое время. Когда создание резервной копии завершается, CDS/ISIS выведет следующие сообщения:

Сообщения. Подсказка 235

(где nt - число терминов в словаре, np- суммарное число помеченных терминов для всех терминов в словаре. Отношение np/nt дает среднее число помеченных терминов).

Нажатие клавиши CR возвращает в меню xXG1 или можно не- посредственно выбрать любую имеющуюся опцию меню xXG1 (X возвращает в главное меню xXISI).

С - загрузка инвертированного файла

Эта опция создает инвертированный файл из файла связей (смотри опцию F ниже).

Ее можно использовать после опции S - завершить генерацию инвертированного файла, или после опции B востановление (и, следовательно, реорганизация) инвертированного файла. Когда используется эта опция для восстановления Инвертированного файла из созданной резервной копии опции В, вы должны убедиться, что не было сделано никаких изменений в главном (мастер) файле с тех пор, как был сохранен инвертированный файл.

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

В зависимости от размера инвертированного файла, выполнение этой опции может длиться некоторое время. Когда создание резервной копии завершается, CDS/ISIS выведет следующие сообщения:

Сообщения. Подсказка 246

(где nt- число терминов в словаре, np- суммарное число помеченных терминов для всех терминов в словаре. Отношение np/nt дает среднее число помеченных терминов).

Нажатие клавиши CR возвращает в меню xXG1 или можно непосредственно выбрать любую имеющуюся опцию меню xXG1 (X возвращает в главное меню xXG1).

D - Печать дампа инвертированного файла

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

Распечатка не отправляется прямо на печать, а хранится на диске в файле с именем IFLIST.LST, который вы можете распечатать позже, когда вам будет удобно. Заметим, что для больших баз данных, эта распечатка может быть обьемистой и занимать соответственно много времени. Вы должны поэтому использовать эту опцию с осторожностью.

Очень хорошие распечатки, дающие только словарь терминов, могут быть получены, если использовать опцию Р.

На рис. 51 показан фрагмент распечатки, где использована эта опция.

Рис. 51. Пример дампа инвертированного файла

Каждый термин описан двумя числами: первое - простая последовательность терминов, второе - частота встречаемости термина в базе данных. Под каждым термином, CDS/ISIS распечатывает все вхождения термина.

Показан также относительный адрес в файле IFP, где размещен список пометок. Например, пятый термин в списке есть ADULT и он встречается 4 раза. Список пометок начинается в 3 блоке ответвления 187(3/187) в файле IFT. Каждая пометка дает MFN записи, в которой термин встречается, идентификатор поля, количество встречаний и последовательный номер термина в поле, из которого он был выделен. Например, первая пометка распечатанная для ADULT есть 85/24/1/4, что значит, что ADULT встречается в записи 85, поле 24, встречается 1 раз и что ADULT есть 4-е слово в этом поле. Полное рассмотрение этой темы см. в разделе 3.4.2. "ТВП для инвертированного файла".

Когда списки закончатся, CDS/ISIS выведет следующее сообщение:

Подсказка 233: Сброс инвертированного файла завершен----->

Нажатие клавиши CR возвращает в меню xXG1, где необходимо выбрать любую опцию меню xXG1 (X возвращает в главное меню xXISI).

F - Создать заново инвертированный файл .

Эта опция генерирует инвертированный файл данной базы данных.

Обычно вы не будете использовать эту опцию, в ней нет надобности.

На самом деле CDS/ISIS снабжен функцией обновления инвертированного файла, которая работает намного быстрее чем восстановление всего инвертированного файла каждый раз, когда вы модифицируете или прибавляете записи в базе данных (смотри опцию U ниже).

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

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

Процесс генерации инвертированного файла состоит из трех шагов:

  1. создание файла связей;
  2. ортировка файла связей;
  3. загрузка отсортированного файла связей в инвертированный файл.

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

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

Третий шаг может быть выполнен один раз, используя опции G, S и С в указанном порядке. Эта возможность используется для больших баз данных, где полная генерация инвертированного файла может требовать много времени и значительного пространства на диске. Заметим, что в этом случае вы не должны делать изменения в главном файле (сложение, модификация или удаление любой записи) до тех пор, пока не будет выполнен последний шаг.

Вы должны знать, что CDS/ISIS автоматически не удаляет файлы связей (LN1, LN2, LK1 и LK2). Вы можете удалить их вручную в любое время, после того как завершится генерация инвертированного файла или, если вы предпочитаете генерировать инвертированный файл по трем шагам, то вы можете удалить несортированные файлы связей (LN1 И LN2) после выполнения опции S и перед выполнением опции С.

Перед началом генерации, CDS/ISIS подскажет вам, как ввести диапазон MFN которые будут инвертироваться:

Подсказка 247: Границы MFN?

Обычный ответ на эту подсказку есть CR, тогда будет инвертироваться вся база данных. Если вы ввели актуальный диапазон, например 1/10, то тогда только эти указанные записи будут инвертироваными и следовательно поисковыми. Вы можете использовать эту особенность при тестировании вашей ТВП инвертированного файла.

CDS/ISIS будет информировать вас о шаге, который она выполняет, путем вывода соответствующих информационных сообщений на экран.

G - Генерировать файл актуализации

Эта опция генерирует файл связей как показано в опции F ранее. Во- первых, вы должны ввести диапазон MFN которые будут инвертированы:

Подсказка 247: Границы MFN?

Обычный ответ на эту подсказку есть CR, тогда будет инвертироваться вся база данных. Если вы ввели актуальный диапазон, например 1/10, то тогда только эти указанные записи будут инвертированными. Эта возможность реализована для цели тестирования ТВП инвертированного файла, посредством чего вы можете переставлять порции главного файла для того, чтобы наглядно проверить результирующие файлы связей, чтобы определить какие из генерированных терминов поиска правильны.

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

CDS/ISIS затем отобразит ТВП его использование для перестановки и выдаст следующее информационное сообщение:

Сообщения. Подсказка 244

(где ns-число терминов длинною до 10 символов, nl-число терминов длинной более чем 10 символов).

Нажатие клавиши CR возвращает в меню xXG1, где можно выбрать любую действительную опцию xXG1 (X возвращает в главное меню xXISI).

L - Сменить язык диалога.

Позволяет вам изменить язык системных меню и сообщений (см. раздел 1.4.2. "Многоязыковый диалог").

Р - Печать словаря терминов доступа.

Эта опция выдает распечатку терминов поискового словаря. Для каждого термина CDS/ISIS отобразит число помеченных терминов.

Заметим, что распечатка не посылается на принтер, а хранится на диске в файле названном IFLIST.LST, который вы можете распечатать в любое удобное вам время.
На рис. 52 дан пример распечатки, выдаваемой этой опцией.

Рис. 52. Пример распечатки словаря

Когда распечатка завершится, CDS/ISIS выдаст следующее.

Подсказка 234: Печать словаря завершена

Нажатие клавиши CR возвращает в меню xXG1, где можно выбрать любую действительную опцию xXG1 (X возвращает в главное меню xXISI).

S - Сортировать файл актуализации

Эта опция сортирует файлы связей созданные опцией G.
Сортированный файл связей может затем быть загружен, используя опцию С.

Пока выполняется эта опция, CDS/ISIS выдает следующие информационные сообщения и подсказки:

Сообщения. Подсказка 245

Сообщение 253 и 254 являются взаимно-исключающими: 253 используется, если соответствующий файл связей пустой, иначе сообщение 254, говорит вам сколько записей (nr) было отсортировано. Сообщение 255 говорит вам, что требуется nl обьединенных уровней. Сообщение 254 и 257 используется только если опция S выполнится непосредственно после опции G (или пока выполнится опция F), так как эта информация действительна только в этом случае. Число обьединенных уровней nl указывает на продолжительность сортировки.

Процесс сортировки каждого файла связи для коротких или длинных терминов совпадает. На протяжении первого шага, названного фазой 0, записи файла связей сортируются в группы такой длины какая может находиться в памяти.

Если весь файл может находиться в памяти, тогда сортировка после фазы 0 считается оконченной. Иначе сортированные группы разбиваются на четыре временных рабочих файла и записи обьединяются. В зависимости от количества записей, может быть один или более шагов объединения, названных фазой 1, 2, и т. д., каждый шаг, создающий все большие группы сортированных записей будет выполняться последовательно, пока не будет создана единая группа. Сообщение 259 отображает конец каждого шага слияния. Пока фаза сортировки выполняется, CDS/ISIS отобразит индикатор слияний, отражающий работу загрузки. Этот индикатор состоит из тире (-) и звездочек(*), указывает на группу сортированных записей (под указанной * подразумевают последний сортированный рабочий файл). На каждой из фаз сортировки, количество тире и звездочек уменьшается по мере того, как все больше и больше записей сливается вместе. Сортировка оканчивается, когда четыре или меньше последовательностей остаются для слияния. Вы можете, таким образом, оценить время сортировки, наблюдая за индикатором слияний.

Когда сортировка завершится, нажмите CR для возврата в меню xXG1 или выберите любую опцию xXG1 (X возвращает в главное меню хXISI).

U - Актуализировать инвертированный файл

Эта опция модифицирует инвертированный файл для всех измененных записей файла документов, т. е. когда записи прибавлялись, удалялись или модифицировались после того, как последний раз изменялся инвертированный файл (см. раздел 3.5.5. "Обновление инвертированного файла"). Заметим, что эта опция, в отличие от опции F, не создает файлов связей.

После распечатки ТВП, CDS/ISIS обработает модифицированные записи MFN, и после завершения выдаст слудующее:

Подсказка 249: Актуализация инвертированного файла завершена

Нажатие клавиши CR возвратит в меню xXG1 или выберите любую опцию xXG1 (X возвращает в главное меню xXISI).

Если CDS/ISIS обнаружит любую аномалию на протяжении процесса модификации, он выдаст одно или более сообщений (обьяснены в разделе 3.5.5. "Обновление инвертированного файла").

CDS/ISIS обнаружила аномалию

Возвращает в главное меню CDS/ISIS-xXISI (см. раздел 5.1. "Меню xXISI").

10. ISISDEF - Программа определения базы данных

The UNESCO micro CDS/ISIS Software

Средства программы ISISDEF позволяют определить новую базу данных (опция С) или модифицировать определения существующей базы данных (опция U). Предусмотрена также опция переинициализации (очищение) базы данных (опция I).

Определение базы данных CDS/ISIS состоит из следующих компонентов:

Таблица определения полей: ТОП определяет поля записей файла документов базы данных.

Рабочие листы для ввода данных: один или более строк экранных форматов, используемых в создании и/или обновлении записей файла документов базы данных.

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

Формат выдачи данных: Формат выдачи данных определяет требования форматирования для любой интерактивной записи, отображенной на протяжении поиска или для генерации выходного продукта на печать такого как каталоги или индексы. ISISDEF позволяет создать и/или модифицировать любую из выше перечисленных компонент. Каждая компонента описывается как отдельный файл в директории базы данных.

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

Для безопасности, мы советуем вам отменять текущую базу данных перед использованием опции I (см. раздел 5.1. "С - Смена базы данных").

Для безопасности отменить текущую БД перед использованием опции I

10.1. Меню xXDEF

На рис. 53 изображены имеющиеся в распоряжении пользователя опции в главном меню xXDEF.

Рис. 53. Меню EXDEF: Средства по определению БД

С - Определение новой базы данных.

Эта опция позволяет создать новую базу данных.
Файлы базы данных создаются в директории базы данных по умолчанию, если не организован файл dbn.PAR, определяющий, где они должны создаваться. Следовательно, если вы хотите хранить файлы базы данных в различных директориях, в директории по умолчанию или на различных дисководах вы должны первым делом создать файл dbn.PAR (см. раздел 2.1.2. "dbn.PAR: Параметры базы данных").

Подсказка 001: Имя базы данных

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

Что касается имен, то, если возможно, старайтесь избегать имен баз данных, имеющих X или Y во второй позиции (например BYBLIO). Использование таких имен вызовет создание рабочего листа ввода данных в директории системных рабочих листов, а не в директории базы данных. Хотя это может быть неудобным, это не помешает нормальной работе базы данных.

Подсказка  293:  База данных уже существует.
Удалить все файлы. (Y/N)?

Ответ Y (да), только если вы хотите переопределить полностью базу данных.

После того, как вы введете имя базы данных, СDS/ISIS попросит вас создать соответствующее ТОП, рабочий лист по вводу данных по умолчанию, формат отображения (вывода) по умолчанию и ТВП для инвертированного файла. Это делается путем активизации различных редакторов, в порядке указанном ниже:

Таблица определения полей: ТОП описана в разделе 3.1. "Таблица определения полей (ТОП)" и заполняется посредством строкового редактора (см. раздел 14. "Строковый редактор").

Рабочие листы по вводу данных по умолчанию: Эти рабочие листы заполняются посредством редактора рабочих листов, описанного в разделе 15. "Редактор рабочих листов". По умолчанию рабочий лист имеет то же имя, что и база данных и автоматически выбирается, когда вы выбираете базу данных. Вы можете позже создать дополнительные рабочие листы по вводу данных, если потребуется, используя опцию U.

Формат вывода по умолчанию: Форматы вывода описаны в разделе 3.2. "Язык форматирования" и заполняются посредством редактора поля (см. раздел 13. "Редактор поля"). По умолчанию формат имеет то же имя что и база данных, он автоматически выбирается, когда вы выбираете базу данных. Вы можете, если необходимо, создать дополнительные форматы вывода, используя опцию U.

Таблица выбора полей инвертированного файла: ТВП определяет содержимое инвертированного файла для базы данных. Она имеет то же имя, что и база данных. Вы можете создать дополнительную ТВП, для использования сортировки при выводе на печать результатов поиска, посредством опции U. ТВП описана в разделе 3.4. "Таблица Выбора Полей (ТВП)", она создается посредством строкового редактора (см. раздел 14. "Строковый Редактор").

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

Первый редактор, названный строковым редактором, есть редактор для ТОП. Верхняя строка экрана содержит следующую информацию:

Строковый редактор. Верхняя строка экрана

Как только вы завершите ТОП, CDS/ISIS активизирует редактор рабочих листов. Экран очистится и нижняя строка экрана будет содержать следующую информацию:

Активированный редактор рабочих листов. Нижняя строка экрана

Последняя строка экрана содержит имя рабочего листа и номер страницы (XXXX/1). По умолчанию, рабочие листы по вводу данных имеют те же имена, что и база данных.

Когда определение рабочих листов по вводу данных завершено, CDS/ISIS активизирует редактор поля для ввода по умолчанию формата вывода. Нижняя строка экрана покажет это:

Ввод данных завершен. Нижняя строка экрана

Формат по умолчанию, подобен рабочему листу по вводу данных, имеет то же имя что и база данных. Если вы еще не полностью хорошо знакомы с языком форматирования CDS/ISIS, вы можете оставить это поле пустым, просто нажав CR. После того как вы введете некоторые записи в базу данных, вы можете затем строить диалоговый формат, используя альтернативные опции F и B программы ISISRET (см. раздел 7.1. "Меню хХGEN").

После создания текущего формата, CDS/ISIS активизирует строковый редактор снова для определения ТВП. Нижняя строка экрана содержит следующую информацию:

После создания текущего формата CDS/ISIS активизирует строковый редактор. Нижняя строка экрана

Заметим, что эта ТВП имеет то же имя, что и база данных. К тому же в этом случае, вы можете оставить это поле пустым, нажав дважды CR, как только это будет необходимо после того, как вы ввели несколько записей в базу данных. Вы можете, поэтому, определить это поле как раз перед тем, когда будете инвертировать базу данных первый раз.

I - Реинициализация базы данных

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

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

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

CDS/ISIS требует подтверждения этой опции использованием следующих подсказок:

Подсказка 143: Файл документов существует и будет очищен, (Y/N)?

Ответьте Y для уничтожения файла документов. После этого все существующие записи в базе данных больше не доступны и следующий MFN, присваиваемый БД, будет сброшен в 1 (строка состояния меню будет показывать МАХ МFN:0). Любой другой ответ, оставит без изменений файл документов.

Подсказка 144: Инвертированный файл существует и будет очищен, (Y/N)/?

Ответьте Y для уничтожения инвертированного файла.

Любой другой ответ оставит его без изменений.
Заметим, что так можно очищать инвертированный файл, оставляя без изменений файл документов, нажатием CR отобразится подсказка 143 , Y - подсказка 144.

L - Сменить язык диалога

Позволяет выбрать или изменить язык системных сообщений и меню. См. раздел 1.4.2. "Многоязыковый диалог".

U - Изменить описание существующей базы данных

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

Различные опции отображены при использовании меню хХDBU, которое описано в следующем разделе.

Х - Выход

CDS/ISIS возвращает управление в главное меню хХISI (см. раздел 5.1. "Меню хХISI").

10.2. Меню хХDBU.

На рис. 54 изображено меню хХDBU, в которое вы попадаете всякий раз, когда выбираете опцию U в меню хХDEF.

Это меню содержит специальные опции создавать или модифицировать (опции В, Е и Н), копировать (опции С, F и I), удалять(опции D, G и J), и каждую определенную составляющую базы данных (исключая ТОП, которая таким образом может быть скопирована и удалена).

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

Рис. 54: Меню EХDBU: Служебная программа определения БД

CDS/ISIS контролирует доступ к различным файлам и будет проверять следующее:

1. Любой ли файл, копируемый, модифицируемый или удаляемый вами, существует и относится к базе данных; если это не так, то будет выдано одно из следующих предупреждений:

Подсказка 306: Файл уже присвоен другой базе данных. CR для возврата в меню

Подсказка 316: Файл не найден!

Подсказка 265: Рабочий лист не найден! Нажмите любую клавишу для возврата в меню.

Подсказка 316 или 265 выдается, когда CDS/ISIS не может определить местонахождение файла с тем именем с которым вы его определили. Подсказка 306 выдается, если вы попытались модифицировать или удалить файл не относящийся к базе данных. Нажатие CR восстановит меню на экране.

2. Удаляете ли вы текущий рабочий лист, или текущий формат, или ТВП инвертированного файла; если вы попытаетесь это сделать, CDS/ISIS выдаст одно из следующих сообщений:

Подсказка 285: ТВП инвертированного файла не может быть удален!

Подсказка 292: Текущий рабочий лист по умолчанию не может быть удален!

Подсказка 312: Текущий формат по умолчанию не может быть удален!

Нажатие CR, в любой из этих подсказок, восстановит меню на экране.

A - Изменить таблицу определения полей

Эта опция позволяет вам модифицировать ТОП. CDS/ISIS восстанавливает ТОП, отображая ее на экране, и активизирует строковый редактор. См. раздел 3.1. "Таблица Определения Полей (ТОП)" для описания ТОП и раздел 14. "Строковый редактор" для описания редактора строк.

B - Создать/изменить рабочий лист.

Эта опция позволяет модифицировать существующие рабочие листы по вводу данных и/или создать дополнительные:

Подсказка 011: Имя рабочего листа:

Введите имя (1-5 символов) рабочего листа, который вы хотите создать или редактировать.

CDS/ISIS, сначала, проконтролирует существует ли уже такой рабочий лист. Если существует, то он отобразит его, если его нет, то он будет предполагать, что вы хотите создать новый. Затем он активизирует редактор рабочих листов (см. раздел 15. "Редактор рабочих листов").

С - Копирование рабочих листов.

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

Подсказка 313: Откуда копировать?

Введите имя (1-5 символов) исходного рабочего листа, который вы хотите копировать.

Подсказка 314: Куда копировать?

Введите имя (1-5 символов) выходного рабочего листа, который вы хотите создать.

CDS/ISIS восстановит исходный рабочий лист и скопирует его в выходной рабочий лист, затем он активизирует редактор рабочих листов (см. раздел 15. "Редактор рабочих листов").

D - Удаление рабочего листа

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

Подсказка 011: Имя рабочего листа?

Введите имя рабочего листа, который вы хотите удалить.

E - Создать/изменить таблицу выбора полей.

Эта опция позволяет вам модифицировать существующую Таблицу выбора полей и/или создать ее.

Подсказка 295: Имя ТВП:

Введите имя (1-6 символов) ТВП, которую вы хотите создать или модифицировать.

CDS/ISIS проконтролирует, существует ли уже такая ТВП. Если существует, то он отобразит ее, если ее нет, то он будет предполагать, что вы хотите создать еще одну новую ТВП. Затем активизируется строковый редактор, (описанный в разделе 14. "Строковый редактор").

F - Копировать таблицу выбора полей

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

Подсказка 313: Откуда копировать?

Введите имя исходной ТВП, которую вы хотите копировать.

Подсказка 314: Куда копировать?

Введите имя выходной ТВП, которую вы хотите создать. CDS/ISIS восстановит исходную ТВП и скопирует ее в выходную ТВП, затем он активизирует строковый редактор (см. раздел 14 "Строковый редактор").

G - Удалить таблицу выбора полей

Эта опция позволяет вам удалять ТВП, в которых нет надобности.

Подсказка 295: Имя ТВП:

Введите имя ТВП для удаления.

Н - Создать/изменить формат печати

Эта опция позволяет модифицировать существующий формат вывода на экран и/или создать дополнительный.

Подсказка 311: Имя формата:

Введите имя формата для его создания или модификации.

CDS/ISIS проконтролирует, существует ли уже такой формат. Если существует, то он отобразит его, иначе он предположит, что вы хотите создать еще один новый. Затем активизируется редактор поля, описанный в разделе 13. "Редактор поля".

I - Копировать формат печати

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

Подсказка 313: Откуда копировать?

Введите имя исходного формата, который вы хотите копировать.

Подсказка 314: Куда копировать?

Введите имя выходного формата, который вы хотите создать.

CDS/ISIS вызовет исходный формат и скопирует его в выходной формат, а затем активизирует редактор поля.

J - Удалить формат печати

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

Подсказка 311: Имя формата:

Введите имя формата для удаления.

К - Вывести список файлов, определяющих базу данных

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

Имена файлов отражаются на экране сгруппированными по типу, им предшествует номер, на который вы ссылаетесь при ответе на следующую подсказку:

Подсказка 305

Заметим, что С, D и М могут быть введены как большими так и маленькими буквами, и поэтому пространство между буквой и номером файла необязательно (например М1 и m1 являются эквивалентными ответами)

На рис. 55 показан пример ответа на эту опцию. В этом примере, вы можете ввести m1 для редактирования рабочих листов CDS,d3 для удаления формата CDS1 или С4 для того, чтобы сделать копию ТВП базы CDS.

Рис. 55: Пример отображения опции K на экране

X - Выход

Возвращает в меню хХDEF (см. раздел 10. "Меню хХDEF").

11. ISISUTL - Программа системных утилит

The UNESCO micro CDS/ISIS Software

Служебная программа ISISUTL содержит системные утилиты, позволяющие создать и редактировать меню (опция М), системные рабочие листы (опция N), печатать меню и рабочие листы (опция Р), определять или модифицировать атрибуты экрана (опция А) и печатать файлы системных сообщений (опция D).

Системные утилиты

11.1. Меню хХМ1.

На рис. 56 показаны опции, предоставляемые меню хХМ1.

Рис. 56: Меню EXM1 - служебная программа системных утилит

A - отобразить/модифицировать атрибуты

Эта опция позволяет модифицировать атрибуты экрана, используемые CDS/ISIS, как для монохромных так и для цветных дисплеев.
CDS/ISIS использует 8 экранных атрибутов, которые закодированы следующим образом:

-2 Фон экрана - изменяется каждый раз, когда экран или область данных считывается (строки 1-22), вы можете изменить фон, выбрав, либо светлые символы на темном фоне, либо темные символы на светлом фоне. На цветных экранах, этот атрибут определяет цветной фон.

-1 Область сообщений - очищается каждый раз, когда область сообщений считывается (строки 22-24).

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

1    Обратное изображение

2    Полужирный (шрифт)

3    Подчеркивание

4    Мигание

5    Невидимый. Поля, определенные с этим атрибутом, не будут видимыми в течение ввода данных. Это может использоваться для защиты секретных данных.

Атрибуты с 1 по 5 обычно используются для отображения допустимых полей в рабочих листах и меню. Язык программирования CDS/ISIS Паскаль, также позволяет вам использовать любой из этих атрибутов отображения данных.

Когда вы выбирете эту опцию, CDS/ISIS покажет на экране текущее значение, определенное для каждого, выше указанного атрибута, вместе с соответствующими кодами атрибутов, и выдаст подсказку:

Подсказка 372:  Введите тип модифицируемого атрибута (-2/5), или CR для выхода

Ответ на подсказку следующий:

CR для отмены опции выбора установки атрибута. Если вы модифицировали один или более атрибутов, вас затем спросят, хотите ли вы, чтобы ваши модификации постоянно хранились:

Подсказка 373:  Хотите ли вы сохранить эти атрибуты (Y/N)?

Если вы ответите Y (да) на эту подсказку, CDS/ISIS будет использовать, начиная с этого момента и далее, новое множество атрибутов. Заметим, что установленные старые атрибуты будут утеряны. Это, т. о., является хорошим способом начальной установки атрибутов, которая появляется на экране первый раз, когда вы используете опцию А в этом меню, так, что вы можете переопределить ее далее, при необходимости (вы можете использовать функцию "печать экрана", если подсоединен принтер).

Заметим, что CDS/ISIS хранит коды атрибутов в БД системных сообщений соответствующей текущему выбранному языку диалога т. о., что набор атрибутов использованных CDS/ISIS, ищется во время начала выполнения программы с текущим языком, поэтому, вы должны убедиться, что всякий раз, когда вы используете эту опцию для текущей модификации атрибутов, сначала выбран подходящий язык общения. Более того, если ваша система допускает множество различных языков общения для каждого пользователя или группы пользователей, вы должны также переопредилить тот же набор атрибутов для каждого возможного текущего языка.

-2/5 для модифицирования одного из атрибутов. Например, введите -2, если вы хотите модифицировать фон экрана. В этом случае CDS/ISIS начнет отображать все возможные установки для выбранных атрибутов. Каждая строка содержит код атрибута (число), за которым следует текст. Например, в тексте отображена строка и как она появляется, если был присвоен соответствующий код атрибута:

9     АВСDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmn...

отобразится синей на тёмном фоне на цветном дисплее, или более интенсивно подчеркнутой на монохромном дисплее.

В конце каждого экрана CDS/ISIS делает паузу с сообщением:

Подсказка 371:  Введите назначаемый код атрибута, Х для выхода, или CR - для продолжения:

Ответ может быть следующим:

CR перейти на следующую страницу;

X  оставить атрибут неизмененным и прекратить отображение
или

n (код атрибута) выбрать соответствующий атрибут. Например, если вы введете 9 для установки атрибута области сообщений (-1), то любой текст, отображенный там (строки (22-24), будет светло голубым на черном фоне цветного дисплея, или более интенсивно подчеркнутым на монохронном дисплее.

Примечание для VAX и WANG РС:

Невидимый атрибут (5) не действительный для этих компьютеров. Кроме того, коды атрибутов представлены двумя 1-разрядными числами, разделенными слэшами (например 1/2) и должны выбираться одинаково.

Для вашей информации: таблица, приведенная ниже, изображает установку атрибутов на оригинальной системе, поставляемой Unesco. Их применяют на монохромных экранах и следовательно не будет создаваться очень эстетичная цветная палитра на цветном экране. Опция А из этого меню поможет вам в выборе палитры согласно вашему вкусу, если вы планируете использовать CDS/ISIS с цветным экраном.

Коды атрибутов

D - Печать системных сообщений

Эта опция выдает распечатку соответствующего файла сообщений на текущем выбранном языке. Заметим, что распечатка не только отправляется на печать, но и хранится на диске в файле рабочего директория, названном хМSG.LST (где Х - код языка), который вы можете распечатать позднее, когда вам потребуется. Например, распечатка сообщений на английском языке будет хранится в EМSG.LST.

L - Сменить язык диалога

Позволяет вам изменить язык системных меню и сообщений.

М - Создать/Редактировать системные меню

Выберите эту опцию для создания и/или редактирования системных меню. Различные опции меню редактирования отображены через меню хХМ3, описанном в разделе 11.3. "Меню хХМ3".

N - Создать/редактировать системные рабочие листы

Выберите эту опцию для создания и/или редактирования системных рабочих листов. Различные опции редактирования рабочих листов отображены через меню хХМ2, описанном в разделе 11.2. "Меню хХМ2 - средства редактирования системных рабочих листов" .

Р - Печать рабочих листов/меню

Эта опция позволяет приобрести распечатку меню и/или рабочих листов (включая рабочие листы по вводу данных). Распечатка каждого рабочего листа или меню состоит из двух частей. Первая часть содержит таблицу всех параметров каждого поля. Метки колонок, в этой таблице, показаны ниже:

Tag (признак) содержит признак поля (для рабочих листов по вводу данных) или нуль (для системных рабочих листов);

Имя поля       Метка поля;

N.P.   имя позиции, т. е. строки/колонки имени поля на экране;

V.P.   значение позиции, т. е. строки/колонки значения поля;

Len длина поля. Отрицательная длина указывает прокручивающиеся поля. В этом случае абсолютное значение длины является размером окна прокрутки;

Т   тип поля;

А   атрибут поля.

За этой таблицей следует список любых текущих значений, по умолчанию, шаблонов и/или сообщений - подсказок связанных с различными полями.

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

Когда вы выберете эту опцию, CDS/ISIS первым напечатает текущий выбранный рабочий лист или меню, если возможно.
Затем вам подскажут для дополнительного печатания, если потребуется:

Подсказка 011: Имя рабочего листа

Введите CR, если больше нет меню или рабочих листов для вывода на печать или введите имя (1-5 символов) следующего пункта для печати.

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

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

X - Выход

Возвращает управление в главное меню ISISUTL.

11.2. Меню хХМ2 - опции редактирования системных рабочих листов

Это меню, (рис. 57), отображается всякий раз, когда вы выбираете опцию N в меню хХМ1 и обеспечивает набор опций для создания и редактирования системных рабочих листов.

Представлены следующие стандартные системные рабочие листы:

хYISI рабочий лист экспорта данных;

хYISO рабочий лист импорта данных;

хYPRT рабочий лист печати;

хYSRT рабочий лист сортировки.

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

Наряду с этим, вы можете также создать пользовательские рабочие листы печати и сортировки для особых приложений.

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

Внимание: Вы не должны использовать эти средства в создании или редактировании системных меню или рабочих листов ввода данных (даже если CDS/ISIS позволит вам сделать это). Если вы сделаете это, отредактированное меню и рабочий лист по вводу данных может не быть более используемым. Если вы убедились, что редактируете неправильный обьект, выйдите через С (отменить) из редактора, и оригинальная версия останется неизменной.

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

Чтобы создавать или редактировать меню, вы должны использовать возможности редактора меню, доступного через опцию М меню хХМ1.

С - создать новый рабочий лист

Эта опция позволяет вам создавать новые системные рабочие листы.

Подсказка 011: Имя рабочего листа?

Введите имя (1-5 символов) рабочего листа, которое создано.

После проверки, что больше нет рабочего листа с одинаковым введенному именем, CDS/ISIS активизирует редактор рабочих листов (см. раздел 15. "Редактор рабочих листов").

Рис. 57: Меню EXM2 - опции по редактированию системных рабочих листов

D - Копирование рабочих листов

Вы можете использовать эту опцию для создания нового рабочего листа из уже существующего. Например, если вы хотите создать пользовательский рабочий лист вывода для часто требуемого вывода на печать, вы можете использовать эту опцию для копирования системных рабочих листов печати вывода хYPRT и затем использовать редактор рабочих листов для установки требуемых величин по умолчанию для различных параметров печати. (См. раздел 8.7. "Создание и обновление пользовательских рабочих листов для печати и сортировки").

Подсказка 313: Откуда копировать?

Введите имя (1-5 символов) системного рабочего листа, который будет копироваться.

Подсказка 314: Куда копировать?

Введите имя системного рабочего листа, который вы создаете.

CDS/ISIS найдет рабочий лист, сделает его копию с определенным вами именем, затем он активизирует редактор рабочих листов (см. раздел 15. "Редактор рабочих листов").

Е - Редактор рабочих листов

Эта опция позволяет модифицировать существующие системные рабочие листы.

Подсказка 011: Имя рабочего листа

CDS/ISIS найдет запрашиваемый рабочий лист, отобразит его на экране и активизирует редактор рабочих листов (см. раздел 15. "Редактор рабочих листов").

F - Удалить рабочий лист

Эта опция позволяет вам удалить рабочий лист, если в нем нет надобности.

Подсказка 011: Имя рабочего листа

Введите имя системного рабочего листа для удаления.

R - Восстановить текущий рабочий лист

Эта опция выведет системный рабочий лист, выбранный текущим (если таковой не доступен CDS/ISIS то подскажет вам выбрать его), активизирует редактор рабочих листов и автоматически выберет опцию А редактора. Вы можете, поэтому, использовать эту опцию для ввода дополнительных полей в рабочем листе.

S - Выбрать новый рабочий лист

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

Подсказка 011: Имя рабочего листа

Введите имя (1-5 символов) рабочего листа, который будет редактироваться.

X - Выход.

Возвращает управление в главное меню ISISUTL (см. раздел 11.1 "Меню хХМ1").

11.3. Меню хХМ3.

Это меню (на рис. 58) отображается, когда вы выберите опцию М в меню хХМ1, и содержит набор опций для создания и редактирования системных меню.

Внимание: Вы не должны использовать эти средства обслуживания для создания или редактирования системных рабочих листов или рабочих листов по вводу данных (даже если CDS/ISIS позволяет вам сделать это). Если вы сделаете это, отредактированный рабочий лист по вводу данных может быть непригодным для использования! Если вы убедились, что редактируете неправильный обьект, выйдите через С (отменить) из редактора, и оригинальная версия останется неизмененной.

Чтобы создать или редактировать рабочие листы по вводу данных, вы должны использовать служебную программу ISISDEF, которая будет связывать их с соответствующей базой данных. Чтобы создать или редактировать системные рабочие листы, вы должны использовать возможности редактора рабочих листов доступного через опцию N меню хХМ1.

Рис. 58: Меню EXM3: Средства редактирования меню

С - создать новое меню

Эта опция позволяет создать новое системное меню.

Подсказка 019: Имя меню?

Введите имя (1-5 символов) меню для создания.

Затем CDS/ISIS проверяет, существует ли меню с таким именем, и активизирует редактор меню (см. раздел 16. "Редактор меню").

D - копировать меню

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

Подсказка 313: Откуда копировать?

Введите имя (1-5 символов) меню для копирования.

Подсказка 314: Куда копировать?

Введите имя меню, которое будет создано.

CDS/ISIS найдет меню и сделает его копию с определенным вами именем, затем активизирует редактор меню.

Е - редактор меню

Эта опция позволяет модифицировать существующие системные меню.

Подсказка 019: Имя меню?

Введите имя (1-5 символов) меню для редактирования.

CDS/ISIS найдет запрашиваемое меню, отобразит его на экране и активизирует редактор меню.

F - Удалить меню

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

Подсказка 019: Имя меню?

Введите имя (1-5 символов) меню для удаления.

R - Восстановить текущее меню.

Эта опция выведет текущее меню, (если таковое недоступно, CDS/ISIS подскажет вам выбрать его), активизирует редактор меню и автоматически выберет опцию А редактора. Вы можете использовать эту опцию для ввода дополнительных полей в меню.

S - Выбрать новое меню

Если вам необходимо редактировать более чем одно меню, эта опция позволит вам выбрать следующее меню для редактирования.

Подсказка 019: Имя Меню?

Введите имя (1-5 символов) меню которое будет выбрано.

X - Выход.

Возвращает управление из меню ISISUTL.

12. ISISХСН - Программа по обслуживанию файла документов

The UNESCO micro CDS/ISIS Software

Программа ISISХСН обеспечивает файл доокументов функциями сброса/восстановления, импорта/экспорта для удобства обмена данными с другими системами, включая обьединенные компьютеры.

Заметим, что программа ISISХСН требует выбора базы данных. Если она не выбрана в настоящий момент, CDS/ISIS потребует указать имя БД перед выводом меню хХСН (смотри раздел 5.1. "С-смена базы данных"). Вы можете, тем не менее, временно сменить базу данных для операций импорта и экспорта.

Выбор базы данных

12.1. Меню хХСН

The UNESCO micro CDS/ISIS Software

Возможности, обеспечивающие вывод с помощью меню хХСН, показаны на рис. 59.

В - копировать файл документов (Master file)

Эта опция выполняет сброс копии файла документов текущей базы данных.
Заметим, что не должно проводиться обновление инвертированного файла во время выполнения вами сброса файла документов. CDS/ISIS вас предупредит, если это произойдет, следующим сообщением:

Сообщение 125: Дублирование возможно только после обновления инвертированного файла

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

Файл сброса (ВКР) является единственным, хотя реальный файл документов, который состоит из двух физических (XRF и MST), требует для восстановления оба этих файла, если они случайно разрушены, используйте опцию R этого меню.

Вы можете сбросить файл документов или на жесткий диск (в текущий директорий или отличный от него) или на дискеты. В последнем случае CDS/ISIS позволяет применение многотомного файла сброса (т. е. когда файл требует более одной дискеты).

Рис. 59. Меню EXCH: Служебная программа файла документов

Если вы хотите сбросить файл документов на дискеты, вы вначале должны убедиться, что имеете на руках достаточное количество дискет, которые уже должны быть отформатированы.

Если дискета будет не таковой, CDS/ISIS предложит вам вставить новую. Вы должны пометить каждую дискету сброса датой и номером, так как в случае восстановления это необходимо, вы должны вставлять дискеты в том же порядке, в котором они использовались при выводе.

Сообщение 126: Драйвер и/или директорий сброса?

Возможные ответы даны ниже:

CR файл сброса будет записан в текущий директорий текущего устройства

a: файл сброса будет записан в корневой директорий дискеты устройства a:

\mydir\ файл сброса будет записан в директорий mydir на текущем устройстве

a:\mydir\ файл сброса будет записан в директорий mydir на устройстве a:

Если вы укажете устройство, то появится следующее сообщение:

Сообщение 127/128; 129

(где NN последовательный номер, начинающийся с 1, а D: устройство, определяемое вами).

Ответьте CR после установки дискеты (которая уже должна быть отформатирована). Приглашение 127 может повторяться, если дискета неподготовлена.

Заметим, что приглашение 127 будет также выдаваться для несьемного диска, если вы укажете неподходящее устройство в ответ на приглашение 126. Нажмите CR для старта операции сброса. Вам никогда не удастся восстановить файл сброса, если произошло прерывание процесса сброса, так как это приводит к потере данных. Во избежании этого, необходимо удалять каждый неполный файл сброса (ВКР), если он возникает.

Если вам потребуется сделать сброс на несьемный том, мы рекоменду либо не указывать устройство на приглашение 126 (завершение CDS/ISIS в случае отсутствия пространства на диске) либо, если это невозможно, перед выполнением сброса вы должны убедиться, что имеется достаточно свободного пространства на томе.

В конце операции сброса CDS/ISIS выдаст следующее информационное сообщение.

Сообщение 120...

Где:

Nm следующий MFN для назначения в базе данных,

Nr текущее число записей в базе данных (исключая удаленные записи);

Nl количество записей, удаленных с момента последней реорганизации файла документов. Вы не можете восстановить эти записи, так как данные их доступны в файле документов, но когда вы будете восстанавливать файл сброса, они будут физически удалены (см. раздел 3.5.3. "Удаление записи").

Np число записей физически удаленных, т. е. записей которые более не могут быть восстановлены,

Nb размер файла в Килобайтах;

Nf количество Килобайт, освободившихся после реорганизации файла (смотри возможность R ниже)

С - Реорганизовать файл документов (уплотнить)

Эта опция эквивалентна успешному выполнению опции В и опции R. Так как опция восстановления распаковывает файл документов, вы можете использовать эту функцию для освобождения пространства и обновления файла документов (смотри ниже опцию R).

Е - Экспорт файла системы CDS/ISIS

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

Если вы выберете эту функцию, CDS/ISIS выведет системный рабочий лист экспорта, хYISI, который содержит разные параметры, которые вы должны также поддерживать. Этот рабочий лист описан в разделе 12.2. "Рабочий лист экспорта хYISI". Затем вы должны указать необходимые параметры, и CDS/ISIS пригласит вас определить устройство и/или директорий, для записи выходного файла.

Экспортируемый файл может быть записан на жесткий диск (в текущий или любой иной директорий) или на дискеты. В последнем случае, CDS/ISIS позволяет поддерживать многотомный файл (т. е. файл требующий более одной дискеты).

Если вы выбрали вывод на дискеты, то должны убедиться, что имеется необходимое количество дискет, которые уже должны быть отформатированы.

Если дискета окажется негодной, CDS/ISIS предложит вам вставить новую дискету. Вы должны пометить каждую дискету датой и ее номером, потому что когда файл будет импортироваться, дискеты должны вставляться в том же порядке, в каком записывались.

Сообщение 126: Драйвер и/или директорий сброса?

Несколько возможных ответов даны ниже:

CR выходной файл будет записан в директорий по умолчанию на устройство по умолчанию;

a:  выходной файл будет записан в корневой директорий дискеты на устройство a;

\mydir\ выходной файл будет записан в директорий mydir на текущем устройстве;

a:\mydir\ выходной файл будет записан в директорий mydir на устройстве a.

Если вы указали устройство, то появится следующее приглашение:

Сообщение 127/128; 129

(где NN последовательный номер начиная с 1, а D: устройство вами указанное)

Ответьте CR после установки дискеты (которая должна уже быть отформатированной). Приглашение 127 может повторятся, если дискета неподготовлена.

Заметим, что приглашение 127 также выдается для несъемного диска, если вы указали неподходящее устройство в ответ на приглашение 126. Нажмите CR для старта операции экспорта. Если приглашение 127 выдается повторно, это указывает, что диск не имеет достаточного пространства для размещения выходного файла. В этом случае, отметьте последний MFN, который был экспортирован и нажмите С для прерывания операции экспорта. После освобождения некоторого доступного на диске пространства, вы можете продолжить экспорт с места прерывания, указав подходящий предел в поле "Границы MFN" рабочего листа экспорта.

I - импорт внешнего файла

Эта функция позволяет вам использовать внешние данные для загрузки в базу данных CDS/ISIS. Когда вы выбираете эту функцию,CDS/ISIS выводит системный рабочий лист xYISO, который содержит разные параметры, которые вы также должны поддерживать. Этот рабочий лист описан в разделе 12.3. "Рабочий лист импорта хYISO".

После ввода вами необходимых параметров, CDS/ISIS пригласит вас указать устройство и/или директорий, которые будут содержать файл ввода.

Сообщение 126: Драйвер и/или директорий сброса?

Ответьте на это приглашение, указав, если необходимо, устройство и/или директорий (см. в опции Е несколько ответов на приглашение ).

Следующее приглашение появится только тогда,когда вы указали устройство:

Сообщение 127/128; 439

(где NN последовательный номер начиная с 1 для первой дискеты; D: указанное вами устройство).

Ответьте CR после установки указанной дискеты.

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

Дискеты должны быть установлены в порядке их записи. Приглашение 127/439 будет выдано для каждой дискеты. После последней дискеты, которая задействуется, ответьте Х на приглашение 439 для указания, что больше не будет ввода.

Заметим, что приглашение 127/439 будет также выдаваться для несъемного диска, если вы указали неподходящее устройство в ответ на приглашение 126. В этом случае нажмите CR для начала операции импорта, или Х для второго обращения.

L - Сменить язык диалога

Позволяет вам менять язык системных меню и сообщений (см. раздел 1.4.2. "Многоязыковый диалог").

R - Восстановление файла документов

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

Сообщение 126: Драйвер и/или директорий сброса?

Ответ на это приглашение будет, естественно, такой же, как аналогичное для функции сброса. (смотри опцию В и ответы на приглашение 126).

Следующие приглашения появляются только тогда, когда вы указали устройство:

Сообщение 127/128; 129

(где NN последовательный номер начиная с 1 для первой дискеты; a D: указанное вами устройство).

Ответьте CR после установки указанной дискеты.

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

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

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

В конце восстановления, CDS/ISIS выдает следующее информационное сообщение:

Сообщение 120...

где:

Nm- следующий присвоенный MFN в базе данных

Nr- текущее количество записей в базе данных (исключая удаленные записи);

Np- количество физически удаленных записей, т. е. записей, которые более не могут быть восстановлены (заметим, что логически удаленные записи, если есть, становятся теперь физически удаленными);

Nb- размер файла в Килобайтах;

Nx- размер файла ХRF (1 запись - 512 байт)

Заметим, что несмотря на то, что операция восстановления распаковывает файл документов, реальное пространство на диске не изменяется (другими словами, файл MST будет иметь тот же размер и до восстановления). Тем не менее, так как освобожденное пространство распаковывается, оно теперь будет использоваться CDS/ISIS, а файл MST не будет расширяться до тех пор, пока позволит освобожденное пространство. Вы можете, в этом случае, сделать приведение файла MST к точному размеру, в случае, если объем освобожденного пространства, указанный при операции сброса, больше, то можно выполнить следующее:

  1. выбрать опцию В этого меню для сброса (убедившись, что операция сброса завершена без ошибок);
  2. вернуться в главное меню и выбрать программу ISISDEF;
  3. выбрать опцию I (смотри раздел 10.1. "I- инициализация базы данных");
  4. ответить Y на приглашение 143 (это будет приведение файла документов и файла перекрестных ссылок к их минимальному размеру в 512 байт), ответить N на приглашение 144 (которое разрешит не менять инвертированный файл);
  5. вернуться в главное меню и выбрать программу ISISХСН;
  6. выбрать опцию R для восстановления файла документов из файла, полученного на 1 этапе.

Х - Выход

Возвращает в главное служебное меню CDS/ISIS хХISI

12.2. Рабочий лист экспорта хYISI

The UNESCO micro CDS/ISIS Software

Этот рабочий лист выводится, когда вы выбрали опцию Е. Он изображен на рисунке 60.

Рис. 66: Рабочий лист экспорта

Вы заменяете его точно таким же образом, как и рабочий лист ввода данных (см. раздел 3.5.2. "Редактирование записи").

Заметим, что некоторые поля пусты (например поле "ТВП переформатирования"), однако другие содержат значения. Эти значения, по умолчанию, являются значениями CDS/ISIS, но вы их можете менять. Тем не менее, так же, как и при вводе данных, вы можете использовать функцию НЕLP (клавиша F1) для получения подробных сведений о каждом поле, которая суммирует детальные обьяснения данного ниже.

12.2.1. Имя базы данных

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

12.2.2. Параметры файла ISO
12.2.2.1. Имя выходного файла ISO

Введите здесь имя выходного файла. Оно должно быть стандартного формата ISO2709, как описано в Приложении 2. "Формате обмена ISO2709".

Заметим, что сетевая версия СDS/ISIS может читать файлы ISO2709, произведенные микро версий CDS/ISIS.

12.2.2.2. Разделитель поля

Стандартный разделитель поля, определенный в ISO2709-символ ASCII 30 (шестнадцатиричное 1Е). Тем не менее, если экспортируемый файл передается через телекоммуникационную линию, этот символ может быть удален оборудованием связи. Поэтому и сетевая и микро версии CDS/ISIS позволяют вам переопределить символ разделения полей на естественный символ ASCII, который будет проходить. Заметим, что выбранный вами символ должен быть таким, чтобы он никогда не использовался как символ данных в базе данных, передаваемой CDS/ISIS, он будет зарезервирован ею для использования.

12.2.2.3. Разделитель записи

Стандартный разделитель записи, определенный ISO2709 - символ ASCII 29 (шестнадцатиричное 1D). Такие же условия как и выше, относятся к разделителю записей.

12.2.3. Параметры выбора

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

12.2.3.1. Границы MFN

Вы можете выбрать записи, дав пределы MFN. В этом случае введите здесь нижний и верхний MFN, разделенные не числовым символом (например 35/340). Заметим, что если вы также определите файл сохранения или результирующий файл, (смотри ниже) пределы MFN будут применяться только к выбранным записям. Например, если файл сохранения выбирает записи 3,5,150 и 270, а границы MFN - 10/2000, то только запись 150 будет экспортирована.

12.2.3.2. Имя файла сохранения

Если вы хотите экспортировать только записи, содержащие определенные характеристики, вы можете ввести здесь имя файла сохранения (который вы можете сделать, используя опцию D программы ISISRET).

12.2.3.3. HIT файл

Вы можете также выборочно экспортировать часть базы данных, применяя результирующий HIT файл (созданный программой ISISPRT) для определения экспортируемых записей. В этом случае, введите Y в этом поле. Заметим, что так как записи будут экспортироваться в порядке, в котором они написаны в результирующем файле, это также легко позволяет вам определить точную последовательность выводимых записей. Экспорт, с помощью результирующего файла, позволит вам легкими средствами сделать каталоги с индексами любой предполагаемой последовательности, как описано в разделе 8.8. "Пример печати".

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

12.2.4. Параметры переформатирования
12.2.4.1. ТВП переформатирования

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

Если использовать файл реорганизации, ТВП интерпретируется следующим образом:

  1. Каждая строка ТВП представляет выводимое поле;
  2. Каждому выводимому полю присваивается метка ISO равная идентификатору поля, определенному в соответствующей строке ТВП;
  3. Формат выделения данных, данный в ТВП, определяет содержимое поля. В этом формате вы должны использовать метки полей CDS/ISIS, как они определены в базе данных. Каждая строка, произведенная форматом (или каждый элемент, если ТВП определяет технику индексирования 2,3 или 4), будет генерировать новое включение выходного поля.

Дополним изложенное примером. Пусть ваша база данных содержит следующие поля:

  1. Автор (повторяемое)
  2. Название
  3. Ключевые слова (повторяемое)
  4. Замечания.

Реорганизация ТВП этого файла даст следующее:

Реорганизация ТВП файла

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

12.2.4.2. Файл преобразования GIZMO.

Эта возможность позволяет связываться с помощью CDS/ISIS сетевыми базами данных, содержащих закодированные диакритические метки.

Преобразованный файл - это текстовый файл ASCII, который вы можете создать, используя любой свой текстовый редактор, следующим образом. Первый символ первой строки содержит диакритический префикс (обычно знак @ для CDS/ISIS). Каждая следующая строка имеет формат:

dxyxyxyxyxy...xy

где d - диакритический код (напр. 7 для первого ударения),
       Х - символ требующий ударения,
       Y - символ с ударением.

Простая таблица преобразования дана ниже:

@
6ee
7aaee
(([
))]

CDS/ISIS использует эту таблицу для кодирования диакритических меток на выходе, (напр. е будет пеобразовано в @7е).

Преобразованный файл может также быть полезен в данных обмена между IBM РС и компьютером WAX для обеспечения правильного преобразования диакритических меток.

12.2.4.3. Перенумерация записей

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

Заметим, тем не менее, что эта возможность эффективна только тогда, когда вы экспортируете MFN как поле в выводном файле, используя реорганизацию ТВП (смотри выше). Если вы не меняете ТВП, MFN не экспортируется и, таким образом, эта возможность не действует. Вот почему MFN не относится к текущему полю записи экспорта, как показано в примере выше.

12.3. Рабочий лист импорта хYISO

The UNESCO micro CDS/ISIS Software

Этот рабочий лист выводится когда вы выбираете опцию I (см. рис. 61).

Вы заполняете его точно таким же способом, как вы заполняли рабочий лист ввода данных (см. раздел 3.5.2. "Редактирование записи").

Заметим, что некоторые поля пустые, хотя другие содержат значения. Это стандартные значения и используются CDS/ISIS, но вы можете их изменять.

Как и при выводе данных, вы можете использовать функцию НЕLP (клавиша F1), для получения дополнительных разъяснений по каждому полю, которые обобщенно даны ниже.

2.3.1. Имя базы данных

По умолчанию CDS/ISIS будет заполнять это поле именем текущей выбранной базы данных. Вы можете, тем не менее, ввести другое имя, если хотите импортировать данные из другой базы данных. Если вы так сделаете, CDS/ISIS будет автоматически выбирать текущую базу после завершения операции импорта.

12.3.2. Режимы файла ISO
12.3.2.1. Имя входного файла ISO

Введите здесь имя файла, который вы импортируете. Файл должен быть в стандартном формата ISO2709, как описано в Приложении 2: "Формат обмена ISO2709" этого руководства.

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

Рис. 61: Системный рабочий лист импорта

12.3.2.2. Разделитель поля

Стандартный разделитель поля, определенный в ISO2709 это символ ASCII 30 (шестнадцатиричное 1E). Тем не менее, если файл будет импортирован через линии телекоммуникации, этот символ может быть удален аппаратурой. Поэтому, обе версии CDS/ISIS: и микро, и сетевая позволяют вам переопределить разделитель поля как такой символ ASCII, который будет пропущен. Заметим, что выбранный вами символ должен быть таким, чтобы он никогда не использовался, как символ данных в базе данных, передаваемой CSD/ISIS, он будет зарезервирован.

12.3.2.3. Разделитель записи

Стандартный разделитель записи, определенный в ISO2709 - это символ ASCII 29 (шестнадцатиричное 1D). Соглашения, данные выше, относятся также и к символу разделителю записи.

12.3.3. Режимы загрузки
12.3.3.1. Первый присваиваемый MFN.

Если вы указали этот параметр, CSD/ISIS будет последовательно перенумеровывать каждую входную запись, начиная с указанного вами MFN.

Естественно, вы введете 1, если вы используете опцию L, и число, которое на единицу больше наибольшего текущего MFN в базе данных, если вы используете возможности загрузки М или U. В последнем случае, тем не менее, если вы указываете уже назначенный MFN, CDS/ISIS автоматически начнет нумерацию со следующего MFN в базе данных (т. е. возможности загрузки U и М будут совпадать).

12.3.3.2. Входная матка содержащая MFN

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

12.3.3.3. Загрузка/Слияние/Обновление

Этот параметр - односимвольный код, указывающий возможность загрузки, следующим образом:

L - в этом случае результирующая база данных будет содержать только приходящие записи. Перед использованием опции L база данных должна быть определена с помощью программы ISISDEF, если необходимо. Так как эта опция уничтожает любые записи, которые могут уже существовать в базе данных, CDS/ISIS всегда запрашивает согласие на ее использование, сообщением:

Сообщение 143. Файл документов существует и будет очищен (Y/N)?

Ответ Y начинает операцию импорта. Любые другие ответы ведут к неизменности базы данных и возврату в меню.

М - Обьединяет записи во входном файле с уже существующими записями в базе данных, если они есть. Входные записи с одинаковыми MFN, как и у существующей записи не переносятся (если не указаны для удаления). CDS/ISIS выводит MFN каждой записи, если они есть.

U - Так же, как М, исключает записи с одинаковыми MFN, которые автоматически замещаются.

Заметим, что опции М и U функционируют только так, как описано выше, когда вы импортируете MFN записи (т. е. вы заполните поле "Входная метка содержащая MFN"). Если нет, CDS/ISIS просто добавит приходящие записи к файлу документов и присвоит им последовательные MFN, начиная с большего MFN, уже существующего, или с MFN, указанного вами в поле "Первый присваиваемый MFN ".

12.3.4. Параметры переформатирования.

12.3.4.1. ТВП переформатирования.

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

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

  1. Каждая строка ТВП представляет выходное поле.
  2. Каждому выходному полю присвоена метка, равная идентификатору поля, определенному в соответствующей строке ТВП.
  3. Формат выделения данных, данных в ТВП, определяет содержимое поля. В этом формате вы должны, используя метки ISO полей, определить входной файл. Каждая строка производит формат (или каждый элемент, если ТВП определяет технику индексирования 2, 3 или 4), генерирующий новое включение выходного поля. Заметим, что файл стоп-слов результирующей базы данных, если имеется, будет использоваться в действии техники индексирования 4.

Пример

12.3.4.2. Файл преобразования GIZMO.

Эта способность позволяет обмениваться с сетевыми базами данных CDS/ISIS, содержащими закодированные диактрические отметки.

Если входной файл создан сетевой версией CDS/ISIS, то можно использовать этот параметр для преобразования закодированных диактрических отметок.

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

Для символов, которые не печатаются в таблице, CDS/ISIS будет пропускать диактрический код. Например, используя таблицу, данную в файле преобразования, входная строка @7e, будет преобразована в е, или строка @7y будет преобразована в y, поттому что y не напечатан в строке 7.

13. Средства редактирования. Редактор поля

The UNESCO micro CDS/ISIS Software

Редактор поля является основным средством редактирования при вводе и редактировании данных. Он используется не только для создания и модификации базы данных, но и для ввода и редактирования системных рабочих листов и команд. Редактор поля вызывается автоматически системой CDS/ISIS при необходимости. Можно убедиться, что редактор поля подключен, когда нижняя строка экрана содержит сообщение, указывающее на текущий режим редактирования :

замена - указывает, что любой напечатанный символ может быть заменен другим в данной позиции курсора;

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

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

13.1. Управляющие клавиши, действующие всегда

The UNESCO micro CDS/ISIS Software

13.1.1. Клавиши редактирования.

INSERT - переключает режим редактирования "Замена" на "Вставка" и наоборот;

UP - перемещает курсор в ту же позицию на предыдущую строку (в пределах поля), или к началу поля;

DOWN - перемещает курсор в ту же позицию на следующую строку (в пределах поля), или к концу поля;

LEFT - перемещает курсор на одну позицию влево;

CTRL LEFT - (нажать и держать клавишу CTRL затем LEFT). Перемещает курсор на одно слово влево;

RIGT - перемещает курсор на одну позицию вправо;

CTRL RIGT - (нажать и держать клавишу CTRL затем RIGT). Перемещает курсор на одно слово вправо;

HOME - перемещает курсор к началу поля;

END - перемещает курсор в конец поля;

BSP - стирает символ слева от курсора и перемещает курсор на одну позицию влево;

CTRL W - (нажать и держать клавишу CTRL затем W). Стирает слово;

F2 - стирает все поле и выходит из редактора поля;

F6 - стирает все символы, начиная от курсора до конца поля (курсор не перемещается);

CR - осуществляет выход из редактора поля.

13.1.2. Клавиши вырезания и наклеивания.

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

Маркировка начала блок. Используя клавиши передвижения курсора, необходимо установить курсор на первом символе блока, затем нажать клавишу F3 для отметки начала блока. Клавишу F3 можно нажать несколько раз, если маркировка была неправильна. CDS/ISIS запомнит только позицию, отмеченную последней.

"Вырезание блока". Используя клавиши передвижения курсора, необходимо установить его на последнем символе блока, затем нажать клавишу F4 для отметки конца блока. Как только нажимается клавиша F4, отмеченный блок будет удален с экрана (можно использовать эту возможность для удаления текста), но CDS/ISIS хранит его копию во внутреннем буфере, где его можно отыскать в любое время с помощью клавиши наклеивания, описанной ниже.

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

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

  • перемещение содержимого одного поля в другое поле в пределах одной и той же записи;
  • копирование содержимого поля в одной или несколькиж записях;
  • копирование содержимого поля в запросе;
  • копирование формата FST из одной строки в другую.

13.2. Управляющие клавиши, используемые только при вводе данных

The UNESCO micro CDS/ISIS Software

TAB - осуществляет выход из редактора поля и устанавливает курсор на начало предыдущего поля на данной странице рабочего листа для ввода данных;

ESC - осуществляет выход из редактора поля и отменяет все корректировки, которые могли быть сделаны в поле (т. е. поле будет иметь первоначальное содержимое);

F1 - выдает на экран подсказку, соответствующую данному полю, если подсказка была предварительно создана;

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

Выше перечисленные клавиши, как указывалось ранее, используются только при создании и модификации записей базы данных или при вводе данных в системный рабочий лист. Использование их в других ситуациях, вызывает действие аналогичное CR (выход из редактора поля).

13.3. Управляющие клавиши, используемые только при редактировании формата печати

The UNESCO micro CDS/ISIS Software

При редактировании формата печати (опция F меню xXGEN), используется клавиша F8 для сохранения каких-либо внесенных изменений. Необходимо отметить, что если редактируемый формат первоначально не был сохранен в PFT файле, нажатие клавиши F8 сохранит формат в файле с именем TEMP.PFT. Чтобы убедиться был ли сохранен текущий формат, необходимо просмотреть информацию о текущем состоянии файлов: если имя формата печати помечено звездочкой (*), значит данный формат является временным.

13.4. Управляющие клавиши, используемые только для арабской версии

The UNESCO micro CDS/ISIS Software

Арабская версия поддерживает четыре режима редактирования: два первоначальных и два вторичных. Первоначальный режим определяется текущим выбранным языком. Если выбранный язык - арабский, то первичный режим вставка/замена является арабским, иначе первичный режим - латинский. При необходимости вставить текст на языке, написание которого осуществляется в противоположном направлении от текущего языка, используется управляющая клавиша F10 для переключения на режим печати в обратном направлении. Переключатель режима печати в обратном направлении является специальным режимом вставки, позволяющим напечатанный текст сделать читабельным в языке, имеющем нормальное направление написания. Клавиша F10 является переключателем.

На рисунке 62 приводятся возможные варианты:

Рис. 62. Возможные варианты

13.5. Сворачивающиеся поля

The UNESCO micro CDS/ISIS Software

Сворачивающимся полем называется такое поле, максимальная длина которого является больше, чем пространство, выделенное на экране (так называемое окно). При вводе или модификации сворачивающегося поля, CDS/ISIS будет хранить на экране столько данных, сколько вмещает окно. Как только курсор или данные оказываются в последней позиции окна, происходит сворачивание одной строки (первая строка исчезнет с экрана). Некоторые управляющие клавиши используются для сворачивающихся и несворачивающихся полей. Клавиши передвижения курсора вызывают верхнее или нижнеее сворачивание. В частности, клавиша HOME вызывает высвечивание начала поля, а клавиша END высвечивает последнюю строку поля. При выходе из редактора поля, CDS/ISIS всегда автоматически выполняет действие, равносильное нажатию клавиши HOME.

14. Строковый редактор

The UNESCO micro CDS/ISIS Software

Редактор строки используется для создания и/или редактирования таблицы определения полей и таблицы выбора полей.

Эти таблицы состоят из одной или более строк. Несмотря на то, что каждая из таблиц имеет свою собственную структуру, команды редактора строки одни и те же для двух таблиц.

При создании каждой новой строки таблицы, редактор строки выводит на экран шаблон, указывающий позицию и длину каждого поля с помощью символов подчеркивания (заголовок таблицы выводится на экран в верхней его части и содержит соответствующие имена полей) и размещает курсор на поле, которое вводится первым. На рисунке 63 и 64 показано, как выглядит экран при вводе первой строки таблиц ТВП и ТОП соответственно.

Рис. 63

Рис. 63

Заметим, что когда создается новая строка таблицы, первая позиция (помеченная "?") не используется в первом поле, которое будет вводиться (первая позиция используется при редактировании уже существующей таблицы, что будет объяснено ниже). При вводе размеченных полей, которые требуются, переход от поля к полю осуществляется с помощью клавиши CR. Для перемещения курсора на предыдущее поле используется клавиша TAB. Заметим, что при вводе полей, имеющих длину более одного символа, подключается редактор поля (нужно помнить, что когда редактор поля подключен, в нижнем левом углу экрана выдается режим редактирования). В этом случае можно использовать все средства редактора поля, включая операции вырезания и наклеивания.

Рис. 64

Рис. 64

При вводе одноименных полей, печатается соответствующий символ и курсор автоматически передвигается на следующее поле.

Например, после ввода идентификатора поля (ИП) строки таблицы ТВП, нажимается клавиша CR перед вводом техники индексирования (ТИ). В поле ТИ, являющемся односимвольным полем, печатается один из соответствующих кодов (клавиша CR не нажимается), при этом курсор перемещается к следующему полю. Формат выбора данных является текстовым полем, поэтому CDS/ISIS подключает редактор поля. После ввода формата нажимается клавиша CR. т. к. формат является последним полем строки таблицы ТВП, CDS/ISIS перейдет к следующей строке таблицы.

При передвижении от поля к полю, CDS/ISIS высвечивает на экране в области сообщений (строки 22-24) подсказки или вспомогательные меню, относящиеся к каждому полю. После того как сформировано последнее поле строки, редактор строки предложит создать очередную строку, повторно выведя на экран шаблон, о котором говорилось выше. Нажатие клавиши CR, в этом случае, завершит формирование строк таблицы и приведет к выдаче на экран вспомогательного меню.

Подсказка 105 :

CR - следующая страница М - модифицировать С - отменить Х - выход

Ответ :

CR - для выхода из редактора строки. CDS/ISIS в этом случае выполнит создание или обновление таблицы;

М - для редактирования таблицы (см. ниже);

С - для выхода из редактора строки без обновления таблицы. Какие-либо изменения, сделанные в таблице, будут игнорироваться.

Если ответом на подсказку было "М", редактор строки переместит курсор в командную позицию первой строки таблицы и выведет в области сообщений экрана следующее вспомогательное меню:

Подсказка 381/382/383:

Подсказка 381/382/383:

Объяснение команд :

А - вставить новую строку после данной;
В - вставить новую строку перед данной;
С - редактировать строку;
D - удалить строку;
Е - выдать на экран конец таблицы (последние пять строк таблицы выводятся в верхней части экрана);
N - следующая страница;
Р - предыдущая страница;
Т - выдать на экран начало таблицы (первые пять строк выводятся в верхней части экрана);
Х - выход;
CR - оставить данную строку без изменений и перейти к следующей строке. Если это последняя строка, редактор переключается на режим ввода и можно добавить новые строки в конце существующей таблицы, как объяснялось выше;
TAB - оставить данную строку без изменений и перейти на предыдущую строку. Для редактирования строки используется команда "С". Редактор строки установит курсор на первом поле в строке. Для модификации или редактирования поля используется редактор поля. Использование клавиши CR приводит к передвижению курсора на следующее поле, а для передвижения курсора на предыдущее поле используется клавиша TAB. Для прекращения редактирования используется команда Х, с помощью которой выдается подсказка 105, описанная выше.

15. Редактор рабочих листов

The UNESCO micro CDS/ISIS Software

Редактор рабочих листов используется для создания и/или модификации разбивки экрана рабочих листов для ввода данных и системных рабочих листов.

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

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

Хотя существуют некоторые отличия между рабочими листами, редактор практически является одинаковым. О различиях будет сказано ниже.

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

Каждое поле имеет две основные компоненты: "имя поля", которое является меткой, описывающей содержание поля. Например "Заглавие" может быть именем поля, содержащим заглавие книги; и "значение поля", которое представляет собой реальные данные, подлежащие обработке. Компонента "значение поля" в рабочем листе обычно пустая, т. к. данные будут вводиться оператором тогда, когда рабочий лист уже сформирован. В некоторых случаях, однако, можно задать значение поля при создании рабочего листа. Эти, заранее определенные значения поля, называются значениями по умолчанию, т. е. они будут использоваться всякий раз, когда оператор не обеспечит значение поля при вводе данных.

Дополнительно полю задается ряд параметров, таких, как его позиция на экране, характеристики изображения и т. д., которые рассмотрены ниже в деталях.

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

15.1. Создание нового рабочего листа

The UNESCO micro CDS/ISIS Software

При создании нового рабочего листа экран очищается, а нижняя строка экрана содержит имя рабочего листа, который создается, и номер страницы. Первая подсказка, также, появляется в области сообщений (строки 22-23 на экране). Подсказки могут выдавать на экран значения по умолчанию, которые можно подтвердить нажатием клавиши CR или заменить значением по выбору пользователя.

15.1.1. Метка поля

Подсказка 058 : Введите метку поля.

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

Т - указывает, что данное поле является полем заглавия, т. е. такое поле, куда данные вводиться не могут. Можно использовать поля заглавия для хранения в рабочем листе информации для оперетора по вводу данных (например, имя рабочего листа и базы данных, номер страницы и т. д.)

n - числовое значение, указывающее метку поля, появление которого необходимо пользователю. Если пользователь не помнит метку поля, которую хочет выбрать, то вводится "?"

? - выводит на экран метку и имя каждого из полей, определенных в ТОП базы данных. Они выводятся на экран следующим образом :

метка наименование

для выбора одного из полей вводится "Х";
для просмотра следующего поля вводится CR;
для просмотра предыдущего поля вводится TAB.

Звездочка в позиции метки поля указывает на конец ТОП. Выбор этой строки отменяет запрос и равнозначен нажатию клавиши CR в ответ на подсказку 058.

CR -заканчивает ввод текущей страницы рабочего листа

CDS/ISIS выдает сообщение об ошибке при попытке ввести метку поля неопределенного в ТОП или при повторном вводе метки поля на одной и той же странице. Заметим однако, что CDS/ISIS допускает употребление одного и того же поля, но на разных страницах рабочего листа. Необходимо быть осторожным при вводе информации, чтобы не быть введеным в заблуждение.

15.1.2. Позиция имени поля

Подсказка 047 : Введите позицию с/к имени поля:

Подсказка 046 : Следующая доступная позиция сс/кк:

Укажите позицию на экране, в которой желательно разместить компоненту имени поля. Позиция указывается заданием на экране координат с/к, где с - номер строки, а к - номер колонки. Верхняя левая позиция экрана - 1/1, нижняя правая позиция - 21/80 (строки 22-24 являются областью сообщений и не используются для полей данных).

В помощь пользователю, для определения точной позиции экрана CDS/ISIS выдает на экран линейки, содержащие номера строк и колонок. Для этого необходимо ввести отрицательное число в интервале -21 и -1. CDS/ISIS выдаст номера строк в левой части экрана и номера колонок в строке, которая выбрана. Например, если ввести -5, то горизонтальная линейка выведется на экран в строке 5. При необходимости, можно вызвать столько горизонтальных линеек, сколько потребуется. При указании значений "С" и "К" можно использовать наклонную черту (/) или любой другой нецифровой символ, а также один или более пробелов. Ниже приведены следующие комбинации для ввода строки 7 и колонки 20 :

7/20     7 20      7. 20        7; 20

Ответ CR на эту подсказку CDS/ISIS будет воспринимать в двух различных вариантах, зависящих от типа рабочего листа :

  1. для рабочих листов по вводу данных, CDS/ISIS использует позицию значения по умолчанию, выдаваемую на экран в подсказке 046;
  2. для системных рабочих листов, это приведет к прекращению ввода на текущей странице, что равнозначно ответу CR на подсказку 058 для рабочих листов для ввода данных.

После того, как будет выведена позиция имени поля, CDS/ISIS переместит курсор в указанную позицию. Если создается рабочий лист для ввода данных, то на экране появится имя поля, данное в ТОП, которое при необходимости можно изменить. Для системных рабочих листов курсор только перемещается в указанную позицию, а имя поля дожно быть введено.

15.1.3. Позиция значения поля

Подсказка 048 : Введите позицию с/к значения поля

Подсказка 046 : Следующая доступная позиция : сс/кк

Укажите позицию на экране, в которой желательно разместить компоненту значения поля. Эта позиция определяется так же, как позиция имени поля. Отрицательное значение выдаст линейки как объяснялось выше. При нажатии клавиши CR, CDS/ISIS использует позицию по умолчанию, выдаваемую подсказкой 046. Позиция по умолчанию находится, как правило, на расстоянии одного пробела после последнего символа имени поля.

15.1.4. Характеристики поля.

Подсказка 051, 052

Определите способ изображения на экране компоненты значения поля. Изображение может быть следующим :

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

Необходимо отметить, что приведенные выше характеристики экрана являются стандартными, которые поставляются UNESKO, но их фактическое значение зависит от установки. Более того, при использовании цветного экрана каждая характеристика будет представлена другим цветом.

15.1.5. Длина поля.

Подсказка 053 : Введите длину поля ( nnn )

Введите длину компоненты значения поля или нажмите клавишу CR для подтверждения значения по умолчанию длины, указанной в скобках. Длина значения по умолчанию равна максимальной длине поля, которая определена в ТОП для рабочих листов для ввода данных, или равна 0 для системных рабочих листов. Длину поля допускается указывать количеством символов или строк. В последнем случае числу будет предшествовать символ "L".

Для сворачивающихся полей указывается размер окна в количестве строк с предшествующим символом "S".

Например :

Пример

Для рабочих листов по вводу данных длина, определяемая при разработке рабочего листа, подавляет максимальное значение длины, принятое в ТОП. Если поле не определено как сворачивающееся (в этом случае длина ограничивается только максимальной длиной записи,) длина, определяемая в рабочем листе, то оно принимает максимальную длину.

После определения длины поля, CDS/ISIS выведет на экран значение поля в виде символов подчеркивания заданной длины с указанной позиции, с учетом характеристики экрана.

15.1.6. Тип поля.

Подсказка 054, 055

Эта подсказка появляется только при создании системных рабочих листов. В рабочих листах для ввода данных, тип поля автоматически выбирается из ТОП. В деталях, тип поля описан в разделе 15.1.6. "Тип поля".

15.1.7. Поля типа "шаблон"

Подсказка 057 : Введите шаблон поля.

Эта подсказка появляется только для полей типа "шаблон" в системных рабочих листах (в рабочих листах для ввода данных шаблон автоматически берется из ТОП). CDS/ISIS располагает курсор на компоненте "значение поля", где затем вводится шаблон (об этом будет сказано ниже). Использование шаблона позволяет контролировать ввод данных в поле.

Шаблон - это посимвольное описание содержимого поля. В шаблоне для каждой позиции поля определяется тип символа, который может быть следующим :

Х - буквенно-цифровой символ;
А - буквенный символ;
9 - цифровой символ;
другие - указанный символ.

Необходимо иметь в виду, что тип "Х" и "А" должны вводиться большими буквами. Ниже приводятся несколько примеров шаблонов и соответсвующие им значения.

Примеры шаблонов

15.1.8. Вспомогательное сообщение (HELP сообщение).

Подсказка 059 : Введите HELP сообщение для данного поля

С каждым полем в рабочем листе может быть связано HELP сообщение. При последовательном вводе или модификации поля, пользователь может вызвать на экран это сообщение нажатием клавиши F1. HELP сообщение обычно содержит комментарии по вводу поля и/или дополнительное объяснение его содержимого.

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

Если HELP сообщение не будет создаваться, нажмите клавишу CR в ответ на данную подсказку.

15.1.9. Значение по умолчанию

Подсказка 060 : Введите значение по умолчанию

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

Вводом значения поля по умолчанию заканчивается определение поля в рабочем листе. CDS/ISIS затем начнет, сначала, выдачу подсказок для следующего поля, если они имеются.

После окончания ввода последнего поля, CDS/ISIS выдаст следующую подсказку.

Подсказка 049, 050

Ответ :

CR - для создания дополнительной страницы. В этом случае CDS/ISIS очистит экран и выдаст подсказку для первого поля на новой странице;
В - для просмотра и/или редактирования предыдущей страницы, если такая имеется;
R - для восстановления текущей страницы. Эта клавиша используется для линеек, которые можно установить и просмотра страницы рабочего листа, которая была создана;
Е - для редактирования страницы (см. ниже);
S - для окончания обработки и сохранения рабочего листа, который только что создан;
С - для окончания обработки без сохранения рабочего листа.

15.2. Редактирование рабочего листа

The UNESCO micro CDS/ISIS Software

Редактирование рабочего листа осуществляется путем ответа "Е" на подсказку 049, описанную выше, во время создания рабочего листа или выбора соответсвующей опции меню программы ISISDEF (для рабочих листов по вводу данных), или меню программы ISIUTL (для системных рабочих листов).

После ввода на экран рабочего листа, CDS/ISIS разместит курсор на имени первого поля и выдаст следующую подсказку в области сообщений (строки 22-23) из которой можно выбрать необходимую функцию редактирования.

Подсказка 071, 072

Ответ :

А - добавляет новое поле в рабочем листе. CDS/ISIS переключается в режим создания и предлагает ввести различные параметры поля (см. выше "Создание нового рабочего листа"). Находясь в режиме редактирования можно создавать столько дополнительных полей, сколько необходимо. После создания последнего поля, подсказки 071 и 072 вновь появятся на экране и курсор разместится на следующем поле.
С - центрирование поля на строке. Эта опция используется только в том случае, если на строке нет других полей кроме тех, что создаются, а компоненты имени и значения поля расположены в одной строке.
D - удаление поля
М - модифицирует один или более параметров поля. CDS/ISIS переключается в режим создания и предлагает ввести различные параметры полей. При этом текущим значением для каждого параметра будет значение по умолчанию. Отвечайте нажатием клавиши CR на все подсказки, соответствующие параметрам, которые остаются неизменными, и вводите новые значения для параметров, которые необходимо изменить.
R - выравнивает поле по правому краю, т. е. размещает его таким образом, чтобы самая крайняя правая позиция компоненты значения поля совпадала с 80-ой позицией строки.
S - сдвигает вверх или вниз все поля на экране, начиная с тех, на которых размещен курсор. CDS/ISIS затем предложит указать количество строк, на которое поле должно быть сдвинуто.

Подсказка 073 : Введите количество строк (n = вниз, -n = вверх)

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

Если возникла необходимость переместить поле с одной позиции экрана на другую, используйте опцию "М" для изменения позиции.

Х - прекращает редактирование. CDS/ISIS затем выдает на экран подсказку 049/050 для определения дальнейших действий.
CR - оставляет поле неизменным и переходит к следующему полю. Если это поле является последним, то CR равнозначно "Х".
TAB - перемещает курсор на предыдущее поле.

16. Редактор меню

The UNESCO micro CDS/ISIS Software

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

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

  • поле заглавия: обычно используется для справочной информации, такой как название меню или программы;
  • поле опций: описывает различные возможности программы;
  • поле выбора: обычно содержит выбор пользователя (когда меню будет выводиться на экран, CDS/ISIS расположит курсор в поле выбора).

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

1) Первая буква "имени поля" должна содержать "идентификатор опции", который указывает CDS/ISIS на действие, которое должно быть выполнено в том случае, когда данная опция будет выбрана пользователем. 2) "Значение поля" содержит "описание опции", которое является коротким описанием данной опции для пользователя.

Единственной распознаваемой для CDS/ISIS частью меню является идентификатор опции, который должен соответствовать одной из ранее определенных опций программы. Любой другой элемент меню можно изменять по своему усмотрению. Например, можно изменить описание опций в том случае, когда описания, предлагаемые CDS/ISIS, не соответствуют требованиям пользователя, при необходимости можно также изменить разбивку экрана.

16.1. Создание нового меню

The UNESCO micro CDS/ISIS Software

При использовании системы, поставляемой UNESCO, обычно нет необходимости создавать новые меню, кроме тех, которые обеспечивают исполнительные функции системы. Тем не менее, может возникнуть необходимость создать дополнительные меню HELP и связать их со стандартными системными меню. Как пример меню HELP, можно использовать меню xXUH1, которое вызывается посредством меню xXM1 в программе ISISUTL.

Изначально, новое меню с исполнительными функциями, может быть необходимо для специальных прикладных программ, написанных на языке CDS/ISIS Паскаль.

Во время создания меню экран очищается и первая подсказка появляется в области сообщений (строки 22-23 на экране). Нижняя строка содержит имя создаваемого меню и номер страницы. Большинство подсказок выведут на экран значение по умолчанию, которое можно принять нажатием клавиши CR или изменить по своему усмотрению.

16.1.1. Позиция имени поля

Подсказка 046, 047

Укажите позицию на экране, в которой желательно разместить компоненту имени поля. Позиция указывается в координатах экрана с/к, где с - номер строки, к - номер колонки. Верхняя крайняя левая позиция экрана считается 1/1, нижняя крайняя правая позиция считается 21/80 (строки 22-24 являются областью сообщений и не используются для полей данных).

В помощь пользователю, CDS/ISIS, при необходимости, позволяет определить точную позицию на экране. Система выведет на экран линейки, содержащие номера строк и колонок в том случае, если в ответ на эту подсказку будет введено отрицательное число в интервале от -21 до -1. CDS/ISIS укажет номера строк в левой части экрана и номера колонок в той строке, номер которой указан. Например, если на эту подсказку ответить -5, горизонтальная линейка будет выведена в строке 5. Заметим, что количество горизонтальных линеек не ограничено.

При вводе, значения "с" и "к" разделяются либо разделительной чертой (/), либо любым другим нецифровым символом, или одним или несколькими пробелами. Примеры спецификации ввода строк 7 позиции 20 :

7/20     7 20     7, 20     7; 20

Ответ CR на эту подсказку завершает функцию создания меню.
После того как определена позиция имени поля, CDS/ISIS переместит курсор в заданную позицию, в которую необходимо ввести имя поля. Помните, что если это есть поле опции, то первым символом имени должен быть идентификатор опции.

16.1.2. Позиция значения поля

Подсказка 048, 046

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

16.1.3. Характеристики поля

Подсказка 051, 052

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

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

Заметим, что характеристики являются стандартными, но их фактический смысл зависит от установки системы. Более того, при использовании цветного экрана, каждая характеристика будет представлена другим цветом. Программа ISISUTL позволяет изменить значение приведенных характеристик (см. раздел 11.1. "А - отобразить/модифицировать атрибуты").

16.1.4. Длина поля

Подсказка 053 : Введите длину поля (nnn)

Введите длину компоненты значения поля. Допускается спецификация длины в символах или в строках. В последнем случае перед числом указывается символ "L".

Например :

25 - означает 25 символов,
L4 - означает 4 строки, считая от строки, указанной в значении с позиции с/к значения поля.

Как только длина поля указана, CDS/ISIS выведет на экран значение поля, заполненное символами подчеркивания с указанной позиции на экране, заданной длины и указанной характеристикой изображения.

16.1.5. Тип элемента

Подсказка 056 : Определить тип поля (S - опция; Х - поле выбора; Т - заглавие)

Определите тип поля меню. Заметим, что в любом меню может быть выбрано только одно поле.

16.1.6. Код действия

Подсказка 061, 062

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

Возможными действиями могут быть следующие :

Х - возвращает идентификатор опции вызывающей программе. Данное действие, обычно, связывается с такими опциями, которые требуют выполнения функций CDS/ISIS. Например, кодом действия для опции "D" в меню xXGEN (Программа ISISRET) является "X". В этом случае процессор меню возвращает букву "D" CDS/ISIS, которая в свою очередь осуществит функцию вывода на экран.
С - повторный вывод на экран текущего меню.
L - выбор языка. Данное действие связывается с одним из языков опций в меню xXLNG. После переключения на выбранный язык, CDS/ISIS повторно вызовет на экран меню, из которого вызывалось xXLNG.
N - вывод на экран другого меню (новое меню располагается в верхней части стека меню). Данное действие обычно используется для перехода к меню xXLNG или к меню HELP. CDS/ISIS предложит ввести имя следующего меню выведя на экран следующую подсказку:

Подсказка 063 : Имя следующего меню/программы?

Введите (1-5 символьное) имя меню, которое будет выбрано, например EXLNG.
Р - возврат в предыдущуее меню. Данное действие обычно используется для возврата в меню, из которого текущее меню было вызвано. CDS/ISIS удалит текущее меню из стека меню. Заметим, что действие "L" предполагает действие "Р" после выбора языка. Действие "Р" используется для возврата к вызываемому меню из меню HELP.
Е - осуществляет выход из меню пользователя (см. руководство по языку CDS/ISIS Паскаль). Это действие позволяет связать пользовательский выход с опцией меню. CDS/ISIS предложит ввести имя программы, которая должна быть выполнена, выведя на экран следующую подсказку :

Подсказка 063 : Имя следующего меню/программы?

Введите (1-6 символьное) имя программы, которая должна быть выполнена. Если РCD файл с таким именем отсутствует, система выдаст предупредительное сообщение.

Если позже будет выбрана опция меню с кодом действия "Е", CDS/ISIS осуществит связь CDS/ISIS с Паскаль программой. Данная программа должна быть сохранена в программном директории (указывается в параметре 1 SYSPAR.PAR) и быть успешно скомпилирована.

16.1.7. Внутренний идентификатор опции

Подсказка 066 : Введите идентификатор внутренней опции

Каждая опция в меню состоит из 1-символьного идентификатора опции и описания опции. Для выбора опции нажимается клавиша, соответствующая символу идентификатора опции. CDS/ISIS затем выполнит действие, определенное для этой опции в соответствии с кодом действия (см. подсказку 061/062 выше). Идентификатор опции, распознаваемый CDS/ISIS, является уникальным и соответствует идентификатору опции, определенному в английском меню как стандартный, поставляемый UNESCO. Эти идентификаторы называются внутренними идентификаторами опций и фиксируются один раз для всех программ.

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

Возможность определить внутренний идентификатор позволяет устанавливать соответствие между внешним идентификатором опции (который выбран) и идентификатором опции, предусмотренным системой CDS/ISIS.

По умолчанию внутренний идентификатор опции является таким же как внешний.

Например, для обеспечения вывода на экран результатов поиска в английском меню EXGEN используется опция "D".

Заметим, что только при выборе кодов действия "Х" и "L" будет выдана подсказка ввести внутренний идентификатор опции.

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

Например, в английском меню EXLNG код для английского языка - "Е", а для испанского - "S". Однако в испанском меню SXLNG можно назначить "I" для английского языка и "Е" для испанского. В последнем случае необходимо назначить "Е" как внутренний идентификатор опции английскому языку и "S" - для опции испанского языка.

16.1.8. Описание опции.

Подсказка 064 : Введите описание опции

CDS/ISIS устанавливает курсор на компоненте значения поля. Введите описание опции или заглавие. После завершения ввода последнего поля CDS/ISIS выдаст следующую подсказку :

Подсказка 049, 050

Ответ :

S или CR - прекращает обработку и сохраняет меню, которое было создано (заметим, что в отличие от рабочего листа, меню может иметь только одну страницу, поэтому опция "В" не действует);

R - восстанавливает текущую страницу. Данная опция используется для очистки экрана от линеек, которые могли быть использованы для определения позиции экрана, чтобы просмотреть вновь созданное меню;

Е - редактирование меню (см. ниже);

С - прекращение обработки без сохранения меню.

16.2. Редактирование меню

The UNESCO micro CDS/ISIS Software

Редактирование меню осуществляется либо выбором опции "Е" в подсказке 049 во время его создания, либо выбором соответствующей опции в программе ISISUTL.

После вывода меню на экран дисплея, CDS/ISIS установит курсор на имени первого поля и в области сообщений появится следующая подсказка:

Подсказка 071, 072

Ответ :

А - добавить в меню новое поле. CDS/ISIS переключится на режим создания и предложит ввести различные параметры поля (см. раздел 16.1. "Создание меню"). В режиме редактирования можно создать столько дополнительных строк, сколько требуется. После создания последнего поля подсказки 071 и 072 повторно выведутся на экран и курсор установится на следующем поле;

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

D - удалить поле;

М - модифицировать один или более параметров поля. CDS/ISIS переключится в режим редактирования и предложит ввести различные параметры поля. Однако, значением по умолчанию для каждого параметра будет текущее значение. Ответ CR на все подсказки используется для подтверждения значений, которые остаются без изменения, новые значения необходимо ввести;

R - выравнять поле по правому краю, т. е. разместить поле таким образом, что бы крайняя правая позиция компоненты значения поля совпадала с 80 позицией строки;

S - сдвинуть поле вверх или вниз на экране. CDS/ISIS затем выдаст подсказку, предлагающую ввести количество строк, на которое поле будет сдвинуто:

Подсказка 073 : Введите количество строк ( n = вниз, -n = вверх )

При вводе положительного числа, поле будет сдвинуто вниз, при вводе отрицательного числа - вверх. Например, если ввести -2, поле будет сдвинуто вверх на две строки.

Х - прекратить редактирование. CDS/ISIS выдаст на экран подсказки 049/050, определяющую следующие действия:

CR - оставить без изменения и перейти к следующему полю. Заметим, что если это поле последнее CR равнозначно "Х",
TAB - сдвинуть курсор на следующее поле.

17. Адаптация CDS/ISIS для локальных применений

The UNESCO micro CDS/ISIS Software

17.1. Создание новой языковой версии

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

17.1.1. Перевод меню и системных рабочих листов

Модифицируйте все меню хХLNG для включения нового языка и создайте новое меню хХLNG, соответствующее новому языку. Для каждого меню или системного рабочего листа используются средства программы ISISUTL для копирования английского меню в новое языковое меню: опция "D" меню хХМ2 (для рабочих листов) или хХМ3 (для меню). Затем, используя редактор, переведите заглавия. Имя нового языкового рабочего листа или меню должно быть таким же, как имя в английской версии, исключая код языка. Например, имя французской версии меню EXGEN будет FXGEN. Во всех меню, включающих опцию "L", измените имя меню хХLNG, которое будет выбираться, на имя хХLNG на новом языке. Например, в меню EXGEN опция "L" указывает меню EXLNG; в меню FXGEN она должна указывать на FXLNG, где название языка будет на французском. Если изменяется идентификатор опции в меню, необходимо обеспечить правильный внешний идентификатор опции (см. раздел 16.1.7. "Внутренний идентификатор опции"). В этом случае необходимо иметь распечатку копии первоначальных английских меню, поставляемых UNESCO. При переводе системных рабочих листов, помните, что все рабочие листы одного типа должны иметь одинаковое количество полей (включая поля заглавий), порядок полей должен быть таким же как в первоначальной версии, поставляемой UNESCO.

17.1.2. Перевод сообщений.

Перевод системных сообщений осуществляется следующим образом:

1. Создайте базу данных системных сообщений на новом языке, копируя все файлы базы данных английских сообщений; для выполнения этого используйте следующие команды MS DOS:

COPY EMSG.* хMSG.*
COPY ?EMSG.FMT ?хMSG.FMT

где х - код нового языка.

2. Выберите опцию ввода данных для базы данных хMSG и переведите все сообщения. Будьте осторожны при переводе сообщений, которые используются как заголовки таблиц (6, 42, 248, 271, 272, 283), в смысле сохранения того же расположения, что и в английской версии. Обратите внимание, что следующие группы сообщений должны иметь одинаковую длину (в случае необходимости, более короткое сообщение заполните пробелами) в каждой языковой версии:

     75, 76, 77, 78
     86, 87, 88, 89
    101,102

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

      49,  50
      51,  52
      54,  55
      56
      61,  62
      71,  72
     103, 104, 105

4. Сообщение 434 (в базе данных английских сообщений) содержит текст [не определено]. Он используется для обеспечения текста при печати для неопределенных сообщений в различных языковых версиях при печати файла сообщений. Просто переводите это сообщение в новый язык (например [no asignado] по испански). Все неопределенные сообщения будут затем печатать это сообщение в списке при перечислении сообщений базы данных при использовании опции "D" программы ISISUTL. Заметим, что главные файлы сообщений в отличие от других главных файлов, хранятся особым образом, для того, чтобы оптимизировать время доступа. В частности, записи в главном файле сообщений не могут превышать 512 символов и иметь больше 10 сообщений на одну запись. Поэтому, при переводе файла сообщений необходимо помнить об этих ограничениях.

"Список английских сообщений", этого руководства содержит полный список английских сообщений, поставляемых UNESCO. Этот список был выполнен при использовании опции "D" главного меню программы ISISUTL. После того, как будет переведен файл сообщений,можно создать список сообщений, используя эту же опцию, с предварительным выбором нового кода языка, используя опцию L.

17.1.3. Создание опций вспомагательного меню

Можно создать опции вспомагательного меню, удовлетворяющие определенным требованиям данного языка. Аналогично меню, CDS/ISIS должен быть в состоянии унифицировать опцию, выбранную пользователем из вспомагательного меню. Внутренние идентификаторы вспомагательного меню должны быть такими же, как первоначально созданные UNESCO в файле английских сообщений. Если необходимо изменить идентификатор опции в данном вспомагательном меню, необходимо создать соответствующую таблицу между внешним и внутренним идентификаторами опций. Эта таблица сохраняется в конце каждой строки вспомагательного меню в следующем виде:

$e1i1e2i2e3i3....

где - e1, e2 и т. д. являются внешними идентификаторами опций, а i1, i2 и т. д. являются соответствующими внутренними идентификаторами опций.

Например: предположим, что необходимо изменить вспомагательное меню 51/52.

Изменение вспомагательного меню 51/52

 

17.2. Псевдосообщения

The UNESCO micro CDS/ISIS Software

Некоторые сообщения, хранящиеся в базе данных сообщений, не используются как подсказки, а определяют системные параметры. (Другие системные параметры определены в файле SYSPAR.PAR (см. раздел 2.1.1. "SYSPAR.PAR: Глобальные параметры").

Подобные сообщения описываются ниже.

273: первый символ данного сообщения определяет графические символы, которые будут использоваться редактором строк для заголовков таблиц ТОП и ТВП (по умолчанию "-")
274: данное сообщение предоставляет разделитель, который будет использоваться программой ISISPRT при распечатке индекса (по умолчанию ",")
251: первые восемь символов данного сообщения предоставляют характеристики изображения, которые используются для обозначения фона экрана, области сообщений, нормального изображения, обратного изображения, жирного, подчеркнутого, мигающего и невидимого изображения соответственно. Они могут быть изменены с помощью опции "А" программы ISISUTL.
354: если существует, то содержит адрес сегмента поддерживающего буфера изображения адаптера дисплея.

Адрес должен быть введен в виде фиксированного десятичного числа с предшествующим символом # (т. е. #В000). Это относится только к IBM-PC версии CDS/ISIS, которая использует карту памяти, как средство изображения экрана (другие версии такие как VAХ, WANG или арабская версия не используют такой карты памяти дисплея). В файлах сообщений поставляемых UNESCO, это сообщение не определено. CDS/ISIS будет автоматически определять правильность адреса, поддерживающего буфера изображения, проверяя тип адаптера, установленного на вашем компьютере (# В800 для одноцветного адаптера дисплея и#В000 для цветного/графического адаптера). Однако, если используется компьютер с нестандартным адаптером дисплея, можно указать здесь соответствующий адрес сегмента. Заметим, что это сообщение должно быть модифицировано первым на IBM компьютере. Эти сообщения не могут модифицироваться во время создания новой языковой версии.

17.3. Создание файла стоп-слов

The UNESCO micro CDS/ISIS Software

Это очень простой текстовый файл, который можно создать используя стандартный редактор, например EDLIN. Он содержит одно слово на строку, причем стоп-слова должны быть набраны на верхнем регистре, выровнены по левому краю (т. е. начинаться с 1 колонки) и быть выстроены в алфавитном порядке. Максимальное количество слов, которые составляют файл стоп-слов равно 799 и каждое слово не должно превышать 10 символов. Пример файла стоп-слов приведен ниже:

A
AN
AND
AS
BY
FOR
FROM
IN
INTO
ITS
OF
ON
THE
TO
UPON
WITH

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

17.4. Создание файла ANY

The UNESCO micro CDS/ISIS Software

ANY файл является текстовым файлом, который можно создать, используя стандартный редактор, например EDLIN. Каждая строка содержит ANY термин, расположенный в первой позиции (левое выравнивание) и соответствующий поисковый термин, расположенный в позиции 31 (также левое выравнивание). ANY термин и соответствующие поисковые термины могут вводиться как на верхнем так и на нижнем регистре или комбинироваться из двух. ANY файл должен иметь такое же имя как и база данных с файловым расширением ANY. Пример ANY файла дан ниже.

Пример ANY файла

17.5. Таблица преобразования в прописные буквы (ISISUC.TAB)

The UNESCO micro CDS/ISIS Software

Этот текстовый файл используется для преобразования текста в прописные буквы. Он содержит десятичный код ASCII прописных букв, эквивалентный каждому из 256 символов. Преобразование в прописные буквы осуществляется заменой данного символа текста на соответствующий код данной таблицы. Обратите внимание, что таблица должна содержать 256 кодов. Символы, которые не являются буквенными, остаются неизменными. Стандартная таблица, поставляемая UNESCO для IBM PC версии, приводится ниже (для WANG PC и VAX версии используются другие таблицы):

Стандартная таблица поставляемая UNESCO для IBM PC версии

Заметим, что знаки с ударением преобразуются в их вариант прописных букв без ударения. ISISUC.TAB может содержать две 256-символьные таблицы. Вторая таблица, если опущена, по умолчанию, будет эквивалентна первой. Первая таблица используется для перевода поисковых терминов в прописные буквы перед сохранением их в инвертированном файле, и переводит текст в прописные буквы, когда соответствующий режим выбирается в дисплейном формате (mpu, mhu или mdu). Вторая таблица используется для перевода ключей сортировки перед сохранением их в файле связей. Это вызвано тем, что некоторые языки требуют специальной сортировочной последовательности, которая отличается от обычной ASCII последовательности.

Таблица перевода ключей сортировки, используемая в ISISUC.ТАВ является системной таблицей по умолчанию. Кроме того, можно указать специальную таблицу ключей сортировки для каждой базы данных, с помощью создания файла хххххх.SRT (где хххххх - имя базы данных) в директории базы данных. Если этот файл существует, CDS/ISIS будет использовать его для генерации ключей сортировки базы данных. В случае отсутствия, будет использоваться системная таблица по умолчанию, сохраненная в ISISUC.TAB.

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

17.6. Таблица буквенных символов (ISISAC.TAB)

The UNESCO micro CDS/ISIS Software

Этот текстовой файл содержит десятичный код ASCII всех буквенных символов. Он используется всякий раз, когда CDS/ISIS необходимо узнать, является ли данный символ алфавитным (т. е. когда осуществляется индексирование слова с использованием техники индексирования 4 или проверка правильности алфавитных полей). Стандартная таблица, поставляемая UNESCO для IBM PC версии, приводится ниже (другие таблицы используются для WANG PC и VAX версий):

Стандартная таблица поставляемая UNESCO для IBM PC версии

Обратите внимание, что знаки с ударением рассматриваются как алфавитные.

Приложение 1. Эквиваленты клавиатуры

The UNESCO micro CDS/ISIS Software

1.1. Управляющие клавиши

На рис. 65 приведены эквиваленты управляющих и функциональных клавиш, используемых CDS/ISIS для клавиатуры IBM PC и WANG.

Рис. 65

Рис. 65

1.2. Определение правильности символа

Набор символов, используемый CDS/ISIS, может не быть непосредственно представлен на клавиатуре.

Используемые печатные символы, которые не существуют на клавиатуре воспроизводятся следующим образом:

  1. определите ASCII код символа из таблицы приведенной ниже;
  2. нажмите и держите клавишу ALT пока печатается ASCII код на цифровой клавиатуре (справа от основной клавиатуры);
  3. отпустите клавишу ALT и посмотрите на символ, который появился на дисплее;
  4. если символ, который вы видите на экране отсутствует на клавиатуре, запишите его в таблицу, которая приводится ниже: это и есть клавиша, которую нужно использовать для получения указанного символа;
  5. если символ, который вы видите на экране отсутствует на клавиатуре, необходимо генерировать его, как указано в п. 2 выше, каждый раз, когда возникнет необходимость.

Таблица для получения указанного символа

Приложение 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

Приложение 3. Перечень сообщений

The UNESCO micro CDS/ISIS Software

Перечень сообщений 1-2

Перечень сообщений 3-4

Перечень сообщений 5-6

Перечень сообщений 7-9

Перечень сообщений 10-13

Перечень сообщений 14-17

Перечень сообщений 18-21

Перечень сообщений 22-25

Перечень сообщений 26-29

Перечень сообщений 30-33

Перечень сообщений 34-37

Перечень сообщений 38-41

Перечень сообщений 42-45

Перечень сообщений 46-49

Перечень сообщений 50-53

Перечень сообщений 54-55

Приложение 4. Сообщения об ошибках

The UNESCO micro CDS/ISIS Software

CDS/ISIS производит расширенную проверку ошибочных условий и выдает соответствующие сообщения об ошибках. Есть два типа ошибок:

устранимые ошибки: соответствуют ненормальным условиям, обнаруженным CDS/ISIS, во многих случаях они сопровождаются сообщением и прекращают только запрошенную операцию; и
прекращающие ошибки: соответствуют условиям ошибочного выполнения, которые CDS/ISIS прямо не обнаруживает, а Паскаль обнаруживает во время выполнения системную ошибку. Это приводит к прекращению программы.

4.1. Устранимая ошибка

Как сказано выше, эти ошибки всегда сопровождаются разъяснительными сообщениями об ошибке CDS/ISIS. В некоторых случаях, тем не менее, CDS/ISIS может выдавать сообщение, которое прямо не определяет причину ошибки. Например, чтобы проверить, существует ли файл, CDS/ISIS пытается вначале открыть его для ввода и, если открытие неудачно, система делает вывод, что файл не существует, и выдает сообщение по этому случаю, например:

264 Не найдена ТВП для генерации инвертированного файла.

Тем не менее, это сообщение может в действительности означать, что вы не указали достаточное число файлов в CONFIG.SYS (как описано в разделе 2.2.1.6. "Требования к начальной конфигурации" или что неверный путь указан в SYSPAR.PAR или dbn.PAR (смотри раздел 2.1.1. "SYSPAR.PAR: Глобальные параметры").

Выбор сообщения об ошибках CDC/ISIS дан ниже в алфавитном порядке (номер, предшествующий сообщению, является номером сообщения, как указано в "Списке английских сообщений"):

491 Переполнена таблица адресов.
(CDS/ISIS Паскаль). Таблица адресов компилятора заполнена и компиляция не может продолжаться. Ваша программа слишком большая.

323 Нельзя обновить. Запись в файле документов превышает 512 символов.

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

125 Дублирование возможно только после обновления инвертированного файла.
Файл документов не может быть сброшен, если инвертированный файл не был обновлен в соответствии с последними изменениями. Вначале, обновите инвертированный файл (используя возможность U сервиса ISISINV), затем начните сброс снова.

265 Не найден рабочий лист! Нажмите любую клавишу для возврата в меню.
Выбранный рабочий лист ввода данных не существует. Проверьте имя и выберите снова рабочий лист или по умолчанию (имеющий то же имя, это и база данных).

67 Управление файлом данного типа из этого меню невозможно!
Вы пытаетесь создать или обновить системный рабочий лист как меню. Проверьте, правильное ли меню ISISUTL вы выбрали.

74 Сдвинуть нельзя, повторите, введите правильное значение
N:
При редактировании рабочего листа или меню вы пытаетесь переместить поля вверх или вниз, однако номер строки вы указываете такой, что выводит за пределы области данных (строки 1-21)

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

98 MFN внесет переполнение записей HIT файла. HIT записи игнорируется.
Длина ключа сортировки и заголовок, генерируемый с помощью ТОП для печати превышает 510 символов. Уменьшите длину одного или большего количества ключей сортировки.

36 В записи слишком много символов. Нажмите CR для редактирования.
Запись главного файла вы можете редактировать, используя максимальную длину записи (8000 символов), и не можете сохранить в базе данных. Нажмите СR для редактирования записи.

293 База данных уже существует. Удалите все файлы (Y/N)?
Вы определили новую базу данных с именем уже существующей. Если ответить Y, все ее файлы будут удалены!

296 База данных не существует.
База данных, которую вы выбрали, не существует. Заметим, что CDS/ISIS определяет существование базы данных проверкой существования ТОП. Если база данных существует наверняка, тогда проверьте параметр 5 SYSPAR.PAR или параметры в dbn.PAR (смотри раздел 2.1.1. "SYSPAR.PAR: Глобальные параметры").

238 База данных закрыта другим пользователем. Повторите позже.
(Только для WAX). База данных в настоящий момент недоступна для запрещенной операции.

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

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

113 *** Ошибка *** EOF встретился перед последней записью.
Во время сброса файла документов,CDS/ISIS обнаружено условие конца файла до окончания всех записей в базе данных. Это обычно говорит о том, что файл испорчен. Проверьте файл TRACE.DAT (в рабочем каталоге файлов) для определения последней успешно сброшенной записи.

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

306 Файл уже присвоен другой базе данных. CR-для возврата в меню.
Вы пытаетесь создать или редактировать базу данных, компоненты определения которой, имеют то же имя, что и у существующей. Измените имя.

331 Формат слишком длинный. Отредактировать невозможно.
Формат превышает 4000 символов. Если возможно, удалите лишние пробелы или запятые, сократив его.

38 Неверный параметр базы данных в файле dbn.PAR
Указанный параметр неверный. База данных не может быть выбрана.

353 Неверный адрес буфера вывода. Введите как #хххх
(смотри приложение 3. "Перечень сообщений").

431 Неверный MFN во входной метке.
Поле, которое вы указали для входного MFN, во время импорта не содержит число. Убедитесь, что данные в порядке или проверьте, что вы указали правильное поле.

517 Неверный или неподдерживаемый атрибут PROGRAM
CDS/ISIS Паскаль). Атрибуты программ, которые могут бытьуказаны, это только [MENU] и [FORMAT].

144 Инвертированный файл существует и будет очищен, (Y/N)?
Предупреждающее сообщение, выдаваемое тогда, когда запрошенная операция будет вначале удалять инвертированный файл (напр. перед полной генерацией инвертированного файла).

285 ТВП инвертированного файла не может быть удалена!
ТОП для инвертированного файла нельзя удалить.

143 Файл документов существует и будет очищен, (Y/N)?
Вы не можете выбрать язык общения, пока соответствующая база данных является текущей.

449 Программа содержит ошибки компиляции.
(CDS/ISIS Паскаль). Вы пытаетесь запустить программу, которая неверно скомпилирована. Исправьте программу и перекомпилируйте.

226 Отброшенный ключ.
Пока загружается или обновляется имвертированный файл, CDS/ISIS обнаруживает неверный термин, который не может быть записан в словарь (напр. пустой термин или термин, начинающийся с символа ниже чем ASCII 33). Термин игнорируется и процесс продолжается. Вы можете проверить, тем не менее, ваши данные или ТОП, чтобы определить причину.

321 Файл сохранения уже существует. Удалить (Y/N)?
Файл сохранения с таким же именем, как и вами специфированный, уже существует. Последний правильный сброс и перегенерация инвертированного файла.

393 Системная ошибка. В файле документов ошибка несоответствия. Восстановите последнее значение и перегенерируйте инвертированный файл.
392 Внимание! Повторная ссылка.
391 Внимание! Ссылка не найдена. Нельзя удалить.
(Сообщения 391,392 и 393 описаны в разделе 3.5.5. "Обновление инвертированного файла").

4.2. Завершающие ошибки.

Ошибки Паскаля во время выполнения приведут к сообщению следующей формы:

?Error: MESSAG [error in file ИМЯ_ФАЙЛА]
Error code N, Status S

MESSAG - это рассматриваемое сообщение об ошибке, соответствующее коду ошибки N (заметим, что часть "error in file" появляется только для ошибок системных файлов).
Выбор возможного сообщения, данный ниже, отсортирован по возрастанию кода:

1000 Write error when closing file
Ошибка записи на диске при закрытии указанного файла. Наиболее вероятно, что ошибка оборудования или диск не подготовлен.

1003 Error during creation of new file
CDS/ISIS запрашивает создание нового файла, но MS DOS не удовлетворяет запрос (напр. ваш диск может быть не подготовлен или вы заняли максимальное число файлов, которое можно записать в оглавлении).

1009 File too big
Указанный файл имеет длину 32 Мегабайта (которая является максимальным размером файла для MS DOS).Если это касается файла документов или инвертированного базы данных, вы можете попробовать реорганизовать указанные файлы, используя CDS/ISIS сброс/восстановление (ISISХСН или ISISINV) сервис.

1010 Write error when seeking to direct record
Ошибки в записи на диске при записи в указанный файл

1023 Operation error
Неверная операция связанная с указанным файлом

1027 File name error
CDS/ISIS сгенерировано неверное имя файла. Это может быть связано с неверным параметром в SYSPAR.PAR или dbn.PAR

1028 Device full error
Ваш диск заполнен. Удалите неиспользуемые файлы.

1032 File not found
1033 Path not found
Обычно это бывает, когда неверен или неполон путь в SYSPAR.PAR или dbn.PAR

1034 Too many open files
Обычно это связано с тем, что вы не создали или не изменили CONFIG.SYS, где надо указать FILES=20. Если вы сделали это, надо увеличить количество файлов в CONFIG.SYS или ввести (что значит перегрузить машину, для изменения CONFIG.SYS).

1045 Invalid drive specefied
Обычно это связано с неверным или неполным SYSPAR.PAR или dbn.PAR или неверным устройством, указанным для сброса, восстановления, импорта или экспорта.

Приложение 5. Файлы CDS/ISIS

The UNESCO micro CDS/ISIS Software

Этот раздел описывает различные файлы системы CDS/ISIS, соглашения по наименованию файлов и расширения файлов, используемые для каждого типа файлов. Все файлы CDS/ISIS имеют следующие стандартные имена:

nnnnnn.eee,
где:

nnnnnn - имя файла (все имена файлов, кроме имен программ, ограничиваются максимум 6 символами).
.еее - расширение файла, определяющее тип файла.

Файлы, помеченные "*" являются файлами ASCII, которые могут выводиться на дисплей или принтер. Другие файлы являются двоичными файлами.

5.1. Системные файлы

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

5.1.1. Программа CDS/ISIS

Имя программного файла, поставляемого UNESCO - ISIS.EXE.
В зависимости от реализации и/или назначения компьютера, может быть также один или несколько оверлейных файлов. Они, если существуют, имеют расширение OVL. Проверьте содержание ваших системных дискет или лент, существуют ли оверлейные файлы.

5.1.2. Системные меню и рабочие листы

Все системные меню и рабочие листы имеют расширение файлов FMT, а имена создаются следующим образом:

pctnnn.FMT
где:

р - номер страницы (А - для первой страницы, В - для второй и т. д.);
с - код языка (например, Е - английский) который должен быть одним из предоставляемых в меню выбора языка хХLNG;
t - Х - для меню и Y - для системных рабочих листов;
nnn - уникальный идентификатор.

Например, полное имя английской версии меню хХGEN - AEXGEN.FMT.

Номер страницы прозрачен для пользователя CDS/ISIS. Аналогично расширению файла, номер страницы автоматически предоставляется системой. Поэтому, когда программа CDS/ISIS указывает на необходимость ввести имя меню или рабочего листа, вы не должны указывать номер страницы. Кроме того, т. к. имена файлов ограничиваются 6 символами, имена меню и рабочих листов не могут превышать длину 5 символов.

Системные меню и рабочие листы могут состоять только из одной страницы.

Код языка является обязательным для системных меню и стандартных рабочих листов. Например, если необходимо сязать HELP меню с системным меню EXGEN, то его имя должно начинаться с буквы "Е".

Соглашение X должно выполняться только для стандартных системных меню. Целесообразно, однако, использовать то же соглашение для меню, которое вы создаете и избегать создание рабочих листов (включая рабочие листы для ввода данных) с "X" в данной позиции, т. е. с такими именами как хХххх. Более того, если имя базы данных содержит Х или Y во второй позиции, то соответствующие рабочие листы по вводу данных, создаваемые в директории системного рабочего листа (параметр 2 SYSPAR.PAR), отличаются от директория базы данных. Хотя это не препятствует нормальному функционированию базы данных, это не рекомендуется.

5.1.3. Файлы системных сообщений

Системные сообщения и подсказки хранятся в стандартных базах данных CDS/ISIS. Все файлы соответствующих баз данных (см. ниже) необходимы при обновлении файла сообщений, но для вывода сообщений на экран используется только файл документов.
Для каждого языка должна быть создана база данных сообщений, поддерживаемая с помощью меню выбора языка хХLNG.
Имя базы данных, присваиваемое базе данных сообщений - хMSG (где х - код языка).

5.1.4. Системные таблицы

Системные таблицы используются CDS/ISIS для определения наборов символов. В настоящее время требуется два таких набора:

ISISUC.TAB* - определяет перевод строчных символов в прописные;
ISISAC.TAB* - определяет буквенные символы.

5.1.5. Системная печать и рабочие файлы

Некоторые функции печати CDS/ISIS не отправляет выходные данные непосредственно на принтер, а сохраняет их на дисковом файле, из которого их можно распечатать в удобное время. Все эти файлы имеют расширение LST и повторно используются каждый раз, когда выполняется соответствующая функция.

Кроме того, CDS/ISIS создает временные рабочие файлы, которые обычно автоматически аннулируются в конце сеанса. Если сеанс заканчивается аварийно, то они не удаляются. Причиной аварийного окончания может быть отключение питания во время выполнения программы CDS/ISIS. Данные файлы, однако, используются повторно каждый раз, так что нет необходимости удалять их вручную. Все рабочие файлы имеют расширение TMP.

Файлы печати и рабочие файлы, создаваемые CDS/ISIS, приводятся ниже:

IFLIST.LST* - инвертированный файл файла печати (создается ISISINV);
WSLIST.LST* - файл печати рабочих листов и меню (создается ISISUTL);
xMSG.LST* - файл печати системных сообщений (создается ISISUTL);
xLST* - выходная печать (создается ISISPRT если не предоставлено имя печати);

   SORT10.TMP - рабочий файл сортировки 1;
   SORT11.TMP - рабочий файл сортировки 2;
   SORT12.TMP - рабочий файл сортировки 3;
   SORT13.TMP - рабочий файл сортировки 4;
   SORT20.TMP - рабочий файл сортировки 5;
   SORT21.TMP - рабочий файл сортировки 6;
   SORT22.TMP - рабочий файл сортировки 7;
   SORT23.TMP - рабочий файл сортировки 8;
   TRACE.TMP* - файл трассировки, создаваемый определенными программами;
   ATSF.TMP - временная память для целевых списков, создаваемая во время поиска;
   ATSQ.TMP - временная память для поисковых выражений.

5.2. Файлы базы данных

Каждая база данных состоит из нескольких физически различных файлов, как указывается ниже.

Существует три категории файлов базы данных:

1) обязательные файлы, которые всегда должны присутствовать. Они обычно устанавливаются, когда база данных определяется с помощью программы ISISDEF и никогда не удаляются;
2) вспомагательные файлы, создаваемые системой всякий раз, когда выполняются определенные функции. Они могут периодически удаляться, когда становятся более ненужными;
3) пользовательские файлы, создаваемые пользователем базы данных (такие как форматы дисплея) которые полностью находятся под контролем пользователя.
В следующем описании хххххх является 1-6 символьное имя базы данных.

5.2.1. Обязательные файлы базы данных

   хххххх.FDT* - таблица определения полей;
   хххххх.FST* - таблица выбора полей для инвертированного файла;
   рххххх.FMT* - рабочий лист для ввода данных, выбираемый по умолчанию (где р - номер страницы). Заметим, что имя базы данных усекается до 5 символов, если необходимо;
   хххххх.PFT* - формат печати, выбираемый по умолчанию;
   хххххх.MST - файл документов;
   хххххх.ХRF - файл перекрестных ссылок (индекс файла документов);
   хххххх.CNT - управляющий файл В-дерева (словарь поисковых терминов);
   хххххх.N01 - узлы В-дерева (для терминов, длиной до 10 символов);
   хххххх.L01 - листья В-дерева (для терминов, длиной до 10 символов);
   хххххх.N02 - узлы В-дерева (для терминов, длиной более 10 символов);
   хххххх.L02 - листья В-дерева (для терминов, длиной более 10 символов);
   хххххх.IFP - регистрации инвертированного файла;
   хххххх.ANY* - файл ANY (групп).

5.2.2. Вспомагательные файлы

   хххххх.STW* - файл стоп-слов, используемый при генерации инвертированного файла;
   хххххх.LN1* - неотсортированный файл связей (короткие термины);
   хххххх.LN2* - неотсортированный файл связей (длинные термины);
   хххххх.LK1* - отсортированный файл связей (короткие термины);
   хххххх.LK2* - отсортированный файл связей (длинные термины);
   хххххх.ВКР - поддерживающий файл документов;
   хххххх.XHF - целевой файл индексов;
   хххххх.HIT - целевой файл;
   хххххх.SRT* - отсортированная таблица преобразования (см. раздел 17.5. "Таблица преобразования в прописные буквы (ISISUC.TAB)").

5.2.3. Пользовательские файлы

YYYYYY.FST* - таблица выбора полей, используемая при сортировке;
YYYYYY.PFT* - дополнительные форматы печати;
pYYYYY.FMT* - дополнительные рабочие листы для ввода данных;
YYYYYY.STW* - дополнительный файл стоп-слов;
YYYYYY.SAV - файл сохранения, созданный при поиске. Имена файлов пользователя находятся полностью под контролем пользователя.

Однако, во избежание возможных конфликтов, желательно установить некоторые стандартные соглашения, которым должны следовать все пользователи CDS/ISIS на данной вычислительной установке, так, чтобы, например, определить YYYYYY следующим образом:

хххYYY,

где:
ххх - идентификатор базы данных (который может быть тремя первыми буквами имени базы данных, и имена двух баз данных не могут начинаться с трех одинаковых букв);
YYY - имя, выбранное пользователем.

Приложение 6. Структура файла документов и формат записи

The UNESCO micro CDS/ISIS Software

6.1. Формат записи файла документов

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

6.1.1. Формат головной части

Головная часть содержит следующие 7 целых (поля, отмеченные * являются 31-битовыми целыми со знаком):

MFN   * Номер файла документов (МFN);
MFRL    Длина записи (всегда одинаковое число);
MFBWB * Обратный указатель - номер блока;
MFBWP   Обратный указатель - смещение;
BASE  Смещение для переменных полей (это комбинированная длина головной части и оглавления записи в байтах);
NVF     Число полей в записи (т. е. вхождений в оглавление);
STATUS  Индикатор логического удаления (0 = запись действительна, 1=запись отмечена для удаления).

MFBWB и MFBWP первоначально установлены в 0, когда запись создается. Впоследствии они обновляются каждый раз, когда сама запись обновляется (смотри ниже).

6.1.2. Формат оглавления.

Оглавление - это таблица указывающая на содержимое записи. Имеется одно вхождение в оглавление для каждого поля, представленного в записи (т. е. оглавление имеет точно ЧПЗ вхождений).
Каждое вхождение в оглавление состоит из 3 целых чисел:

TAG    Метка поля;
POS    Смещение позиции первого символа поля в части переменного поля (первое поле имеет POS=0);
LEN    Длина поля в байтах;

Общая длина оглавления в байтах является, таким образом, 6*NVF; поле BASE в головной части всегда: 18+6*NVF.

6.1.3. Переменные поля

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

6.2. Управляющая запись

Первая запись в главном файле является управляющей, ее система устанавливает автоматически. Это никогда не доступно пользователю ISIS. Ее содержание следующее (поля, отмеченные * являются 31-битовыми целыми со знаком):

CTLMFN * всегда 0;
NXTMFN * MFN назначен следующей создаваемой записи в базе данных;
NXTMFB * Номер последнего блока, расположенного в файле документов (первый блок равен 1);
NXTMFF   Смещение следующей доступной позиции в последнем блоке;
METYPE  Всегда 0 для данных пользователя (1 для файлов системных сообщений).

6.3. Формат блока файла документов

Записи файла документов записываются последовательно, одна за другой, каждая запись занимает точно MFRL байт. Файл записывается физическими блоками в 512 байт. Запись может начинаться на границе любого слова между 0-498 (ни одна запись не начинается между 500-510) и может продолжаться на втором и более блоках.

Так как файл документов создается и/или обновляется, система устанавливает индекс, указывающий позицию каждой записи. Индекс записывается в файле перекрестных ссылок (.XRF).

6.4. Файл перекрестных ссылок

Файл XRF организован, как таблица указателей на файл документов. Первый указатель соответствует MFN1, второй - MFN2 и т. д.
Каждый указатель

RECCNT *
MFCXX1 *
MFCXX2 *
MFCXX3 *

состоит из двух полей:

XRFMFB (21 бит) Номер блока файла документов, содержащего запись
XRFMFP (11 бит) Смещение в блоке позиции первого символа записи (первая позиция блока равна 0)

которые записаны в 31-битовом целом со знаком (4 байта) следующим образом:

указатель = XRFMFB*2048+XRFMFP

(таким образом, дающий максимальный размер файла документов в 500 Мегабайт).

Каждый блок файла XRF имеет 512 байт и содержит 127 указателей. Первое поле каждого блока (XRFPOS) является 31-битовым целым со знаком, имеющим абсолютное значение номера блока XRF. Отрицательный XRFPOS указывает на последний блок.

Удаленные записи указываются следующим образом:

XRFMFB 0 XRFMFP 0 логически удаленная запись (в этом случае ABS (XRFMFB) является точный указатель блока и XRFMFP является смещением записи, которая таким образом еще может быть восстановлена).
XRFMFB=-1 XRFMFP=0 физически удаленная запись.
XRFMFB=0 XRFMFP=0 несуществующая запись (все записи за самым большим MFN, присвоенным в базе данных)

6.5. Техника обновления файла документов
6.5.1. Создание новых записей

Новые записи всегда добавляются в конец файла документов, с позиции, указанной в полях NXTMFB/NXTMFP в управляющей записи файла документов. MFN, который будет назначен, также берется из поля NXTMFN в управляющей записи.

После добавления записи, NXTMFN увеличивается на 1 и NXT-MFB/NXTMFP обновляются на место следующей доступной позиции. При добавлении новый указатель в файле XRF и поле XRFMFP соответствует создаваемой записи, увеличенной на 1024, что указывает на необходимость инвертирования новой записи (после инвертирования новой записи, 1024 вычитается из XRFMFP).

6.5.2. Обновление существующих записей

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

1. Попытка обновить запись не инвертированного файла

Это условие указывается следующим:

В  XRF  XRFMFP<512 и
В  MST  MFBWB=0 и MFWBP=0

В этом случае, запись всегда переписывается в конец файла документов (так, если бы это была новая запись), что указывается NXTMFB/NXTMFP в управляющей записи. В новой версии записи MFBWB/MFBWP устанавливаются на место старой версии записи, пока в файле XRF указатель не укажет на новую версию. При добавлении, 512 добавляется к XRFMFP, что указывает на необходимость обновления инвертированного файла. Когда инвертированный файл будет обновлен, старая версия записи будет определена к удалению, а новая версия будет добавлена к новому отправлению. После обновления инвертированного файла, 512 будет вычтено из XRFMFP, а MFBWB/MFBWP будут установлены в 0.

2. Попытка обновить инвертированный файл

Это условие указывается следующим:

В XRF XRFMFP  512 и
В MST MFBWB  0

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

6.5.3. Удаление записей.

Удаление записи аналогично обновлению, со следующими дополнительными особенностями:

В XRF XRFMFB отрицательно
В MST STATUS установлен в 1

6.6. Реорганизация файла документов.

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

Во время фазы сброса файла документов создается файл сброса (.ВКР). Структура и формат этого файла такой же как и в файле (.MST), исключая то, что файл перекрестных ссылок не запрашивается, так как все записи соседствуют.

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

Во время фазы восстановления, файл сброса последовательно читается и программа воссоздает файлы MST и XRF. В этом месте все записи, которые отмечены для логического удаления (до сброса), вновь отмечаются, как физически удаленные (установкой XRFMFB=-1 и XRFMFP=0). Удаленные записи обнаруживаются проверкой пропусков в нумерации MFN.

Приложение 7. Структура инвертированного файла и форматы записей

The UNESCO micro CDS/ISIS Software

7.1. Введение

Инвертированный файл CDS/ISIS состоит из шести физических файлов, пять из которых содержат словарь терминов поиска (организованный как В-дерево), а шестой содержит список указателей, связанных с каждым термином. В порядке оптимизации дисковой памяти, два разделенных В-дерева взаимосвязаны, одно для терминов длиной до 10 символов (запоминаемых в файлах .N01/.L01) и другое для терминов длиннее, чем 10 символов, до максимума в З0 символов (запоминаемых в файлах .N02/.L02). Файл CNT содержит управляющие поля для обоих В-деревьев. В каждом файле В-дерева .NOx содержатся ветви дерева, а в файле .L0x содержатся листья. Записи листьев указывают на соответствующие регистрации файла .IFP.

Взаимосвязь между различными файлами схематически представлена на рис. 67. Физическая связь между этими шестью терминами - это указатель, который представляет относительный адрес записи, на который он указывает. Относительный адрес - это обычный номер записи в данном файле (т. е. первая запись имеет номер 1, вторая - 2 и т. д.). Файл .CNT указывает на файл .N0x, N0x указывает на файл .L0x, а .L0x указывает на .IFP. Так как .IFP - упакованный файл, указатель из .L0x на .IFP имеет две компоненты: номер блока и смещение в блоке, представленные каждый раз как целые.

7.2. Формат файла .CNT

Этот файл содержит две 26-байтовые записи (для каждого В-дерева), содержащие следующие 10 целых (поля, отмеченные *, являются З1-битовыми целыми со знаком):

IDTYPE - Тип В-дерева (1 для .N01/.L01, 2 для .N02/.L02);

ORDN - Порядок ветвей (каждая запись .N0x содержит не более 2*ORDN ключей);
ORDF - Порядок листьев (каждая запись .LOx содержит не более 2*ORDF ключей);
N - Число буферов в памяти, предназначенных для ветвей;

К - Число буферов, предназначенных для 1-го уровня индекса ( K ( N );
LIV -   Текущий номер индексных уровней;
POSRX *   Указатель на корневую запись в .N0x;
NMAXPOS *   Следующая доступная позиция в файле .N0x;
FMAXPOS *   Следующая доступная позиция в файле .L0x;
ABNORMAL - Формальный индикатор нормализации В-дерева (0, если В-дерево ненормализовано, 1, если В-дерево нормализовано). В-дерево является ненормализованным, если файл веток .N0x содержит только корень.

ORDN, ORDF, N и К фиксированы для данной сгенерированной системы. Обычно эти значения следующие:

ORDN=5; ORDF=5; N=15; K=5 для обоих В-деревьев.

Рис. 67: Структура инвентированного файла

Другие значения устанавливаются по запросу при генерации В-дерева.

7.3. Формат файлов .N0x

Эти файлы содержат индекс(ы) словаря терминов поиска (.N01 для терминов, короче 10 символов и .N02 для терминов, длиннее 10 символов). Файл .N0x имеет записи следующего формата (поля, отмеченные * являются З1-битовыми целыми со знаком):

POS * целое, указывающее относительный номер записи (1 для первой, 2 для второй и т. д.);
ОСК   целое, указывающее число активных ключей в записи ( 1 <= OCK <= 2*ORDN );
IT - целое, указывающее тип В-дерева (1 для .N01 и 2 для.N02);
IDX - массив входов ORDN (ОСК из которых активны), каждого следующего формата:

   KEY строка символов фиксированной длины LEx (LE1=10, LE2=30);
   PUNT указатель на запись .N0x (если PUNT) 0) или .L0x (если PUNT( 0), чей IDX(1).KEY=KEY.PUNT=0 указывает на активный вход. Положительный PUNT указывает ветвь индекса иерархически более высокого уровня. Самый высокий уровень индекса (PUNT) 0) указывает на лист в файле .L0x.

7.4. Форматы файлов .L0x

Эти файлы содержат словарь терминов поиска (.L01 для терминов, короче 10 символов, и .L02 для терминов, длиннее 10 символов). Записи файла .L0x имеют следующий формат (поля со * - 31-битовые целые со знаком):

POS  * целое, указывающее отностельный номер записи (1 для первой, 2 для второй и т. д.);
ОСК    целое, указывающее число активных ключей в записи ( 1 <= OCK <= 2*ORDF );
IT    целое, указывающее тип В-дерева (1 для .N01, 2 для .N02);
PS * указатель на применение записи .L0x (т. е. запись, чей IDX[1].KEY является непосредственным приемником для IDX[OCK].KEY в этой записи (это используется для ускорения последовательного доступа к файлу));
IDX  массив ORDN входов (ОСК из которых активны), каждого следующего формата:

  KEY строка символов фиксированной длины LEx (LE1=10, LE2=30);
  INFO указатель на запись .IFP, где список отправленных записей связан с начальным KEY. Этот указатель состоит из двух 31-битовых целых со знаком следующего вида:
         INFO[1] * относительный номер блока в .IFP
         INFO[2] * смещение (число слов относительно
                           0) к списку отправленных.

7.5. Формат файла .IFP

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

IFPBLK 31-битовое целое со знаком, указывающее номер блока для него (блоки нумеруются с 1);
IFPREC массив 127 З1-битовых целых со знаком;
IFPREC[1] и IFPREC[2] первого блока являются указателями на следующую свободную позицию в файле .IFP.

Указатели из .L0x на .IFP и указатели в .IFP cостоят из двух З1-битовых целых со знаком: первое целое - это номер блока, а второе целое - это смещение слова в IFPREC (например, смещение первого слова в IFPREC - это 0). Список указателей по отношению к первому термину поиска будет начинаться с 1/0.

Каждый список указателей состоит из заголовка (5 двойных слов), следующего за текущим списком указателей (8 байт для каждого указателя). Заголовок имеет следующий формат (каждое поле - это З1-битовое целое со знаком):

IFPNXTB  * Указатель следующего сегмента (номер блока);
IFPNXTP  * Указатель следующего сегмента (смещение);
IFPTOTP  * Общее число указателей (только в первом сегменте);
IFPSEGP * Число указателей в этом сегменте ( IFPSEGP <=IFPTOTP );
IFPSTGC * Возможность сегмента (т. е. число указателей, которые могут быть записаны в этот сегмент).

Каждый указатель - это 64-битовая строка, разбитая следующим образом:

PMFN  (24 бита) MFN;
PTAG  (16 бит)  Идентификатор поля (присвоенный в ТВП);
POCC  (8 бит)   Число вхождений;
PCNT  (16 бит)  Последовательный номер термина в поле.

Каждое поле записывается строго слева-направо с добавленными нулями впереди, если надо, чтобы выровнять соответствующую строку битов вправо (это позволяет сравнивать два указателя, как символьные строки).

Список указателей записывается в возрастающей последовательности: PMFN/PTAG/POCC/PCNT. Когда инвертированный файл загружается последовательно (например, после пустого инвертированного файла, сгенерированного ISISINV), каждый список содержит один или более соответствующих сегментов. Если IFPTOT<=32768, тогда IFPNXTB/IFPNXTP=0/0 и IFPTOT=IFPSEGP=IFPSEGC.

При выполнении обновления, могут создаваться дополнительные сегменты, если отправления должны добавиться. В этом случае новый сегмент с помощью возможностей IFPTOTP создается и связывается с другими сегментами (через указатель IFPNXTB/IFPNXTP) таким путем, что последовательность PMFN/PTAG/POCC/PCNT сохраняется. Это расщепляет вхождение отправленных в сегменте, где новое отправленное должно быть вставлено, что эквивалентно разделению между этим сегментом и вновь созданным сегментом. Новые сегменты записываются в конец файла (который сохраняет в IFPREC[1]/IFPREC[2] первого блока .IFP).

Для примера, добавим, что новое отправленное Рх должно быть вставлено между Р2 и Р3 следующим обазом:

Новое Рх между Р2 и Р3

после раскола (и добавления, что следующая свободная позиция в .IFP  - это 3/4), список отправленных будет содержать следующие сегменты:

Список отправленных содержащий следующие сегменты

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

1) заголовок и первое отправленное в каждом списке (28 байт) никогда не раскалываются на два блока;
2) отправленное никогда не раскалывается между двумя блоками; если не хватает памяти в текущем блоке, отправленное целиком записывается в следующем блоке.