Анализ существующих историко-ориентированных информационных систем, собственный опыт их проектирования и использования, а также теоретические изыскания позволяют выявить в качестве основных следующие типовые сущности (классы) и их атрибуты.
Анализ существующих историко-ориентированных информационных систем, собственный опыт их проектирования и использования, а также теоретические изыскания позволяют выявить в качестве основных следующие типовые сущности (классы) и их атрибуты.
Персона историческая личность или любой человек. Для описания могут использоваться биографические, социокультурные, профессиональные атрибуты: Ф.И.О., даты рождения и смерти, пол, социальная принадлежность, профессия, образование, семейное положение и т. д. Внутри класса могут быть подклассы (в терминологии баз данных сущности) и связи различного типа, т. е. в системе может быть несколько сущностей типа «персона».
Источник исторический источник любого типа, используемый в исторической информационной системе как содержательная или структурная основа. Для описания могут использоваться атрибуты из традиционного источниковедения, систем метаописания, а также тематические, хронологические, археографические и любые другие атрибуты. Структура источника (источников) может быть реализована в виде нескольких связанных (как правило, иерархически) сущностей. Кроме того, в системе может быть несколько сущностей для источников различного типа.
Публикация научная, справочно-энциклопедическая или иного вида публикация, массив которых используется как содержательная или структурная основа ресурса. Для описания могут использоваться библиографические, тематические, программно-технологические и другие атрибуты.
Организация (сообщество) структурная единица, соответствующая организации или институции любого типа (общественная, государственная, политическая, научная, коммерческая, некоммерческая, юридическая и т. д.). Атрибуты описания во многом определяются типом организации, ее структурой и функционированием. Внутри класса могут быть под классы сущности для организаций различного типа, связанные между собой иерархически или иным способом.
Событие происшествие, явление или иная деятельность как факт государственной, общественной или личной жизни, описываемые в системе. Характеризуется в первую очередь пространственно-временными атрибутами. События могут объединяться в цепочки и иерархии, поэтому для задания этого класса также могут использоваться подклассы.
В общем случае указанные сущности могут быть связаны по типу «многие ко многим», что можно визуализировать в виде следующей диаграммы (рис. 2.1).
Помимо указанных исторические информационные системы, конечно, могут содержать и другие основные (для конкретной системы) сущности, например лингвистические единицы, понятийный аппарат и др. Кроме того, система обычно включает множество вспомогательных сущностей, необходимых для описания ее основных классов, справочников типов (библиотек значений атрибутов).
Как правило, не имеют самостоятельного значения, однако целесообразны для обобщенного выделения еще две сущности.
Хронология временная привязка, используемая для классов всех указанных выше типов.
География пространственная привязка, также используемая для классов всех указанных выше типов.
Рис. 2.1. Обобщенная модель исторической информационной системы
При работе с хронологическими и географическими сущностями возникают традиционные для истории и исторических баз данных проблемы: неточность информации, изменение географических названий и границ, разнотипность хронологических данных и др. Выделение этих классов в качестве самостоятельных целесообразно не только в силу их важности и универсальности для описания прочих классов, но и в силу того, что эти сущности могут стать структурной основой для организации историко-ориентированной информационной системы (например, ГИС, таймлайны и т. д.). В этом случае хронология и география переходят из статуса описательных атрибутов в самостоятельные основополагающие сущности, к которым привязываются все прочие элементы системы.
Наличие в системе того или иного класса еще не определяет ее тип, значение также имеют:
количество сущностей одного типа (подклассов) и связи между ними;
количество экземпляров каждой сущности;
связи между сущностями различного типа, их наличие и характер;
характер описания (совокупность и количество атрибутов) каждой сущности.
Наличие в системе того или иного класса еще не определяет ее тип, значение также имеют:
количество сущностей одного типа (подклассов) и связи между ними;
количество экземпляров каждой сущности;
связи между сущностями различного типа, их наличие и характер;
характер описания (совокупность и количество атрибутов) каждой сущности.
Важно, что перечисленные типовые классы в общем случае не связаны с конкретной технологией реализации системы и не отражают ее физическую модель. Они одинаково эффективно могут применяться для систем, созданных на основе реляционных или нереляционных баз данных, языков разметки (в том числе семантической) и других технологий.
Чтобы получить типичные модели и унифицированную методику определения типа системы, мы будем составлять матрицы классов. Такая матрица может быть составлена для каждой конкретной системы, класса систем или исторических информационных систем в целом.
Названия столбцов и строк матрицы типовые классы объектов системы. Также могут быть занесены иные классы (основные для конкретной системы, но не перечисленные среди типовых).
В матрице на пересечении двух разных классов указывается тип связи между ними:
0: связь отсутствует (на уровне модели, на функциональном или ином уровне) или отсутствует один из классов;
11: связь «один к одному»;
1 : связь «один ко многим», т. е. каждый экземпляр первого класса (строка) потенциально связан с несколькими экземплярами второго класса (столбец);
1: связь «многие к одному», т. е. каждый экземпляр второго класса потенциально связан с несколькими экземплярами первого класса;
: связь «многие ко многим».
В матрице на пересечении строки и столбца, соответствующих одному классу указывается его наличие в системе либо связь между подклассами внутри одного класса:
0: класс отсутствует;
1: класс присутствует и нет подклассов;
если в системе есть подклассы данного класса, то элемент заполняется по аналогии с пересечением двух разных классов.
На основе разработанной методики составления матрицы классов могут быть заданы типичные модели исторических информационных систем различного типа; осуществлены описание, сравнение и анализ ресурсов.
Описанная методика позволяет дифференцировать обычные ресурсы, состоящие из нескольких не связанных на уровне модели, как правило, статичных страниц, от историко-ориентированных информационных систем. Матрица статичного ресурса будет представлена единицами на главной диагонали и нулями в остальных ячейках.
Анализ матрицы позволяет определить центральную сущность системы ту, которая имеет в соответствующей строке и столбце наибольшее количество связей «один ко многим» и «многие ко многим».
Рассмотрим примеры заполнения матрицы классов для систем различных типов (незаполненные элементы могут принимать любые значения).
Пример: фактографическая система, в которой к каждому событию привязаны источники, публикации, персоналии, организации и события имеют подсобытия (табл. 2.1).
В этом примере в незаполненных ячейках могут стоять значения 0, если источники, публикации, персоналии и организации не связаны между собой.
Фактографическую систему можно изобразить в виде обобщенной диаграммы (рис. 2.2). Здесь событийная часть представлена несколькими сущностями, связанными между собой (это могут быть вложенные события, цепочки событий и т. п.).
Модель фактографической системы может также содержать прочие типичные или специфические сущности.
Таблица 2.1. Пример матрицы классов для фактографической системы
Рис. 2.2. Модель фактографической системы
Пример: просопографическая система (табл. 2.2).
Таблица 2.2. Пример матрицы классов для просопографической системы
ER-диаграмма просопографической системы в обобщенном виде представлена на рис. 2.3. Здесь центральной сущностью является персона. Другие типичные или специфические сущности могут присутствовать в модели историко-ориентированной информационной системы и соотноситься с персоной различными связями (на рисунке все связи имеют тип «многие ко многим»).
Рис. 2.3. Модель просопографической системы
Другими вариантами систем, когда одна из сущностей является центральной и к ней привязываются остальные, являются источнико-ориентированная и геоинформационная системы. Их ER-диаграммы изображены на рис. 2.4 и 2. 5.
Рис. 2.3. Модель просопографической системы
Другими вариантами систем, когда одна из сущностей является центральной и к ней привязываются остальные, являются источнико-ориентированная и геоинформационная системы. Их ER-диаграммы изображены на рис. 2.4 и 2. 5.
2.3. Системы на основе реляционной модели
Реляционная модель преобладает среди историко-ориентированных информационных систем на протяжении многих лет. Технологической базой систем на основе реляционной модели являются реляционные базы данных и реляционные системы управления базами данных (СУБД), которые представлены на рынке большим разнообразием.
Рис. 2.4. Модель источнико-ориентированной системы
Рис. 2.5. Модель исторической ГИС
Популярность реляционной модели связана как с распространенностью реляционных СУБД, так и с универсальностью и относительной простотой данного типа моделей. «Теоретическая аккуратность, адаптивность и простота использования способствовали росту доминирования в последние годы систем реляционных баз данных и реляционного мышления», пишут Ч. Харви и Д. Пресс в 1996 г. [Harvey, Press, 1996]. Реляционная модель и ее трансформации продолжают доминировать до сих пор.
В разделе 1.3 мы уже обращались к базам данных, в том числе реляционным. В этой части издания реляционная модель, ее возможности и ограничения будут рассмотрены в аспекте создания исторических информационных систем.
Напомним, что реляционная модель представлена набором отношений (relation), традиционно визуализируемых в виде двумерных таблиц. Наполнение базы данных представляется заданием значений атрибутов в кортежах отношений. Порядок следования кортежей (записей, экземпляров, строк таблицы) значения не имеет. Записи могут быть отсортированы по любому атрибуту. Кортежи (записи) не имеют связей между собой, также нет связей и внутри одного кортежа. Значения атрибутов (признаков) экземпляров образуют столбцы реляционной таблицы. Все значения одного атрибута относятся к одному типу данных. Список поддерживаемых типов данных определяется возможностями конкретной СУБД. К реляционным базам данных предъявляется ряд требований, в частности целостности и отсутствия избыточности.