Как бы вы смоделировали общее хранилище Schema.org

Я ищу лучший способ моделирования приложения вокруг всей этой фигни с schema.org. Иерархия Schema.org содержит сейчас около 500 различных типов, которые могут быть использованы для разметки микроданных на сайте: http://schema.org/docs/full.html

Цель состоит в том, чтобы построить общую систему вокруг всех этих Типов, не моделируя 500+ различных таблиц с помощью баз данных SQL по умолчанию.

В качестве начального примера JobPosting кажется довольно простым для моделирования, поскольку он имеет только несколько полей и всего две ссылки на объекты Organisation и Place: см. http://schema.org/JobPosting

Какую систему баз данных (SQL, MongoDB, Cassandra, neo4J, Sesame, ...) вы бы предложили для моделирования такого рода данных? Есть даже некоторые специальные базы данных Graph или RDF, которые могут быть другим вариантом.

Бонусный вопрос: Еще одна проблема, которая сейчас поражает меня, это множественное наследование, на котором основаны некоторые объекты, например, http://schema.org/Dentist - это LocalBusiness Organization, но также и Place, поэтому у него есть поля от нескольких разных родителей.

Поэтому я ищу систему с:

  • Переменными столбцами, поскольку я не хочу моделировать эти миллионы атрибутов с помощью SQL-DDL
  • Множественным наследованием или чем-то подобным (Mixins)
  • Полезными связями между записями (например, JobPosting указывает на организацию и место, к которому она принадлежит)
  • Простыми запросами (например, получить все JobPosting для данной организации)

Пожалуйста, дайте мне знать, какая информация поможет найти лучший ответ.

7
задан Severin Ulrich 13 January 2012 в 10:42
поделиться