Создание инструмента научных исследований на основе XML: Проблемы и методология | страница 10



3.2. Трудности применения Unicode

Основной объем текста Летописи напечатан на русском языке, с использованием киррилического алфавита. Однако встречаются фрагменты текста на других языках, имеющих в своей основе латинский алфавит. Часто встречаются греческие символы, например, в частности, в математическом разделе. Такое смешение языков и алфавитов привело нас к избранию Unicode как основного стандарта кодирования символов для Летописи.  

Следствием данного выбора стала проблема поиска подходящих инструментов XML, поддерживающих Unicode. Несмотря на то, что спецификация XML 1.0 определенно указывает: «Все XML процессоры должны принимать UTF-8 и UTF-16 кодировки [ISO/IEC] 10646» [XML 1.0], мы пришили к выводу, что не все доступные XML инструменты хорошо воспринимают Unicode. Ситуация в этом отношении улучшается, но когда мы начали проект в октябре 1999, она была достаточно неблагоприятной.  

3.2.1. Поисковые системы

На протяжении многих лет мы успешно использовали поисковую систему “Pat” (версию 5.x), предлагаемую Open Text Corporation (http://www.opentext.com/), для индексирования и поиска по нашим обширным коллекциям текстов SGML. Но “Pat” не поддерживает Unicode и другие многобайтовые кодировки символов. Поэтому мы отказались от “Pat” в пользу “XPAT” университета Мичигана (http://www.dlxs.org/), который основан на “Pat” корпорации Open Text, но модифицирован Мичиганом специально для применения электронными библиотеками. Из названия понятно, что “XPAT” поддерживает XML; тем не менее, несмотря на то, что разработчики “XPAT” работают над обеспечением поддержки Unicode, в настоящее время “XPAT” не в состоянии поддерживать многобайтовые кодировки. Поскольку ни один из продуктов, которые мы использовали для поиска по документам SGML и XML, не поддерживает Unicode, мы были вынуждены потратить много времени на анализ других вариантов.  

Некоторые критерии выбора поисковой системы XML включали:

Поддержка платформы Unix (предпочтительно AIX, Solaris или Linux). Поиск по всему тексту. Возможность задания слов для поиска с учетом изменяющегося окончания и поддержка регулярных выражений. Поддержка очень больших XML файлов (сотни мегабайтов). Поддежка Unicode. Java и/или XML API.  

У каждого специалиста есть свои предпочтения в отношении выбора поисковых систем и баз данных XML, у каждого продукта свои достоинства и недостатки. Я думаю, справедливым будет замечание, что коммерческие продукты, имующиеся на рынке, в основном не предназначены для применения в научных целях, как, например, проект «Летопись журнальных статей». По большей части коммерческие продукты XML концентрируются на предпринимательских и административных областях применения, так что рынки, где необходимым требованием является поиск по XML документу, содержащему современный английский, древнегреческий, иврит и латынь, достаточно редки.