Создание справочной системы. Часть 2
Создание справочной системы. Часть 2
В этой лекции мы продолжим разговор о создании справочной системы. В предыдущей лекции подробно рассматривались вопросы создания справочного руководства, используя возможности инструментария HTML Help Workshop. Но тема на этом не исчерпана. Прежде всего, следует понимать, что при разработке полноценной справочной системы, как правило, создается не одно, а несколько справочных руководств, каждое из которых имеет свое предназначение. Одно из них может быть справочным руководством по тому Решению, которое разработчик предлагает пользователю. Именно такое справочное руководство имелось в виду при рассмотрении материалов предыдущей лекции. Другие справочные руководства создаются для работы с контекстными справками. Например, для выдачи контекстных справок к элементам интерфейса офисных документов или объектам программного проекта может создаваться специальное справочное руководство. Еще одна важная тема, которую нельзя обойти при рассмотрении вопросов создания справочной системы, связана с Мастером Ответов (Answer Wizard), одним из основных участников процесса получения справок в среде Office 2000.
Итак, в этой лекции нам предстоит обсудить целый ряд важных вопросов и познакомиться с новыми инструментами, используемыми при создании справочной системы. И начнем с того, что рассмотрим, как можно облегчить пользователю общение с уже созданным справочным руководством, позволяя ему задавать вопросы на естественном языке.
Вопросы на естественном языке и Мастер Ответов
Пользователи Office 2000 уже привыкли, что всякий раз, когда возникает необходимость в получении справки, у них под рукой Помощник - Office Assistant, которому можно задать вопрос в форме, принятой для естественных языков, например, на русском языке и получить список разделов справочной системы, где наиболее вероятно содержится ответ на поставленный вопрос. Следует сказать, что за спиной Помощника стоит Мастер Ответов (Answer Wizard), который фактически и готовит ответы на вопросы, заданные Помощнику. Хотелось бы иметь такую же возможность и при работе с собственным справочным руководством. И такая возможность есть.
В состав Office 2000 Developer входит специальный инструмент, называемый Answer Wizard Builder. С его помощью можно подготовить специальные файлы с уточнением ".aw", которые и использует Помощник при подготовке ответов на вопросы. Инструмент Answer Wizard Builder (AWB) в своей работе использует уже созданное справочное руководство. Поскольку, как мы знаем, есть две основные возможности представления справочного руководства - в виде откомпилированного chm - файла или Web-узла, то Мастеру Ответов также приходится ориентироваться в своей работе на оба возможных случая.
В чем суть работы Мастера Ответов? Она - в автоматическом индексировании разделов справочной системы. Мастер строит индексный файл, позволяющий установить соответствие между словами, встречающимися в вопросе, и словами, используемыми в тексте разделов. Анализируя текст каждого раздела, Мастер создает систему индексов (ключевых слов), характеризующих данный раздел. Когда в вопросе, заданном в Помощнике, встречается ключевое слово, выбранное Мастером в качестве индекса некоторого раздела, то при ответе Помощника данный раздел войдет в число разделов, рекомендуемых пользователю.
Процесс анализа содержимого разделов и построения индексов идет автоматически без участия разработчика справочной системы. Но, чтобы не оставить его совсем в стороне и дать ему возможность повлиять на процесс создания индексов, в состав Мастера включены дополнительные средства. С каждым разделом справочного руководства разработчик может связать серию вопросов. Эти вопросы в определенной мере предвосхищают возможные вопросы, задаваемые конечными пользователями при работе со справочной системой. Мастер Ответов использует эти вопросы при создании индексного файла. Если множество вопросов подобрано удачно, то есть шанс, что вопросы пользователя будут близки к этому множеству и, следовательно, пользователю будет рекомендован действительно нужный ему раздел. В данном контексте "близость" означает совпадение используемых терминов в пользовательских вопросах и вопросах, заранее заготовленных.
Давайте посмотрим, как это все работает на самом деле. Что работает, а что работает не совсем так, как хотелось бы. В предыдущей лекции я описал процесс создания справочного руководства "Справка о справке". Поэтому у меня имелся соответствующий chm - файл, с которым и будет работать Мастер Ответов при построении индексного aw - файла.
О загрузке Answer Wizard Builder
Поскольку у меня на компьютере установлен Office 2000 в редакции Developer, то у меня уже был инсталлирован Answer Wizard Builder. Мне осталось только запустить его на выполнение. Если у Вас нет версии Developer и нет Answer Wizard Builder, то Вы можете скачать этот инструмент с сервера Microsoft по адресу: http:// www.microsoft.com\office\ork\2000\download\AWBuild.exe
Инструментарий Answer Wizard Builder распространяется свободно, но работать на компьютере будет при условии, что установлен Office 2000.
Описание Answer Wizard Builder
Мастер AWB наряду с индексным aw-файлом создает проект - файл с уточнением ".awb". Наличие проекта позволяет при необходимости возвращаться и корректировать уже созданные индексные файлы. Понятно, что такая необходимость может возникать при корректировке справочного руководства, добавлении или удалении разделов, существенного изменения их содержания.
Как видно из рисунка, при создании нового проекта я использую chm-файл "HelpOfHelp". Заметьте, на этом этапе возможны альтернативы - во-первых, можно открыть существующий проект, взяв его за основу для нового проекта, во-вторых - можно при построении проекта использовать Web-узел.
Сделаю два замечания. Возможно, внимательный читатель заметил, что я отказался от использования русского имени файла и использую новый chm-файл, в котором заменил имя "Справка о справке" на имя "HelpOfHelp". В процессе построения этого файла я заменил также имя файла "Содержание", содержащего оглавление, на имя "Contents". При работе с AWB нельзя использовать русские имена файлов из-за возникающих проблем.
Еще одно замечание также может быть полезным. Изучая документацию MSDN на сервере Microsoft, я нашел уведомление об ошибке - в открывающемся окне, где задается имя скомпилированного chm - файла, уточнение "chm" следует набирать в нижнем регистре. В противном случае, если указать, например, - "MyHelp.Chm", появится сообщение о том, что файл с таким именем не найден, хотя он и существует и путь к нему будет указан правильно.
Но вернемся к первому диалоговому окну инструмента AWB. При нажатии кнопки "OK" происходит автоматическая декомпиляция chm - файла и открывается следующее окно AWB:
В левом окошке показан весь список разделов справочного руководства. В этом списке можно выбрать один из разделов. Справа расположены два окошка - верхнее для задания заголовка раздела, выбранного в левом окне, нижнее - для задания списка вопросов, которые разработчик справочного руководства связывает с данным разделом. Этой работой я и занялся, задав для каждого из разделов свое множество вопросов. Конечно, меня больше интересовало не содержание вопросов, а такие проблемы, как возможность работы с русским языком, использование русских и английских терминов в одном вопросе, возможности редактирования и подобные детали. Замечу, что при создании текста вопросов все возможности по редактированию допустимы в полном объеме - копирование, вырезка и перенос вопросов из одного раздела в другой. Типичной является ситуация, когда одни и те же вопросы связываются с несколькими темами. Есть, правда, ограничение - один вопрос должен быть связан не более чем с пятью разделами. У каждого раздела может быть практически неограниченное число вопросов. Вот как выглядит множество вопросов, указанное мной для одного из разделов: