Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис    FTP-сервер
Часто задаваемые вопросы (FAQ) :  ИРБИС Irbis
Исключительно важный раздел форума, который необходимо прочитать всем, кто только начинает работать с Ирбисом. Если ваши знания не так широки, как вам хотелось бы, тогда обязательно прочитайте этот раздел. Если вы не нашли, что искали, то воспользуйтесь поиском по форуму, и, скорее всего, вы найдете ответ на свой вопрос среди существующих сообщений. 
Обзор: Внешние объекты и Внутренние двоичные объекты в ИРБИС
Пользователь: Alio (IP-адрес скрыт)
Дата: 11, August, 2008 15:16

Обзор: Внешние объекты и Внутренние двоичные объекты в ИРБИС

Внешние объекты
ИРБИС предлагает возможность связывать документы БД с внешними объектами – каковыми могут быть любые файловые ресурсы или Интернет-ресурсы.
Для описания ссылок на внешние объекты в БД электронного каталога предлагается специальное поле - по умолчанию метка 951 (на странице РЛ ТЕХНОЛОГИЯ)
Поле 951 повторяющееся - это значит, что одно описание (документ) может иметь несколько внешних объектов. Одно повторение поля 951 описывает один внешний объект. Для описания одного внешнего объекта предлагается три подполя:
- А - имя файла внешнего объекта;
- I - URL внешнего объекта;
- Т - название внешнего объекта на естественном языке.
Подполя А и I являются АЛЬТЕРНАТИВНЫМИ, т.е. заполнение обоих подполей в одном повторении НЕ ИМЕЕТ СМЫСЛА, должно быть ОБЯЗАТЕЛЬНО заполнено одно из них.
Подполе А. используется в тех случаях, когда внешний объект (файл) находится в директории, которая указывается в 11 строке файла \IRBIS64\DATAI\<имя_БД>.par (например - ^ASampleFile.pdf).
Данный способ описания внешнего объекта (через подполе А) является ПРЕДПОЧТИТЕЛЬНЫМ.
Подполе I используется в тех случаях, когда внешний объект может быть определен только через абсолютный адрес:
- или URL - и в этом случае он же и указывается (например - ^Ihttp://www.gpntb.ru)
- или полный путь, включающий имя компьютера (например - ^I\\ALIO\c\111\222\мой_доклад.doc).
В ПОСЛЕДНЕМ СЛУЧАЕ (когда указывается полный путь) ВОЗНИКНУТ ПРОБЛЕМЫ ПРИ ПОКАЗЕ ВНЕШНЕГО ОБЪЕКТА через Web - которые необходимо решать с помощью специальной корректировки форматов показа.

ВАЖНОЕ ЗАМЕЧАНИЕ: Если внешним объектом является HTML-файл, в котором внутри присутствуют ссылки на ОТНОСИТЕЛЬНЫЕ URL, такой внешний объект может быть описан ТОЛЬКО через 951^I


В форматах показа внешние объекты отображаются в виде ссылок. Для этого предлагаются соответствующие конструкции языка форматирования: для RTF-форматов - &uf(‘+I…); для HTML-форматов – ИРБИС-ссылки (<A HREF=”IRBIS:3,path,dbname,filename”…>). Подробнее об этом – см. в описании Языка форматирования (Приложение 4 Общего описания)

Внутренние двоичные ресурсы
ИРБИС (только ИРБИС64) предлагает возможность хранить внутри документов двоичные ресурсы и представлять их (ссылаться на них) в выходных формах (через форматы показа).
Данная возможность может быть использована в следующих случаях:
а) Двоичные ресурсы (например, графические данные, видео, звук и т.п.) должны оставаться НЕОТЪЕМЛЕМОЙ частью документа, т.е. портироваться (копироваться, импортироваться, экспортироваться) вместе с ним (на основе внешних объектов это сделать затруднительно);
б) Двоичный ресурс находится ВНУТРИ КОНТЕКСТА (внутри поля/подполя). Например: внутри заглавия есть сложная математическая или химическая формула (которую с помощью UNICODE не ввести) - как ее ввести и потом отображать? С помощью внутреннего двоичного ресурса это можно сделать следующим образом: формула сканируется, т.е превращается в графический ресурс (файл), затем данный ресурс ВВОДИТСЯ в документ как внутренний, после чего в нужном месте заглавия ВВОДИТСЯ команда (см. ниже), ссылающаяся на соотвествующий внутренний ресурс.
Как вводить в документ двоичные ресурсы?
Для хранения таких данных в документе предусматривается специальное поле (по умолчанию 953 - параметрируется через параметр TagInternalResource в секции [MAIN] серверного INI-файла). Ввод в данное поле (для БД электронного каталога) предлагается в РЛ на странице ТЕХНОЛОГИЯ. Поле – повторяющееся, каждое повторение содержит один двоичный ресурс. Поле содержит четыре подполя:
- A - тип внутреннего ресурса;
- Т – название двоичного ресурса;
- P – характер ресурса;
- B - собственно ресурс.
Для ввода поля предусмотрен вложенный РЛ - 953.wss. Тип внутреннего ресурса (подполе А) совпадает с типом (расширением) соотвествующего файла. Для ввода типов ресурсов предусмотрен справочник 953.mnu. Для ввода собственно двоичного ресурса (подполе В) используется метод ввода 12 - ВВОД ИЗ ВНЕШНЕГО ФАЙЛА - с опцией 3 (ВВОД ДВОИЧНЫХ РЕСУРСОВ – см. подробнее в Приложении 8 Общего описания), при этом можно указывать маску для выбираемых в качестве двоичного ресурса файлов при обзоре (через запятую после опции 3). При вводе указанного файла АВТОМАТИЧЕСКИ переносится его расширение в подполе А. Возможен ввод двоичного ресурса через БУФЕР ОБМЕНА Windows - в том случае, если таковым являются графические данные в формате BMP. Умалчиваемым типом двоичного ресурса (т.е. если подполе А пустое) является BMP. Двоичные ресурсы хранятся в документе в текстовом формате (т.е. подвергаются специальной кодировке, чтобы исключить НЕДОПУСТИМЫЕ с точки зрения ИРБИС символы). В подполе Р (характер ресурса) можно указать, является ли двоичный ресурс контекстным (т.е. является частью некоего поля/подполя) или независимым (внеконтекстным – например, фотография читателя).
Как выводить (отображать) двоичные ресурсы в форматах показа?
Прежде всего необходимо отметить, что это возможно ТОЛЬКО в HTML-форматах!
Предлагаются следующие способы отображения внутренних двоичных ресурсов:
ПЕРВЫЙ СПОСОБ: (наиболее удобный) в нужное место документа вводится (т.е. собственно в поле/подполе документа или через формат в результат расформатирования) команда в виде:
[[N]]
где N - номер внутреннего двоичного ресурса в документе, т.е. номер соответствующего повторения поля 953 (начиная с 1).
Данный способ является единственно возможным в случае, когда место расположения двоичного ресурса НЕ МОЖЕТ БЫТЬ предусмотрено в формате. Например, сложная математическая или химическая формула внутри заглавия конкретного документа. В этом случае команда вывода двоичного ресурса вводится непосредственно в заглавие:

