encyklopedia.space

RDFa

RDFa (ang. Resource Description Framework in Attributes) – rozszerzenie języka znaczników HTML oraz XML umożliwiające osadzanie danych w formacie RDF bezpośrednio w atrybutach elementów dokumentu. RDFa jest jednym z kluczowych mechanizmów wykorzystywanych w Sieci semantycznej, pozwalającym na semantyczne opisanie treści stron internetowych w sposób zrozumiały zarówno dla ludzi, jak i dla maszyn.

Historia

Idea umieszczania danych semantycznych w atrybutach znaczników sięga lat 2000. Pierwsza wersja RDFa, oznaczona jako RDFa 1.0, została opublikowana przez W3C w 2008 roku jako rozszerzenie XHTML. W 2012 roku wydano RDFa 1.1, które ujednoliciło specyfikację dla HTML5, SVG oraz XHTML. Od tego czasu RDFa jest częścią standardów W3C i jest szeroko wspierane przez przeglądarki oraz narzędzia do przetwarzania danych.

Podstawowe pojęcia

  • Triple (trójka) – podstawowy element modelu RDF składający się z podmiotu (subject), predykatu (predicate) i obiektu (object).
  • Vocabularies (słowniki) – zestawy terminów (np. Schema.org, Dublin Core), które definiują predykaty używane w trójkach.
  • Namespaces (przestrzenie nazw) – mechanizm umożliwiający rozróżnianie terminów pochodzących z różnych słowników.

Składnia RDFa

RDFa wykorzystuje specjalne atrybuty, które wprowadzają semantykę do istniejących elementów HTML/XML. Najważniejsze z nich to:

  • about – określa podmiot trójki.
  • property – określa predykat.
  • content – definiuje wartość obiektu (głównie dla danych tekstowych i liczbowych).
  • typeof – określa typ (klasę) podmiotu, czyli typ ontologiczny.
  • rel i rev – opisują relacje skierowane od bieżącego elementu do innego podmiotu.
  • prefix – deklaruje skróty (prefiksy) dla przestrzeni nazw.

Przykład użycia w HTML

<div vocab="https://schema.org/" typeof="Person">
    <span property="name">Anna Kowalska</span>
    <span property="jobTitle">Specjalistka ds. marketingu</span>
    <span property="telephone" content="+48-22-123-45-67">+48 22 123 45 67</span>
    <a href="mailto:anna@example.com" property="email">anna@example.com</a>
</div>
    

W powyższym przykładzie element div opisuje osobę (typeof="Person") przy użyciu słownika Schema.org. Atrybuty property definiują predykaty, a ich wartości są odczytywane jako obiekty trójek RDF.

Zastosowania RDFa

RDFa jest wykorzystywane w wielu dziedzinach, m.in.:

  • Publikowanie danych strukturalnych w danych otwartych i linked data.
  • Ulepszanie wyników w wyszukiwarkach (SEO) poprzez dostarczanie maszynowo czytelnych opisów produktów, wydarzeń czy organizacji.
  • Integracja z systemami CMS (np. WordPress, Drupal) i platformami e‑commerce.
  • Budowanie aplikacji typu Semantic Web i knowledge graph.

RDFa a inne technologie

W środowisku webowym istnieją alternatywne rozwiązania do opisywania danych semantycznych:

  • Microdata – podobny mechanizm, wprowadzony w specyfikacji HTML5, opierający się na atrybutach itemscope, itemtype i itemprop.
  • JSON‑LD – format oparty na JSON, przechowujący opis danych w osobnym skrypcie.
  • Tradycyjne RDF/XML – zapis RDF w formacie XML.

RDFa wyróżnia się możliwością integracji semantyki bezpośrednio w istniejącym kodzie HTML/XML, co sprawia, że jest łatwy do wdrożenia w istniejących serwisach internetowych.

Wsparcie i narzędzia

Przeglądarki internetowe (np. Chrome, Firefox, Safari) rozumieją RDFa i udostępniają rozszerzenia oraz wtyczki (np. RDFaCE) umożliwiające podgląd i walidację danych.

Popularne biblioteki i frameworki do przetwarzania RDFa:

Przyszłość RDFa

Rozwój Linked Data oraz rosnące zapotrzebowanie na interoperacyjność danych sprawiają, że RDFa pozostaje istotnym elementem ekosystemu semantycznego. Oczekuje się dalszej integracji z technologiami takimi jak Web Components oraz wzbogacanie standardów W3C o nowe słowniki i profile.

Literatura i zasoby

  • World Wide Web Consortium – RDFa 1.1 – Concepts and Syntax, 2012.
  • Markus Lanthaler, et al. – Embedded Metadata for the Web, 2009.
  • Kurt Cagle – Semantic Web for the Working Ontologist, 2011.