Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис   
Часто задаваемые вопросы (FAQ) :  ИРБИС Irbis
Исключительно важный раздел форума, который необходимо прочитать всем, кто только начинает работать с Ирбисом. Если ваши знания не так широки, как вам хотелось бы, тогда обязательно прочитайте этот раздел. Если вы не нашли, что искали, то воспользуйтесь поиском по форуму, и, скорее всего, вы найдете ответ на свой вопрос среди существующих сообщений. 
Автоматическое формирование словаря ключевых слов
Пользователь: А.Лавринович (IP-адрес скрыт)
Дата: 12, July, 2005 13:52

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

Re: Автоматическое формирование словаря ключевых слов
Пользователь: Панев Максим (IP-адрес скрыт)
Дата: 12, July, 2005 19:42

1. Самый простой способ - это создать пустую базу, скопировать туда любую реальную запись и посмотреть, из каких полей слова попали в словарь :).
2. Самый правильный вариант - посмотреть в ТВП для формрования словаря, т.е. <имяБД>.FST. Найти там все строки, которые отвечают за формирование словаря с префиксом K= и определить, из каких элементов БО он строится.

Re: Автоматическое формирование словаря ключевых слов
Пользователь: А.Лавринович (IP-адрес скрыт)
Дата: 16, August, 2005 12:23

Например, в ibis.fst это строки:

1200 8 MHL,'/K=/'(v200^a,|%|d200/)
12251 8 MHL,'/K=/'(v225^a,|%|d225/)
12252 8 MHL,'/K=/'(v225^i,|%|d225/)
12253 8 MHL,'/K=/'(v225^l,|%|d225/)
1330 8 MHL,'/K=/'(v330^c,|%|d330/)

и т. д.?
Ну дык оченно уж мудрено! В частности, непонятно, что значат цифры в начале каждой строки. Размер поля в байтах? И вообще я думал, что по умолчанию КС формируются только из заглавий...
Еще наблюдения.
В irbis1.doc префикс K= упомоминается только в контексте «Форматирования документа из другой БД (REF на другую БД)» (Приложение 4).
Далее, в irbis1.doc упоминается mhl. С большим трудом разобрался, что это «команда режима вывода». Немного понятнее сия премудрость изложена в «Руководстве по CDS/ISIS для Windows». Итак: «Режим вывода указывается буквой m […]; h – для режима заголовков [… ] l – для нижнего регистра […]. При определении данных, направляемых в инвертированный файл (т.е. при создании Таблицы выбора полей), регистр не имеет значения, так как при этом все данные обязательно преобразуются в верхний регистр». Впрочем, последнее, наоборот, чуть-чуть яснее объясняется в irbis1.doc: «Система автоматически производит преобразование букв в прописные, когда в этом появляется необходимость. Например, все элементы, создаваемые ТВП для инвертированного файла, переводятся в прописные буквы до их размещения в словаре, даже если ТВП порождает элементы в виде строчных букв». Но тогда непонятно, зачем писать «MHL», если регистр не имеет значения.

Выводы:
1. ирбисоводам и ирбисоведам не обойтись без «Руководства по CDS/ISIS для Windows»
2. хорошо бы в «Общем описании» объяснялось, как определить/изменить список ЭД, из которых формируются КС.
3. в идеале нужно отдельное «Руководство администратора».

Re: Автоматическое формирование словаря ключевых слов
Пользователь: Панев Максим (IP-адрес скрыт)
Дата: 16, August, 2005 13:30

Алексей, на первые цифры в этих строчках в контексте данного обсуждения можно не смотреть. Если обратиться только к преведенным Вами строкам, то можно сказать, что эти строки формируют словарь КС из полей: 200^a, 225^a, 225^i, 225^l, 330^c и т.д. по файлу <имя_БД>.fst.

А формат этой строки ДОСАТОЧНО подробно описан в упомянутом Вами ранее irbis1.doc

Удачи.

Re: Автоматическое формирование словаря ключевых слов
Пользователь: Дунаевская С.М. (IP-адрес скрыт)
Дата: 16, August, 2005 15:16

