Wie Webseiten RDF einbetten und wie man strukturierte Daten aus dem Web extrahieren kann
Donnerstag, 04.05.2023
Zusammenfassung
RDF kann als JSON-LD, Microdata oder RDFa in Webseiten eingebettet werden. In Diensten wie Suchmaschinen oder sozialen Netzwerken kann das die Sichtbarkeit erhöhen und mehr Traffic auf Websites generieren. Eingebettetes RDF von externen Websites könnte Ihren eigenen Knowledge Graph erweitern.
RDF
RDF , die Grundlage des Semantic Webs und von Linked Data, ist ein Standard für die Beschreibung und den Austausch von Daten.
Einer der Vorteile ist, dass externes RDF schnell im eigenen Knowledge Graph integriert und genutzt werden kann.
Es gibt viele öffentlich verfügbare Datensätze, die in einer RDF-Serialisation heruntergeladen werden können (zudem bieten einige Publisher auch einen Endpoint an, der es ermöglicht die Daten mit SPARQL abzufragen). Für einen ersten Eindruck bietet sich die Linked Open Data Cloud an, auf der Datensätze gesammelt werden, die unter einer offenen Lizenz stehen.
Aber es gibt eine weitere mögliche Quelle für Daten in RDF: reguläre Webseiten, die das RDF in ihrem HTML einbetten.
Warum betten Webseiten RDF ein?
Es gibt unzählige Motivationen, RDF auf Webseiten einzubetten, aber die meisten Publisher machen dies sicherlich, um bestimmte Features in Diensten wie sozialen Netzwerken und Suchmaschinen zu ermöglichen.
In sozialen Netzwerken kann eingebettetes RDF Vorschauen für geteilte Links ermöglichen.
In Suchmaschinen kann eingebettetes RDF (durch die Nutzung des Vokabulars Schema.org) Suchergebnis-Snippets hervorheben oder erweitern. Dies ist relevant für die Suchmaschinenoptimierung (SEO), denn solche Snippets fallen den Nutzern und Nutzerinnen schneller ins Auge und diese erhöhte Sichtbarkeit kann zu einer besseren Click-Through-Rate auf die Webseiten führen.
Zum Beispiel bietet die Suchmaschine Google Search „Rich Results“ für Datensätze, Fragen und Antworten und viele weitere Fälle an. Der folgende Screenshot zeigt ein Rich Result für Stellenausschreibungen, welches oben auf der Suchergebnisseite angezeigt wird, sogar noch vor dem ersten regulären Suchtreffer.
Suchanfrage „job postings teacher düsseldorf“ in Google Search
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Organization", "name": "ACME" } </script>
Microdata besteht aus Attributen (z. B. itemprop
), die dem bestehenden HTML hinzugefügt werden können:
<div itemscope itemtype="https://schema.org/Organization"> <span itemprop="name">ACME</span> </div>
RDFa besteht, wie auch Microdata, aus Attributen (z. B. property
):
<div typeof="schema:Organization"> <span property="schema:name">ACME</span> </div>
Während Microdata und RDFa es ermöglichen, die vorhandenen Inhalte zu nutzen, erfordert JSON-LD die Inhalte zu duplizieren.
Wie viele Webseiten betten RDF ein?
Das Projekt Web Data Commons analysiert regelmäßig den Korpus des Projekts Common Crawl, um herauszufinden, wie viele der gecrawlten Domains / Webseiten Tripel einbetten (was die drei oben genannten Syntaxen umfasst, sowie bestimmte Microformats): https://webdatacommons.org/structureddata/
Für jedes Jahr von 2012 bis 2022 zeigt das Balkendiagramm, wie viele Pay-Level-Domains Microdata, JSON-LD, hCard (Microformats) und RDFa veröffentlicht wurden. (Screenshot aufgenommen von webdatacommons.org, 2023-03-07)
Im Crawl vom Oktober 2022 enthielten fast 50 % der gecrawlten Webseiten und circa 40 % der gecrawlten Pay-Level-Domains Tripel.
Wie lässt sich feststellen, ob eine Webseite RDF einbettet?
Standardmäßig zeigen Browser nicht an, dass eine Webseite RDF enthält. Neben der Überprüfung des HTML-Quelltextes gibt es die Option, Browser-Erweiterungen zu nutzen, die eingebettetes RDF anzeigen können.
Ein Beispiel ist der Structured Data Sniffer von OpenLink Software. Diese Erweiterung zeigt das RDF in einem Overlay in der oberen rechten Ecke an:
Wie lässt sich eingebettetes RDF extrahieren?
Die oben genannte Erweiterung Structured Data Sniffer ermöglicht es, das RDF anzuzeigen, zu speichern und hochzuladen (z. B. in einen SPARQL-Endpoint). Sie unterstützt die RDF-Serialisationen JSON-LD, RDF/XML und Turtle.
Eine weitere Option, die auch in Programmen verwendet werden kann, ist die Python-Bibliothek und das Kommandozeilen-Tool extruct von Zyte. Es legt die Tripel in einem JSON-Object ab, das ein JSON-LD-Object für das extrahierte RDF enthält.
Join in!
Möchten Sie eingebettetes RDF nutzen? Beispielsweise um es in Ihrem Knowledge Graph zu integrieren?
Möchten Sie RDF in Ihren Webseiten einbetten? Beispielsweise um die Sichtbarkeit auf Suchergebnisseiten zu erhöhen?
Nehmen Sie Kontakt mit uns auf, um herauszufinden, ob wir Sie unterstützen können.
Stefan Götz
Autor
Linked Data Consultant