2015-11-23 4 views
2

Люди рассматривают структуру описания ресурсов (RDF) в качестве модели данных без схемы. Однако есть что-то вроде RDF Schema (RDFS). Итак, почему RDF - схематическая модель данных?Почему RDF считается схематичным?

+0

Вы можете использовать RDF без использования RDFS. RDF не требует языка схемы. –

ответ

1

Говоря, что единственное преимущество RDF - это схематичность, я говорю о RDF как о структуре моделирования; многие словари, онтологии и инструменты, составляющие связанный стек данных, не являются «RDF», но им облегчается это. Они необходимы при работе с данными в Интернете распределенным способом, подобным Web, но им не нужно работать с RDF.

- An unusually sensible post about RDF

С другой стороны RDF Schema предоставляет словарь для RDF.

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

+0

Но обратите внимание, что XML-схемы - это строгие вещи, и есть только один или два способа сделать это. Языки схемы RDF обычно имеют тенденцию к согласованию. Вы можете написать схему, используя RDFS, или OWL, или что-нибудь еще (или создать свой собственный язык схемы). Это схематично не только в том смысле, что «вы можете использовать ее без языка схемы», но также и в том смысле, что «если вы хотите использовать язык схемы, вы не ограничены в выборе языка схемы». –

2

Подумайте об этом таким образом; С реляционными базами данных, вот типичный упрощенно рабочий:

  1. Создание таблицы (схемы)
  2. Вставьте несколько строк

с RDF, так же, как с другими Нет (т-только) SQL решения, которые вы можете обойти это наоборот. Вы просто начинаете создавать некоторые данные, и схема создается на лету.

В конце концов, если у вас есть сказать, базу данных документов, и вставить некоторые JSON объект

{ 
    "type": "User", 
    "id:" "123", 
    "name": "John Doe" 
} 

можно утверждать, что ключи type, id и name образуют какую-то схему, приложение, вероятно, зависит от , Единственное отличие состоит в том, что я написал выше, что схема не должна быть объявлена ​​заранее.

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

5

RDF Schema несколько неназванный. Это не реальный язык схемы, по крайней мере, не в том смысле, что схемы XML или модели ER являются схемами.

Основное отличие заключается в следующем: схемы являются предписывающим: они предписывают точную форму данные должны взять: этот столбец должен присутствовать, это может быть опущены, это необходимо иметь это особое отношение с чем-то else и т. д. и т. д. Любые данные, которые не полностью соответствуют схеме (либо оставив что-то, либо добавив некоторый дополнительный атрибут column/element /, который отсутствует в схеме), автоматически считаются недействительными (реляционные базы данных дают ошибки, когда вы пытаетесь вставить данные, которые не имеют нужного количества столбцов для таблицы, в которую вы хотите вставить ее, и т. д.).

С другой стороны, RDF Schema следует более точно назвать «Язык описания словаря»: это описательный на природе.Другими словами, он дает вам средства для определения словаря для ваших данных («эти классы и отношения существуют, и так они объединяются»), но это не заставляет ваши данные соответствовать этой схеме: это совершенно нормально иметь набор данных RDF, который использует некоторые части конкретной схемы RDF, но не другие, или который, кроме того, использует другую лексику из какой-либо другой схемы (или даже словарный запас, который явно не определен в любой схеме RDF).

Смежные вопросы