GRDDL теперь рекомендуется W3C

11 сентября инфраструктура GRDDL приобрела статус «W3C Recommendation».

Пройдут годы, прежде чем поставщики содержимого начнут уважать GRDDL, однако смысл технологии ясен уже сейчас.

Это мост между существующими диалектами XML и RDF. Использование GRDDL смещает точку приложения усилий с формирования RDF к созданию алгоритмов преобразования существующих данных в RDF (это очень разные вещи). GRDDL как раз обсуждает способы указания возможностей перевода существующих данных в RDF.

Документы могут быть включены в инфраструктуру GRDDL разными путями. В общем случае для XML для этого нужно объявить пространство имён grddl и указать в аттрибуте корневого элемента идентификатор ресурса соответствующего преобразования из XML в RDF (например, файла XSLT). Механизм также позволяет указывать преобразования для целых классов XML-документов (имеются в виду классы по профилю или пространству имён), например, можно указывать преобразования микроформатов — хаков на HTML — в RDF — формализованный каркас высокого уровня.

Для определённых типов XML-приложений есть частные особенности применения, например, «GRDDL-enabling» для HTML-документов включает указание корректного значения profile в секции метаданных документа, для XHTML — profile и списка преобразований.

Пример для XHTML (образец из описания GRDDL):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head profile="http://www.w3.org/2003/g/data-view">
  <title>Joe Lambda's Home page [an example of RDF in XHTML]</title>

  <link rel="transformation" href="http://www.w3.org/2003/12/rdf-in-xhtml-xslts/grokFOAF.xsl" />
  <link rel="transformation" href="http://www.w3.org/2003/12/rdf-in-xhtml-xslts/grokCC.xsl" />
  <link rel="transformation" href="http://www.w3.org/2003/12/rdf-in-xhtml-xslts/grokGeoURL.xsl" />

и т. д.

Здесь XHTML-документ и связывается с несколькими преобразованиями (здесь — XSLT), в которых указано, как извлечь данные из XHTML и преобразовать их в набор фактов RDF. Преобразования выполняются по шагам, на каждом шаге результат текущего сливается с уже сформированным RDF; инвариант GRDDL — на выходе получается корректный RDF.

(XHTML-документ обязательно должен быть валидным; создатели невалидных (и уж тем более не well-formed) страниц должны сменить свои убеждения на правильные или быть утилизированы в биореакторе.)

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

Чем отличается подход GRDDL от текущих решений по извлечению, например, микроформатов при помощи XSLT или как это делает Operator? GRDDL — более обобщённая инфраструктура, не завязанная на определённый формат (в терминах XML — фактически DTD) представления со стороны входных данных. Обобщение и высокий уровень описания, однако, может явиться причиной сложности в реализации GRDDL-агентов и фактическими различиями в деталях их функционирования.

В документе не указывается конкретная технология для извлечения данных:

grddl:transformation attribute whose value is an IRI reference, or list of IRI references, that refer to executable scripts or programs which are expected to transform the source document into RDF.

XSLT представляется одним из удобных (и, что подчёркивается, распространённых) средств извлечения данных из XML, существующие связанные с GRDDL преобразования построены именно на XSLT.

git