Resource Description Framework

Resource Description Framework
Изображение логотипа
Орган стандартизации Консорциум Всемирной паутины
Создатель Консорциум Всемирной паутины
Создан 1997
Логотип Викисклада Медиафайлы на Викискладе

Resource Description Framework (RDF, «среда описания ресурса»[1]) — это разработанная консорциумом Всемирной паутины модель для представления данных, в особенности — метаданных[2].

RDF представляет утверждения о ресурсах в виде, пригодном для машинной обработки. RDF является частью концепции семантической паутины.

Вид данных в ресурсе в RDF может быть любой — как информационной (например, веб-сайт или изображение), так и неинформационной (например, человек, город или некое абстрактное понятие). Утверждение, высказываемое о ресурсе, имеет вид «субъект — предикат — объект» и называется триплетом[1]. Утверждение «небо голубого цвета» в RDF-терминологии можно представить следующим образом: субъект — «небо», предикат — «имеет цвет», объект — «голубой». Для обозначения субъектов, отношений и объектов в RDF используются URI.

Триплет RDF

Множество RDF-утверждений образует ориентированный граф, в котором вершинами являются субъекты и объекты, а рёбра отображают отношения.

RDF сам по себе является не форматом файла, а только лишь абстрактной моделью[2] данных, то есть описывает предлагаемую структуру, способы обработки и интерпретации данных. Для хранения и передачи информации, уложенной в модель RDF, существует целый ряд форматов записи.

Для обработки RDF-данных предлагается реализовать языки запросов: SPARQL (стандарт W3C), RQL, RDQL.

История появления RDF имеет своё начало в 1990 году, когда Тим Бернерс-Ли предложил отмечать типы ссылок между документами для облегчения автоматической обработки. Типы ссылок, однако, не были включены в первую спецификацию HTML, но идея была подхвачена в системе описания метаданных MCF. Обобщённое представление метаданных нашло отражение в рекомендации W3C по RDF в 1999 году. С тех пор стандарты RDF развиваются, появляются новые средства для работы с RDF[3].

Набор стандартов

[править | править код]

С 10 февраля 2004 года RDF имеет статус стандарта W3C. С 25 февраля 2014 принят стандарт RDF 1.1.

