2. Основные понятия
Слабоструктурированными называются данные,
обладающие определенной структурой, но эта
структура может оказаться непостоянной,
недостаточно изученной или неполной.
Как правило, такие данные не могут быть описаны с
помощью какой-либо неизменной схемы, поэтому
иногда их называют не имеющими схемы (schema-
less) или описывающими сами себя (self-
describing).
3. Причины интереса к
слабоструктурированным
данным
Для дальнейшей автоматизации обработки
информации необходимо иметь возможность
обращаться к источникам данных,
представленным в Web, как к базам данных, но на
эти источники невозможно наложить какую-либо
заранее заданную схему.
Количество разнотипных баз данных постоянно
возрастает, поэтому задача создания гибкого
формата, обеспечивающего обмен данными между
базами различных типов, становится все более
важной.
4. Причины интереса к
слабоструктурированным
данным
В связи со становлением языка XML (extensible
Markup Language – расширяемый язык разметки)
как стандарта представления и обмена данными в
Web появились перспективы создания новых
методов обработки слабоструктурированных
данных, поскольку язык XML хорошо подходит
для их описания
5. Структура данных DreamHome
DreamHome (&1)
Branch (&2)
street (&7) "22 Deer Rd"
Manager &3
Staff (&3)
name (&8)
fName (&17) "John"
IName (&8) "White
ManagerOf &2
Staff (&4)
name (&9) "Ann Beech“
salary (&10) 12000
Oversees &5
Oversees &6
PropertyForRent (&5)
street (&11) "2 Manor Rd"
type (&2) "Flat"
monthlyRent (&З) 375
OverseenBy &4
PropertyForRent ( &6 )
Street (&14) "16 Dale Rd"
type (&15) 1
annualRent (&6 ) 7200
OverseenBy &4
7. Модель данных OEM
Одной из первых для описания
слабоструктурированных данных была предложена
модель обмена объектными данными (Object
Exchange Model – OEM).
Это – модель представления вложенных объектов,
которая была первоначально разработана для проекта
TSIMMIS (The Stanford-IBM Manager of Multiple
Information Sources) и должна была обеспечить
интеграцию данных, полученных из различных
источников.
8. Объекты в модели данных OEM
Любой объект OEM можно рассматривать как
четверку {label, old, type, value)
{Staff, &4, множество, {&9, &10}}
{name, &9, строка, "Ann Beech"}
{salary, &10, десятичное значение, 12000}
9. Язык XML
Для предотвращения развития тенденции к
разделению языка HTML на диалекты W3C
предложил новый стандарт – XML (Extensible
Markup Language – расширяемый язык
разметки)
XML. Метаязык (язык для описания других языков),
который позволяет, проектировщикам создавать
специализированные дескрипторы для
реализации функциональных возможностей; не
достижимых с помощью HTML
10. Преимущества XML
Простота
Открытый стандарт; независимость от платформы и
программного обеспечения
Способность к расширению
Возможность повторного использования
Разделение информационного наполнения и средств
представления
Улучшенное распределение нагрузки
Поддержка интеграции данных из нескольких источников
Способность описывать данные, которые относятся к
приложениям многих разных типов
Усовершенствованные механизмы поиска
Новые возможности
12. Состав документа XML
Объявление XML
Элементы
Атрибуты
Ссылки на сущности
Комментарии
Разделы CDATA и команды обработки
Упорядочение
13. Документ DTD
Определение типа документа (Document Type
Definition – DTD) служит для описания
допустимой синтаксической структуры
некоторого класса документов XML.
В нем перечислены имена элементов, которые могут
присутствовать в документе, указано, какие
элементы могут применяться в сочетании с
другими элементами, обозначены способы
вложения элементов, показано, какие атрибуты
могут использоваться в элементе каждого типа, и
т.д.
14. Пример документа DTD
<!ELEMENT STAFFLIST (STAFF)*>
<!ELEMENT STAFF (NAME, POSITION, DOB?, SALARY)>
<!ELEMENT NAME (FNAME, LNAME}>
<!ELEMENT FNAME (#PCDATA)>
<!ELEMENT LNAME (#PCDATA)>
<!ELEMENT POSITION (ftPCDATA)>
<!ELEMENT DOB (#PCDATA)>
<!ELEMENT SALARY {#PCDATA)>
<!ATTLIST STAFF branchNo CDATA ft IMPLIED>
15. Технологии XML
Интерфейсы DOM и SAX
Спецификация Namespaces
Языки XSL и XSLT
Язык XPath (XML Path)
Язык XPointer (XML Pointer)
Язык XLink (XML Linking)
Язык XHTML
Определение XML Schema
Инфраструктура описания ресурсов (RDF)
16. Интерфейсы DOM и SAX
Интерфейс DOM (Document Object Model –
объектная модель документа) представляет собой
API-интерфейс для XML, основанный на древовидном
представлении, который обеспечивает создание
объектно-ориентированного представления данных.
Интерфейс SAX (Simple API for XML – простой API-
интерфейс для XML) – это основанный на обработке
событий API-интерфейс последовательного доступа
для XML, в котором используются функции обратного
вызова для передачи приложению сообщений о
событиях, возникающих в ходе синтаксического
анализа документа
17. Спецификация Namespaces
Спецификация Namespaces обеспечивает возможность
применять специальные уточняющие обозначения к
именам элементов и ссылкам, содержащимся в
документах XML.
Это позволяет избежать коллизий имен при
использовании таких элементов, которые имеют одно
и то же имя, но определены в разных словарях.
Благодаря этому появляется возможность применять в
документе дескрипторы, которые определены в
разных пространствах имен.
18. Языки XSL и XSLT
W3C определил формальную рекомендацию по использованию,
языка расширяемых таблиц стилей (extensible Stylesheet
Language – XSL), который создан специально для определения
способа отображения в браузере данных документа XML, а также
способа преобразования одного документа XML в другой. Этот
язык по своему назначению аналогичен спецификации CSS, но
является более мощным
Расширяемый язык таблиц стилей для поддержки
преобразований (extensible Stylesheet Language for
Transformations – XSLT) представляет собой подмножество
языка XSL. Он одновременно является и языком разметки, и
языком программирования, поскольку в ним предусмотрены
механизмы преобразования структуры XML в любую другую
структуру XML, в формат HTML или в любой другой текстовый
формат (такой как SQL)
19. Язык XPath (XML Path)
XPath – это декларативный язык запросов для XML, в
котором предусмотрены простые синтаксические
конструкции для адресации отдельных частей
документа XML.
Этот язык предназначен для использования с языком
XSLT (при сопоставлении с шаблоном) и языком
XPointer (при обработке адреса).
Язык XPath позволяет осуществлять выборку
коллекций элементов, указывая путь,
сформированный по такому же принципу, как путь к
каталогу
20. Язык XPointer (XML Pointer)
Язык XPointer предоставляет доступ к значениям
атрибутов или к содержимому элементов,
находящихся в любом месте документа XML.
Любой указатель XPointer по сути представляет собой
выражение XPath, входящее в идентификатор URI.
Кроме всего прочего, язык XPointer позволяет
сформировать ссылки на разделы текста, выбрать
конкретные элементы или атрибуты и перейти с
одного элемента на другой.
21. Язык XLink (XML Linking)
Язык XLink позволяет вставлять в документы XML
специальные элементы, с помощью которых можно
создавать и описывать ссылки между ресурсами.
В нем применяется синтаксис XML для создания
структур, позволяющих описывать ссылки,
аналогичные простым, однонаправленным
гиперссылкам HTML, a также более сложные ссылки.
22. Язык XHTML
Язык XHTML (extensible HTML – расширяемый
язык HTML) версии 1.0 представляет собой язык
HTML 4.01, переформулированный на языке XML 1.0.
Он предназначен для использования в качестве языка
HTML следующего поколения и по сути представляет
собой более строгую и четко сформулированную
версию HTML
23. Определение XML Schema
Схема XML представляет собой определение
конкретной структуры XML (ее организации и
применяемых в ней типов данных).
Язык XML Schema описывает способ определения в
схеме элемента каждого типа и позволяет указать
типы данных, связанных с каждым элементом.
Схема сама является документом XML, в котором
используются элементы и атрибуты, выражающие
семантику схемы. А поскольку схема – документ XML,
то ее можно редактировать и обрабатывать с помощью
таких же инструментальных средств, какие
применяются для обработки описанного ею документа
XML
24. Инфраструктура описания
ресурсов (RDF)
Инфраструктура описания ресурсов (Resource
Description Framework – RDF), разработанная под
эгидой W3C, представляет собой информационную
среду, которая обеспечивает кодирование, обмен и
повторное применение структурированных
метаданных.
Эта инфраструктура обеспечивает функциональную
совместимость метаданных различных приложений за
счет применения таких проектных механизмов,
которые позволяют создавать общепринятые
соглашения по семантике, синтаксису и структуре
документов
25. Языки запросов XML
Рабочая группа XML Query Working Group занимается
подготовкой модели данных документов XML,
определения набора операторов запросов к этой
модели и языка запросов, основанного на этих
операторах запросов.
4 документа XML Query Working Group:
XML Query Requirements (Требования к запросам
XML);
XML Query Data Model (Модель данных запросов
XML);
XML Query Algebra (Алгебра запросов XML);
XQuery (Язык запросов для XML).
26. Языки запросов XML
XML Query Requirements определяет задачи, типичные
сценарии применения и требования к модели данных
запросов, алгебре запросов и языку запросов W3C XML
Модель данных запросов XML – это представление, в
котором используются размеченные узлы и
конструкторы древовидных фрагментов
Query Working Group была предложена алгебра
запросов XML, при разработке которой применен
опыт использования таких языков, как SQL и OQL
Query Working Group предложен язык запросов для
XML, получивший название XQuery