Заказать курсовые, контрольные, рефераты...
Образовательные работы на заказ. Недорого!

Как модель данных

РефератПомощь в написанииУзнать стоимостьмоей работы

Поддержка целостности данных при удалении узла XML-дерева сводится к удалению поддерева этого узла и всех поддеревьев в других документах, на узлы которых этот узел ссылается. Естественно, совокупность иерархических и горизонтальных направленных связей не должна образовывать циклических графов. Операция довольно дорогая, но редко применяемая — только в случае внесения заведомо ошибочных данных… Читать ещё >

Как модель данных (реферат, курсовая, диплом, контрольная)

На основе языка XML может быть построена модель данных. В настоящий момент строгой модели данных нет, но она, вероятно, может быть построена на основе реляционной. Зачем она нужна? По очень простой и веской причине — естественности. Причем естественности во всех аспектах — логическом представлении данных, манипулирования ими и поддержки их целостности.

Представление данных как XML-документов является естественным, поскольку они получаются из реальных документов. Представлять данные как документы привычнее и понятнее, чем представлять их как реляционные таблицы. Реляционная таблица, в лучшем случае, отдельный фрагмент документа. Неестественность табличного представления легко прочувствовать вначале при проектировании РБД, когда из набора имеющихся документов происходит вычленение сущностей, и затем при подготовке отчета, когда из этих же сущностей вновь создаются документы. Манипулировать данными с использованием такой естественной для человека (но логически избыточной!) сущности как «связь» также привычнее и понятнее, чем со ссылочными ключами, которые в реальных документах встречаются редко.

В настоящий момент существует набор стандартных операций низкого уровня для работы с XML-документами — удалить или перенести узел с поддеревом, создать документ или узел, выделить коллекцию узлов по такому-то признаку и т. п. Строгая модель данных предполагает создания на основе низкоуровневых логических операций ограниченного набора логически корректных операций верхнего уровня, позволяющих пользователю манипулировать данными без использования программирования, то есть «от кнопки», на уровне пользовательского интерфейса.

В любом случае, создавая набор операций манипулирования верхнего уровня в рамках XML’ной модели данных, следует отталкиваться от необходимости отразить в этом наборе именно те операции, которые совершаются в реальной жизни, причем, прежде всего, не с электронными, а с бумажными документами. Естественность — первична, а математическая логика хоть и обязательна, но вторична. С исторической точки зрения, реляционная модель данных — это очередная провалившаяся попытка навязать людям нечто очень «правильное», но искусственное, типа эсперанто. Этот набор операций будет совсем другим, чем в реляционной модели. Проиллюстрируем это на нижеследующих примерах.

Манипулирование документами в реальной жизни называется документооборотом. Если мы хотим сделать БД полноправным участником документооборота (иначе говоря, общаться с ней на естественном языке), то она должна манипулировать документами как участник документооборота. А действует он, образно говоря, так: «Когда поступит документ № 1, возьми документ № 2, просуммируй значения в таких-то полях и запиши результат в такое-то поле документа № 3 и т. д.». Манипулирование документами — это всегда порождение нового документа, виртуального (аналог временных отношений в РБД) или записываемого в БД. Отдельный документ или его фрагмент может возникать как результат отработки события документооборота и сам являться событием, порождающим новые документы или их фрагменты.

Модель данных XML любит «вредную избыточность» данных, неприемлемую для РБД. «Иванов» в документе № 1 и «Иванов» в документе № 2, хотя речь и идет об одном и том же человеке, не одно и тоже — документы № 1 и № 2 возникли в разные моменты времени и, соответственно, в разных контекстах. В процессе документооборота часто данные многократно переносятся по цепочке от одного документа к другому, что вполне естественно и должно адекватно отражаться в модели данных. Вопрос о минимизации количества хранимой информации и оптимизации скорости доступа к ней — это вопрос физического хранения, а не логической модели.

Поддержка целостности данных при удалении узла XML-дерева сводится к удалению поддерева этого узла и всех поддеревьев в других документах, на узлы которых этот узел ссылается. Естественно, совокупность иерархических и горизонтальных направленных связей не должна образовывать циклических графов. Операция довольно дорогая, но редко применяемая — только в случае внесения заведомо ошибочных данных.

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

Показать весь текст
Заполнить форму текущей работой