Перечень стандартов, имеющих отношение к RDF (см. http://www.w3.org/TR/):

Также есть множество черновиков и заметок, среди которых есть Linked Data Glossary (англ.) — глоссарий всех понятий, связанных с RDF.

Форматы представления

[править | править код]

Для записи и передачи RDF используется несколько форматов, в том числе:

  • RDF/XML — запись в виде XML-документа;
  • RDF/JSON (англ.) — запись в виде JSON-данных;
  • RDFa (англ. RDF in attributes) — запись внутри атрибутов произвольного HTML- или XHTML-документа;
  • N-Triples, Turtle, N3 — компактные[4] формы записи утверждений.

RDF предоставляет средства для построения информационных моделей, но не касается семантики описываемого. Взятый в отдельности граф RDF можно понимать только как граф. Толкование значения основывается на способности пользователей RDF интерпретировать отдельные URI, строковые литералы и структуру графа, и по ним интерпретировать остальные URI и семантику данных.

Для выражения семантики требуются словари (англ. vocabularies), таксономии (англ. taxonomies) и онтологии (англ. ontologies) и наличие в рассматриваемом графе связей с ними.

  • Словарь представляет собой собрание терминов, имеющих во всех контекстах использования этого словаря одинаковый смысл.
  • Таксономия — это словарь иерархически организованных терминов.
  • Онтология использует предопределённый зарезервированный словарь терминов для определения концепций и отношений между ними для конкретной предметной области. Онтологии можно использовать для выражения семантики терминов словаря, их взаимоотношений и контекстов использования.

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

RDF Schema предоставляет собой словарь для RDF, который используется, в основном, при описании других словарей. RDF Schema:

  • декларирует существование ресурсов, среди которых отдельно выделяет литералы разных типов данных, в том числе строк с указанием языка, строк с XML-или HTML-разметкой;
  • декларирует существование классов ресурсов и их подклассов;
  • декларирует существование свойств, которые относятся к ресурсам определённого класса, могут объектами иметь ресурсы конкретных классов, и могут быть более узко осмысленным вариантом более общего свойства;
  • декларирует существование таких часто используемых свойств как «наименование», «описание», «ресурс-синоним», и некоторых других;
  • описывает классы и свойства, позволяющие организовать в модели RDF три вида списков;
  • описывает классы и свойства, нужные для реификации (от англ. reification, воплощение) — обеспечения возможности записи триплетов, объектом и субъектом которых являются триплеты.

Описание дополнительной семантической нагрузки этого словаря расположено во всех трёх основных стандартах RDF — в описании концепций RDF (англ.), в описании самого словаря (англ.), и в описании семантики RDF (англ.).

В частности, в описании семантики RDF говорится, что словари могут лишь подразумевать, но не содержать в явном виде триплеты, которые можно получить из остальных триплетов словаря путём исполнения ряда определённых для словаря формальных правил, следующих из семантики используемых словарём понятий. И приведён перечень правил, подразумеваемых словарём RDF Schema.

Для записи более сложных логических отношений описываемых ресурсов различных предметных областей в онтологиях служит язык OWL[5].

RDF-хранилища

[править | править код]

Для хранения RDF-данных используются два основных вида хранилищ: специализированные (native, «родные», «нативные») и не специализированные (non-native). Специализированные хранилища позволяют достичь большей степени оптимизации, но более трудоёмки в проектировании, так как строятся специально для работы с RDF. Остальные хранилища более просты в проектировании (например, за счёт использования механизмов реляционных СУБД или решений NoSQL), но менее оптимизированы под работу с RDF. Специализированные хранилища делятся по способности оперировать с данными, лишь целиком находящимися в оперативной памяти (in-memory) или же способные использовать и внешнюю память (например, жёсткий диск)[6].

Системы для работы с RDF разрабатываются как в рамках исследований, так и для производственного использования. К основным специализированным хранилищам, пригодным для производственного использования, относятся[6]:

  • OpenLink Virtuoso
  • Stardog
  • Blazegraph (ранее Bigdata)
  • GraphDB (ранее OWLIM)
  • RDF4J (ранее Sesame)
  • Apache Jena
  • Allegrograph
  • 4Store

Применение

[править | править код]

Оформление баз знаний или представления их данных в рамках различных проектов в множестве институтов, университетов и иных организаций. В основном, в научно-исследовательских целях.

Поисковые системы предлагают веб-мастерам использовать RDF и аналогичные языки разметки страниц для повышения информативности ссылки на их сайт в результатах поиска.

Социальные сети, с подачи Facebook (opengraph), предлагают веб-мастерам использовать RDF для описания свойств страниц, так же позволяющих красиво оформить ссылку на неё в записи пользователя социальной сети.

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

Кроме вышеперечисленного, в формате RDF представляют данные для анализа и/или интеграции в информационных системах предприятий, что даёт возможность исследовать их при помощи SPARQL (проект D2RQ, например), а при опоре на отраслевой стандарт, например, ISO 15926 позволяет унифицированно обмениваться данными различных предприятий на уровне отрасли.

Использование RDF увеличилось с появлением представления RDF в виде JSON-LD и распространением Linked Data. Например, Google принимает во внимание семантическое описание страницы в одном из RDF-форматов (и с использованием словаря Schema.org) и использует его для более подробного описания результатов поиска[7].

Инструменты

[править | править код]

Примечания

[править | править код]
  1. 1 2 Среда Описания Ресурса (RDF): Понятия и Абстрактный Синтаксис. Дата обращения: 11 августа 2012. Архивировано 2 марта 2014 года.
  2. 1 2 RDF Primer (англ.). Консорциум Всемирной паутины (10 февраля 2004). — Рекомендация W3C, информативное введение в RDF. Дата обращения: 22 ноября 2009. Архивировано из оригинала 2 июня 2012 года.
  3. Segaran, Evans, Taylor, 2009, pp. 63-64.
  4. Шон Палмер. Notation3: A Rough Guide to N3 (англ.). — Введение в Notation3. Дата обращения: 22 ноября 2009. Архивировано из оригинала 2 июня 2012 года.
  5. Hebeler, Fisher, Blace, Perez-Lopez, 2009, pp. 98-100.
  6. 1 2 Curé, Blin, 2014, Chapter V.
  7. Event Markup: Official Performer Sites. Дата обращения: 28 мая 2015. Архивировано 28 мая 2015 года.

Литература

[править | править код]
  • Toby Segaran, Colin Evans, Jamie Taylor. Programming the Semantic Web. — O’Reilly Media, 2009. — 302 с. — ISBN 978-0-596-15381-6.
  • John Hebeler, Matthew Fisher, Ryan Blace, Andrew Perez-Lopez. Semantic Web Programming. — John Wiley & Sons, 2009. — 648 с. — ISBN 9780470418017.
  • Olivier Curé, Guillaume Blin. RDF Database Systems. — Morgan Kaufmann, 2014. — 256 с. — ISBN 978-0-12-800470-8.