Спецификация rdf
Спецификация XML-схем предоставляет более полный и строгий метод определения модели информационного наполнения документа XML, чем определения DTD. Но и она не обеспечивает поддержку необходимого уровня семантической совместимости. Например, если два приложения должны обмениваться информацией с помощью XML, то назначение и подразумеваемый смысл используемых при этом документов должны быть согласованы с той структурой данных, которая формируется при обмене, для чего необходимо создать модель предметной области с описанием данных, которые требуются для одного и другого приложения.
Такую модель обычно принято описывать в терминах объектов или отношений (например, для этой цели может использоваться язык универсальный язык моделирования - UML). А поскольку схема XML описывает только синтаксическую структуру документа, одна и та же модель предметной области может быть представлена в виде схемы XML разными способами, т.к. в общем случае невозможно определить непосредственное соответствие между моделью предметной области и определенной схемой. Эта проблема становится еще более сложной, если в обмене информацией должны участвовать не два, а несколько приложений.
Для решения описанной выше задачи необходимо пройти следующие три этапа:
восстановить первоначальные модели предметных областей из схем XML;
определить соответствия между объектами моделей предметных областей;
определить механизмы преобразования для документов XML.
Эти этапы на практике иногда становятся очень сложными, поэтому может оказаться, что язык XML хорошо подходит для обмена данными только между приложениями, для которых уже известна модель информационного наполнения, но плохо подходит для тех ситуаций, когда к обмену данными присоединяются все новые и новые приложения.
Инфраструктура описания ресурсов (Resource Description Framework — RDF), разработанная под эгидой W3C, представляет собой информационную среду, которая обеспечивает кодирование, обмен и повторное применение структурированных метаданных. Эта инфраструктура обеспечивает функциональную совместимость метаданных различных приложений за счет применения таких проектных механизмов, которые позволяют создавать общепринятые соглашения по семантике, синтаксису и структуре документов. RDF не определяет семантику каждой предметной области, но предоставляет возможность создавать, по мере необходимости, элементы метаданных для предметных областей. В инфраструктуре RDF в качестве общего синтаксиса для обмена и обработки метаданных применяется язык XML. С помощью средств языка XML создаются модели данных RDF, позволяющие описывать семантику и обеспечивать обмен стандартизированными метаданными.
При использовании формата RDF документом может считаться любой электронный ресурс, даже ресурс, хранимый в электронном виде, но не представленный в Internet. В любом случае идентификатором ресурса будет его Uniform Resource Identifier (URI).
В основе RDF лежит модель представления именованных свойств и их значений. В контексте модели данных RDF свойства могут рассматриваться как атрибуты ресурса (т.е. как традиционная пара «атрибут-значение») или как отношения между двумя ресурсами (тогда модель RDF может быть интерпретирована как диаграмма «сущность-связь»). Если применить терминологию объектно-ориентированного подхода, то можно сказать, что ресурсы соотносятся с объектами, а свойства — с переменными (экземплярами объекта).
Базовая модель данных RDF состоит из трех объектов: ресурс, свойство, оператор.
Ресурс – все, что может быть описано в RDF-выражениях. Это может быть содержимое Web-страницы или целого Web-сайта. Ресурсом может считаться некоторая часть Web-страницы, в том числе определенные HTML или XML элементы, являющиеся частью Web-страницы. Кроме того, ресурсом может быть также объект, недоступный в Internet, например печатное издание. Однозначным идентификатором ресурса считается его URI.
Свойство — специфический аспект, характеристика, атрибут или отношение, используемое для описания ресурса. Каждое свойство имеет свой смысл, определяющий допустимые значения свойства, типы возможных описываемых ресурсов и отношения их к другим ресурсам. Например, атрибут Author может использоваться для описания лица, подготовившего конкретный документ XML.
Оператор — конструкция, состоящая из ресурса, свойства и значения этого свойства, определенного для данного ресурса. Эти три части утверждения называются "субъект", "предикат" и "объект". Объектом утверждения (значением свойства ресурса) может быть другой ресурс, определенный своим URI; литерал - строка символов (кроме зарезервированных для RDF); данные другого типа, разрешенного в XML.
Рассмотрим простой пример. Пусть необходимо средствами RDF-модели выразить следующее отношение:
"Автором Документа 1 является Иван Петров"
"Иван Петров – автор документа 1"
Для человека эти утверждения имеют одинаковый смысл (Иван Петров – автор конкретного документа), т. к. человек, в отличие от компьютера, способен извлечь смысл из различных синтаксических конструкций. Для компьютера, однако, это два разных значения. Используя тройку «ресурс-свойство-значение», RDF пытается обеспечить однозначный метод для выражения семантики в машиночитаемых кодах.
RDF обеспечивает механизм связывания свойств с ресурсами. Таким образом, прежде чем можно будет сказать что-либо о Документе 1, по правилам модели необходимо определить сам ресурс, представляющий Документ 1. Модель, описывающая выражение из примера, будет иметь один ресурс (Документ 1), одно свойство (Автор) и значение этого свойства («Иван Петров»). Для определения характеристик модели данных спецификация модели RDF предлагает описывать отношения между ресурсами и свойствами в виде направленного графа. В этом случае ресурсы описываются как узлы, свойства - как ребра графа, а значения - как строки, заключенные в кавычки. Графически рассматриваемый пример изображен на слайде (Слайд 13.10).
В случае, когда требуется дополнительная информация, например, об авторе (место работы, телефон и т.д.), предыдущая схема может быть детализирована описательной информацией об Иване Петрове. Как было сказано в первом примере, прежде чем давать описание ресурса, необходимо обозначить сам ресурс, в данном случае Ивана Петрова. Взяв за основу граф из предыдущего примера, можно графически описать Ивана Петрова (Слайд 13.10).
Теперь значение "Иван Петров" заменено уникально идентифицированным ресурсом, обозначенным как Автор 1, с соответствующими свойствами и их значениями. Использование уникальных идентификаторов позволяет однозначно связать свойства и ресурсы. Это важно, так как строка "Иван Петров" может быть значением различных свойств. Иван Петров может быть автором Документа 1, но с другой стороны, это значение может быть использовано при описании членов спортивного клуба. Однозначная идентификация ресурсов обеспечивает повторное использование явной описательной информации.
В приведенном примере был создан уникально идентифицируемый ресурс для автора, но не для имени, телефона или других свойств. RDF-модель позволяет создавать множественные уровни описания ресурсов. Например, свойство "Имя" вполне можно рассматривать как отдельный ресурс, содержащий свойства "Фамилия", Имя" и "Отчество". Очевидно, что при использовании более сложных элементов такое выделение ресурсов может продолжаться сколь угодно глубоко.
OWL (Web Ontology Language) — язык представления онтологий, расширяющий возможности XML, RDF, RDF Schema и DAML+OIL. Этот проект предусматривает создание мощного механизма семантического анализа.
Онтологии отличаются от XML-схем тем, что это представления знаний, а не форматы сообщений (большинство Web-стандартов состоят из комбинации форматов сообщений и спецификаций протоколов).
