Студопедия

Главная страница Случайная лекция


Мы поможем в написании ваших работ!

Порталы:

БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика



Мы поможем в написании ваших работ!




СИСТЕМА SOCRATES

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

Еще сложнее обстоит дело с менее структурированными данными: например, имеется много документов, которые, помимо некоторых объективных данных, содержат много текстовой информации. Бесспорно, что в историческом исследовании источник, или выражаясь точнее, контекст данных в изучаемых документах, имеет фундаментальное значение. Следует ли при работе с ними отбрасывать текстовую часть и "укладывать" данные в жесткую структуру - или надо наряду со структурированными данными хранить и полный текст источника, предполагая при этом, что каждая "единица" данных должна быть связана со своим контекстом в документе?

Есть разные пути преодоления разрыва между богатством исторической реальности и жесткой конструкцией реляционной модели: либо полностью отказаться от последней и обратиться к ориентированным на специфику исторических источников системам баз данных, подобным KLEIO, либо вводить специальные средства в программное обеспечение коммерческих пакетов реляционных СУБД. Идея данной системы состоит именно в том, чтобы разработать некоторое дополнительное программное обеспечение, которое расширит в указанном направлении возможности реляционной модели систем управления базами данных.

Система SOCRATES предназначена для превращения свободного текста в записи реляционной базы данных. Система SOCRATES разработана д-ром Л. Брере (Утрехтский университет, Голландия). Историки часто работают с документами, содержащими текстуальные описания фактических данных. Можно привести много примеров: письма, уставы, нотариальные акты, документы о правах на владение, завещания, описи имущества и т.д. При работе с ними историка в основном интересует фактическая информация (например, кто, когда и на каких условиях приобрел некое имущество). Документ, содержащий эту информацию, можно свести к такой модели, которая подходит для реляционной базы данных.

При этом учитывается, что, как правило, такие документы можно правильно понять только в исходном контексте. Значит, имеет смысл ввести в базу данных и соответствующий отрывок текста, а еще лучше - весь документ, т.к. контекст - сложное понятие, и во многих случаях трудно выделить его достаточно четко. Насколько далеко надо идти по тексту, зависит от цели создания базы данных и природы источника. Пока для решения этих проблем в коммерческих пакетах предлагаются лишь длинные символьные поля (или поля MEMO) для комментариев, что никак нельзя назвать универсальным решением.

Система SOCRATES помещает весь документ (или его фрагменты) в память машины в виде общего файла, доступного одинаково из каждого файла будущей базы данных. Кроме того, этот текст должен допускать возможность поиска информации, дополняющего поиск фактических данных в базе. В качестве реляционной СУБД система SOCRATES использует dBASE IV, расширив ее командный язык с помощью библиотеки программ, содержащей около 100 процедур и функций. Когда библиотека подключена, любую из этих процедур можно вызвать через меню или из любой другой программы.

Работа с источником состоит из нескольких этапов. Редактор документа. Система включает редактор документа, позволяющий одновременно работать со свободным текстом и структурированными данными в оболочке реляционной СУБД. Во-первых, это обычный текстовый редактор, позволяющий вводить, модифицировать и уничтожать данные, работать с тезаурусом, контролирующим ключевые слова, подсчитывать частоты их встречаемости. Имеются и другие функции текстовых редакторов, например, импорт и экспорт ASCII-файлов и работа с фрагментами текста.

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

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

Чтобы пометить контекст, пользователь добавляет специальные метки, каждая из которых должна быть вставлена в какое-то место в столбце Jump_label, идущем по всему тексту документа. Поскольку контекст не есть что-то статичное, для разметки контекста вместо жестких границ и используются такие "маяки". В итоге, документ хранится в файле, имеющем длинное текстовое поле line, содержащее или строку текста, или структурированные данные, а поле tag сообщает, что именно содержится в поле line. После ввода документа и его разметки с помощью шаблонов можно указать системе некоторый шаблон - и данные из всех шаблонов этого типа будут скопированы в соответствующий файл базы данных. Соответствующая метка перехода Jump_label копируется вместе с данными.

Контекстный поиск. Пользовательский интерфейс библиотеки программ SOCRATES похож на стандартный интерфейс dBASE, предлагаемый режимами edit или browse: средняя часть экрана используется для ввода данных или вывода информации очередной записи, нижняя часть содержит меню с функциями редактирования, а в верхней части располагается основное рабочее меню. Это меню содержит, в частности, возможности доступа к данным, существующие лишь в системе SOCRATES. Среди них -JUMP. Если мы находимся в файле базы данных, который перед этим был автоматически заполнен в процессе копирования данных из виртуальных полей файла документа, и для какой-то из записей этого файла потребовался исходный контекст, тогда в рабочем меню выбирается пункт JUMP. После этого специальная программа читает "индекс маяка": имя файла и метку, которая была записана в текущую запись вместе с данными, и пользователь "перепрыгивает" назад, к контексту документа: на экран накладывается окно с началом соответствующего абзаца, который можно просмотреть вверх и вниз. По контрасту с полями типа MEMO, этот фрагмент текста не ограничен.

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

Таким образом, система SOCRATES демонстрирует способ хранения текста в реляционных таблицах без полей типа memo и без ограничений на длины полей как один из возможных путей адаптации стандартного программного обеспечения к потребностям работы с историческими источниками. Предлагаемая система создает набор специальных программных средств, расширяющих стандарт реляционной модели, но не нарушающих обычных операций реляционной алгебры и не усложняющих объединение баз. SOCRATES лишь добавляет новые программные средства, не отказываясь ни от одной из стандартных возможностей, причем эти программные средства не ограничены одним единственным источником или проблемой, но могут использоваться в самых разных ситуациях, а дружественный интерфейс скрывает от неопытных пользователей технические детали.


<== предыдущая страница | следующая страница ==>
СИСТЕМА CensSys | Мир в XVIII в

Дата добавления: 2014-12-09; просмотров: 368; Нарушение авторских прав




Мы поможем в написании ваших работ!
lektsiopedia.org - Лекциопедия - 2013 год. | Страница сгенерирована за: 0.01 сек.