Resource Description Framework

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

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 Schema предоставляет собой словарь для RDF, который используется, в основном, при описании других словарей. RDF Schema:

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

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

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

OWL[править | править вики-текст]

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

RDF-хранилища[править | править вики-текст]

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

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

  • решения от Oracle
  • сервер приложений Virtuoso
  • 4Store
  • Stardog
  • Blazegraph (ранее Bigdata)[7]
  • GraphDB (ранее OWLIM)
  • Sesame
  • Jena TBD
  • Allegrograph

Применение[править | править вики-текст]

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

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

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

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

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

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

Форматы[править | править вики-текст]

Проекты[править | править вики-текст]

Инструменты[править | править вики-текст]

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]

Литература[править | править вики-текст]

  • 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.