В версии 2004.1 был введена новая логика поиска "и (в поле)", обеспечивающая выдачу только тех документов, в которых все заданные термины (в частности, ключевые слова) встречаются в одном повторении поля (актуально, например, для повторяющихся полей 225, 922, 330 и др.)
Для реализации этого режима в IBIS.FST введены раздельные квалификаторы (<цифры в начале каждой строки>) для каждой метки поля, из которой формируются ключевые слова.
Построение этого квалификатора, в принципе, абсолютно произвольное, у нас мнемонически связано с меткой поля
1200 8 MHL,'/K=/'(v200^a,|%|d200/) - "1"- поле заглавия, "200"- метка поля 200
12251 8 MHL,'/K=/'(v225^a,|%|d225/) - "1"- поле заглавия, "225" - метка поля 225, "1" - первый элемент из поля 225 (^a)
12252 8 MHL,'/K=/'(v225^i,|%|d225/) - "1"- поле заглавия, "225" - метка поля 225, "2" - второй элемент из поля 225 (^i)
12253 8 MHL,'/K=/'(v225^l,|%|d225/) - "1"- поле заглавия, "225" - метка поля 225, "3" - третий элемент из поля 225 (^l)
1330 8 MHL,'/K=/'(v330^c,|%|d330/) - "1"- поле заглавия, "330"- метка поля 330
Для обеспечения режима поиска "Термины в " в ini-файлах АРМов Каталогизатор и Читатель в секции [SEARCH] перечислены все квалификаторы строк, формирующих термины, которые относятся к определенной группе полей (заглавие, коллектив/мероприятие, предметные заголовки)
CvalifName1=заглавии
CvalifValue1=/(1200,12251,12252,12253,1330,1430,1451,1452,1454,1461,1462,1463,1464,1465,14611,14612,1470,1481,1510,1517,1541,1922,19231,19232,19233,1924,19251,19252,19253)
CvalifName2=коллективе/мероприятии
CvalifValue2=/(3710,3971,3461,3961,3962,3601,3711,3972,3981,3982)
CvalifName3=предметных заголовках
CvalifValue3=/(6610,6629,6316,6330,6331,6606,6607,6965,6335,6336,6337,6925,6926,6927)

Re: Автоматическое формирование словаря ключевых слов
Пользователь: А.Лавринович (IP-адрес скрыт)
Дата: 16, September, 2005 13:58

Нет!!! Формат этой строки в «Общем описании» описан НЕдостаточно
подробно, точнее, недостаточно понятно!!! Там сказано:

Например, строка ТВП

1 8 '/К=/',v200^a

приведет к индексированию каждого слова подполя А поля 200 с
предварительным присоединением к каждому термину префикса "К="


Давайте окончательно разберемся в этом механизме на примере
строки:

1200 8 MHL,'/K=/'(v200^a,|%|d200/)

