CS logo CS dept
space
Титул
Основная задача
Общие свойства платформы XML
Задачи XML
XML и электронные библиотеки
ЭБ КарНЦ
XML поиск
Индексация
Заключение
Valid HTML 4.01!
Valid CSS!
Yellow Pages
HotLog

Индексация XML - документов

Для решения поставленной задачи предлагается следующая структура индексного файла коллекции, представленного в виде XML-документа:
<indexing>
<описание_вида id=”1” … >
<искомый_элемент_1>значение_элемента_1</искомый_элемент_1>
<искомый_элемент_2>значение_элемента_2</искомый_элемент_2>

<искомый_элемент_m>значение_элемента_m</искомый_элемент_m>
</описание_вида>
<описание_вида id=”2” … >
<искомый_элемент_1>значение_элемента_1</искомый_элемент_1>
<искомый_элемент_2>значение_элемента_2</искомый_элемент_2>

<искомый_элемент_m>значение_элемента_m</искомый_элемент_m>
</описание_вида>

<описание_вида id=”n” … >

</описание_вида>
</indexing>
Индексный файл для каждой коллекции формируется автоматически, на основе ее документов (j.xml, j=1,…,n - файлов) и заданного для каждой коллекции списка элементов описания структуры документов, по которым возможен поиск. При этом предполагается, что все элементы <описание_вида> индексного файла будут заранее отсортированы по элементу <название_на_русском_языке>, который используется системой для вывода списка документов на экран монитора. Процедура поиска XML-документов в коллекциях ЭБ с использованием индексного файла и DOM-модели заключается в следующем.
1. Проверяется: есть ли в коллекции документы с датой модификации файла больше, чем дата модификации индексного файла? Если да, то запускается процедура переиндексации и поиск будет осуществлен по “новому” индексному файлу. Если нет, то поиск идет по “старому” файлу – index.xml.
2. Из файла index.xml создается объектная модель документа с корневым элементом <коллекция>. Поиск осуществляется по всем элементам <описание_вида>, а “внутри” каждого “поддерева” – по “непустым” элементам из заполненной пользователем интерфейсной формы поиска. По результатам поиска формируется список отсортированных искомых документов, который выводится на экран пользователя по 25 (или менее) названий.
Предложенная процедура поиска XML-документов имеет ряд следующих преимуществ:
  • поиск осуществляется по заранее отсортированным в файле index.xml данным.
  • использование DOM-модели для доступа к элементам индексного файла занимает меньше оперативной памяти по сравнению с доступом к элементам файла, включающего все документы коллекции.
  • в данном случае задействована только одна операция чтения файла.
    Недостатком предложенного подхода является то, что требуется создание отдельного индексного файла и его периодическое обновление.


Петрозаводск - 2005