13.2. Технологии интеграции распределенных данных на основе xml
Проблема интеграции информации из различных источников (в том числе и из Internet) прежде всего в том, что во многих случаях данные слабо структурированы: нет схемы, которая была бы задана заранее, а данные из разных источников могут иметь как различный набор атрибутов, так и различные типы. Более того, каждый из источников может иметь свою степень автономности и характеризоваться своими метаданными (Слайд 13.4).
Слабоструктурированными называются данные, обладающие непостоянной либо не полностью определенной структурой. Коллекции таких документов иногда называют «не имеющими схемы» (schema-less) или «самоопределенными» (self-describing). Характерной особенностью слабоструктурированных данных является то, что описательная информация, которая обычно выделяется в отдельную схему, в той или иной форме присутствует в самих наборах данных. В некоторых формах представления слабоструктурированных данных не предусмотрено применение отдельной схемы, а в других она существует, но накладывает на представленные в ней данные очень слабые ограничения.
Схема слабоструктурированных данных может быть как предписывающей, так и описывающей.
Примером предписывающей схемы слабоструктурированных данных является Document Type Definition (DTD). Если разбираемый документ не соответствует DTD, процессор прекращает его разбор и сигнализирует об ошибке. Таким образом, предписывающая схема накладывает ограничения на структуру данных.
Предписывающей является также XML-схема, которая определяет структуру XML-документа, а XML-процессоры используют это определение при разборе. XML-схемы (по сравнению с DTD) обладают более широкими возможностями для определения типов данных и интеграции пространства имен, реализуя тем самым открытую модель данных. Безусловным достоинством XML-схем является также то, что они позволяют представлять правила формирования XML-документа средствами самого XML.
XML (Extensible Markup Language) - язык разметки, описывающий класс объектов данных, называемых XML- документами. XML изначально является средством обмена данными и практически не зависит от платформы, операционной системы, языка программирования и т. д. XML — это стандарт, утвержденный World Wide Web Consortium (W3C), и поэтому анализаторы для чтения XML-документов имеются почти для всех основных платформ, включая MS Windows, UNIX.
Для обработки XML-документов можно использовать ряд связанных стандартов, таких как: Document Type Definitions (DTD) и XML-схемы, позволяющие определять XML-документы; спецификация Namespaces; язык указателей XML (XML Pointer Language - XPointer); язык ссылок XML (XML Linking Language — XLink); язык запросов XQuery; объектная модель (Document Object Model - DOM); интерфейсы API; язык преобразования Extensible Stylesheet Language (XSLT).
При рассмотрении модели слабоструктурированных данных обычно выделяют две основные проблемы: во-первых, структура данных обычно известна лишь частично, во-вторых, она является глубоко вложенной или даже циклической. Соответственно, большинство подходов к управлению слабоструктурированными данными основано на использовании языков запросов, обеспечивающих прохождение по древовидному размеченному графу, который служит для идентификации данных путем указания позиции элемента данных в коллекции. Это означает, что способы выполнения запросов к данным теряют свой традиционный декларативный характер и становятся в большей степени навигационными.
Объектная модель документа (DOM) предполагает представление структуры и содержания документа в виде совокупности узлов, каждый из которых имеет свои свойства (имя, тип, значение, число дочерних узлов) и методы (создание, удаление, вставка). DOM определяет стандартный набор объектов для представления HTML- и XML-документов, методы и алгоритмы комбинирования этих объектов, а также интерфейс для доступа к ним и выполнения операций над ними.