То, что я пока не понял, отмечаю знаком вопроса. То, что в кавычках (если не оговаривается иное) — цитаты из irbis1.doc.
Итак:
1200 — квалификатор, где "1"- поле заглавия, "200"- метка поля 200.
8 — идентификатор поля?
MHL: M — режим вывода, H (header) – режим заголовков (при котором
«игнорируются угловые скобки, а идентификаторы подполей преобразуются в знаки препинания» — из «Руководства по WinISIS»), L (lower case) – нижний регистр (на самом деле буквы остаются без изменения)
Запятая – ?
K= — keyword (ключевое слово)? Но этот префикс означает "форматирование документа из другой БД (REF на другую БД)».
'/…/' — видимо, «выбранный по усмотрению пользователя ограничитель
(который не попадает в текст префикса)»? Или это безусловный литерал, так как «безусловные литералы заключаются в одинарные кавычки (')»? Далее, «команда / приводит к размещению последующих данных с начала следующей строки». Или в данном случае это что-то другое?
Круглые скобки — повторяющаяся группа? («обработка повторяющихся полей производится особым образом»)
v (variable — переменная) — выбор поля/подполя, т. е. в данном случае КС формируются из подполя 200^a
Запятая – ?
% — «подавление всех последовательно расположенных пустых строк». Или в данном случае это что-то другое?
|%| — повторяющийся суффикс-литерал. «Система перед обработкой каждой строки ТВП устанавливает номер повторения в 1 и затем увеличивает его на 1 всякий раз, когда в созданном форматом тексте встречается символ %»
d200/ — где d — команда фиктивного вывода поля?


Re: Автоматическое формирование словаря ключевых слов
Пользователь: АКУНБ (IP-адрес скрыт)
Дата: 23, September, 2005 11:20

А что значит, если в начале строчки стоит цифра 6:
6610 6 '/K=/' (v610|%|),
6610 8 MHL, '/K=/' (v610|%|)

Надежда

Re: Автоматическое формирование словаря ключевых слов
Пользователь: Дунаевская (IP-адрес скрыт)
Дата: 23, September, 2005 12:45

6610 - квалификатор
6 - метод индексирования, по которому в качестве терминов словаря с префиксами "K=" из поля 610 выбираются тексты, заключенные в <>
8 - метод индексирования, по которому в качестве терминов словаря с префиксами "K=" из поля 610 выбираются отдельные слова, при этом разделители слов (не алфавитные символы) - коды, отсутствующие в таблице ISISACW (таблица символов, объявляемых алфавитными)


Re: Автоматическое формирование словаря ключевых слов
Пользователь: АКУНБ (IP-адрес скрыт)
Дата: 23, September, 2005 13:24

8 - метод индексирования, по которому в качестве терминов словаря с префиксами "K=" из поля 610 выбираются отдельные слова, при этом разделители слов (не алфавитные символы) - коды, отсутствующие в таблице ISISACW (таблица символов, объявляемых алфавитными) ????

Если в 610 поле написано словосочетание, то оно разбивается и рассматривается как два отдельных ключевых слова?? а побел между ними тоже рассматривается как отдельное ключевое слово??

Re: Автоматическое формирование словаря ключевых слов
Пользователь: А. Роман (IP-адрес скрыт)
Дата: 23, September, 2005 21:47

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

Re: Автоматическое формирование словаря ключевых слов
Пользователь: АКУНБ (IP-адрес скрыт)
Дата: 26, September, 2005 07:35

6925 8 MHL,'/K=/'(v922^5,|%|d922/)
6926 8 MHL,'/K=/'(v922^6,|%|d922/)
6927 8 MHL,'/K=/'(v922^7,|%|d922/)

Можно и нет преобразовать этот фрагмент в строчку? Если нет, то как обочначать подполя с буквами

692a 8 MHL,'/K=/'(V922^a,|%|d922/) и т.д.

Надежда.

Re: Автоматическое формирование словаря ключевых слов
Пользователь: Панев Максим (IP-адрес скрыт)
Дата: 26, September, 2005 11:44

Позвольте теперь мне привести выписку из документации (Приложение 5. ТАБЛИЦЫ ВЫБОРА ПОЛЕЙ (ТВП), с. 219)
"...
ТВП состоит из набора строк, каждая из которых содержит следующие три параметра, разделенные знаком пробел:

1. идентификатор поля (ИП);
2. метод индексирования (МИ);
3. формат выборки данных, представленный на языке форматирова-ния системы (см. Приложение 4).

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

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

..."

Re: Автоматическое формирование словаря ключевых слов
Пользователь: АКУНБ (IP-адрес скрыт)
Дата: 26, September, 2005 12:50

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

Надежда.

Re: Автоматическое формирование словаря ключевых слов
Пользователь: Панев Максим (IP-адрес скрыт)
Дата: 26, September, 2005 15:03

Идентификатор поля - это цифра. Не больше и не меньше. В некоторых случаях она может указывать на конкретное значимое поле
(пример: строка ТВП вида
905 0 (|URL=|v905^i|%|/)
в этом случае термин будет указывать на конкретное повторение конкретного поля 905
),
в других случаях она содержит просто идентификатор, который нужет только для идентификации (пример: 6925 - это не метка поля, а просто идентификатор некоторой группы терминов из словаря, составленный по придуманным разработчиками правилам).

Вроде так.

Re: Автоматическое формирование словаря ключевых слов
Пользователь: А.Лавринович (IP-адрес скрыт)
Дата: 28, October, 2005 12:18

ISISACW — таблица символов, объявляемых алфавитными (Дунаевская С.М.).
Вот и я о том же — она вовсе не определяет, «что является словом» (Бродовский А. И.)
Господа Разработчики! Вы уж сначала договоритесь друг с другом, что что определяет и что чем является, а уж потом ругайте нас, юзеров-ламеров…
И как же все-таки определяется, «что является словом», в частности, при формировании списка ключевых слов???

И еще раз, уже совсем окончательно, разберемся в этом механизме на том же примере:

1200 8 MHL,'/K=/'(v200^a,|%|d200/)

То, что я так и не понял, отмечаю знаком вопроса. То, что в кавычках — чаще всего цитаты из irbis1.doc.
Итак:
1200 — квалификатор, где "1"- поле заглавия, "200"- метка поля 200 (Дунаевская С.М.).
8 - метод индексирования, по которому в качестве терминов словаря с префиксами "K=" из поля 610 выбираются отдельные слова, при этом разделители слов (не алфавитные символы) - коды, отсутствующие в таблице ISISACW.
MHL: M — режим вывода, H (header) – режим заголовков («игнорируются угловые скобки, а идентификаторы подполей преобразуются в знаки препинания» — из «Руководства по WinISIS»), L (lower case) – нижний регистр (буквы остаются без изменения)
Запятая – ?
K= — видимо, keyword (ключевое слово)? Но почему-то по irbis1.doc этот префикс означает "форматирование документа из другой БД (REF на другую БД)».
'/…/' — видимо, / / — это «выбранный по усмотрению пользователя ограничитель (который не попадает в текст префикса)»? И/или одновременно это литералы, которые «заключаются в одинарные кавычки (')»? С другой стороны, «команда / приводит к размещению последующих данных с начала следующей строки». Или в данном случае это что-то другое?
Круглые скобки — повторяющаяся группа? («обработка повторяющихся полей производится особым образом»)
v (variable — переменная) — выбор поля/подполя, т. е. в данном случае КС формируются из подполя 200^a
% — «подавление всех последовательно расположенных пустых строк». Или в данном случае это что-то другое?
|%| — повторяющийся суффикс-литерал. «Система перед обработкой каждой строки ТВП устанавливает номер повторения в 1 и затем увеличивает его на 1 всякий раз, когда в созданном форматом тексте встречается символ %»
d200/ — d — команда фиктивного вывода поля, но зачем еще раз 200 и / ?

Re: Автоматическое формирование словаря ключевых слов
Пользователь: Дунаевская С.М. (IP-адрес скрыт)
Дата: 11, November, 2005 16:01

АКУНБ 23.09
<Если в 610 поле написано словосочетание, то оно разбивается и рассматривается как два отдельных ключевых слова?? а побел между ними тоже рассматривается как отдельное ключевое слово>
Да, это так: по методу индексирования 8 из словосочетания в словарь отбираются отдельные слова: пробел - разделительный знак (отсутствует в таблице).
Но в Ibis.fst для поля 610 есть еще одна строка - с методом индексирования 0 (поле целиком) для словосочетаний (в поле присутствует пробел и нет выделения термина угловыми скобками)
66 0 (mpl,if v610:'<'then else MHL,if v610:' 'then'K='&unifor('9'v610) fi fi,|%|d610/)/

Re: Автоматическое формирование словаря ключевых слов
Пользователь: woodyfon (IP-адрес скрыт)
Дата: 13, May, 2011 21:10

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



Редактировано 1 раз. Последний раз 13.05.2011 21:15 пользователем woodyfon.



Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.