#200: ^A<часть заглавия до формулы> [[1]] <часть заглавия после формулы>

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

(if p(v953) then '[[',&uf('+90'),']]<br>' fi)

(&uf('+90') - номер текущего повторения)
Данный способ отображения внутренних двоичных ресурсов - [[N]] - поддерживается ТОЛЬКО в форматах показа, которые ЯВНО помечены как HTML-форматы. ЯВНО ПОМЕЧЕННЫМ считается такой формат, который начинается с пустого тэга </> (который НИКАК не влияет на представление документа).

ВТОРОЙ СПОСОБ: использование ИРБИС-тэга (см. описание ИРБИС-Навигатора - \IRBIS64\Datai\Deposit\Irbis_Navigator_Help0.html)

<IRBIS TYPE="1" VALUE="dbname,mfn,numb">

dbname - имя БД (по умолчанию - текущая);
mfn - внутренний номер док-та;
numb - номер двоичного ресурса в документе (номер повторения поля 953).
В этом случае указанный выше в качестве примера формат будет иметь вид:

(if p(v953) then '<IRBIS TYPE="1" VALUE=",',mfn,',',&uf('+90'),'"><br>' fi)

ТРЕТИЙ СПОСОБ: (только для графических ресурсов) используется IMG-тэг с ИРБИС-ссылкой (см. описание ИРБИС-Навигатора - \IRBIS64\Datai\Deposit\Irbis_Navigator_Help0.html).

<IMG SRC=”IRBIS:12,dbname,mfn,numb”>

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

(if p(v953) then '<IMG SRC="IRBIS:12,,',mfn,',',&uf('+90'),'"><br>' fi)

Также есть возможность НЕ ОТОБРАЖАТЬ НЕПОСРЕДСТВЕННО двоичный ресурс, а формировать на него ссылку. В этом случае используется ИРБИС-ссылка с командой 3 (см. описание ИРБИС-Навигатора - \IRBIS64\Datai\Deposit\Irbis_Navigator_Help0.html)
Приведенный ниже формат будет формировать ссылки на все двоичные ресурсы док-та:

(if p(v953) then '<A HREF="IRBIS:3,12,,',mfn,',',&uf('+90'),'">’,v953^T ,'</A><br>' fi)

Кроме графических ресурсов (BMP, GIF, JPG) в качестве внутренних двоичных ресурсов можно использовать ЛЮБЫЕ другие, но в форматах показа на них можно ТОЛЬКО ссылаться (т.е. использовать форматную конструкцию, приведенную выше).
В качестве внутренних двоичных ресурсов имеет смысл использовать НЕБОЛЬШИЕ ресурсы. (Если это полный текст книги, то его лучше использовать как внешний объект).
При корректировке внутренних двоичных ресурсов (т.е. при корректировке/добавлении поля 953) их актуальное представление в формате показа АРМа Каталогизатор осуществляется ТОЛЬКО после сохранения документа.
Предлагается специальный форматный выход (UNIFOR), который сохраняет заданный внутренний ресурс в заданном файле - &uf('+9DNN#<полный путь>'), где NN - номер внутреннего двоичного ресурса в текущей записи.
ОСОБЫЙ СЛУЧАЙ - представление внутренних двоичных ресурсов при работе через Web. В этом случае для представления внутренних двоичных ресурсов можно использовать ТОЛЬКО соответствующие команды шлюза (см. описание Web-ИРБИС).
Самыми очевидными примерами внутренних двоичных ресурсов могут быть сканированные обложки редких книг (в БД электронного каталога) и фотографии читателей (в БД читателей RDR).



Редактировано 4 раз. Последний раз 16.09.2015 14:42 пользователем Alio.



Эта тема закрыта.
This forum powered by Phorum.