Structured Data on the WorldWideWeb

Nikolai Janakiev @njanakiev

Structured Data

Resource Description Format (RDF)

subject_predicate_object

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:si="https://www.w3schools.com/rdf/">

<rdf:Description rdf:about="https://www.w3schools.com">
  <si:title>W3Schools</si:title>
  <si:author>Jan Egil Refsnes</si:author>
</rdf:Description>

</rdf:RDF>

RDFa

Resource Description Framework in Attributes (rdfa.info)

<html
  xmlns="http://www.w3.org/1999/xhtml"
  xmlns:dc="http://purl.org/dc/terms/"  
  version="XHTML+RDFa 1.1"
  xml:lang="en">
  <head>
    <base href="http://iricelino.org/rdfa/sample-annotated-page.html" />
    <title property="dc:title">Sample page annotated with RDFa 1.1</title>
    <meta property="dc:creator" content="Irene Celino" />
  </head>

  <body profile="http://iricelino.org/rdfa/generic-profile.ttl">
    <div id="personal">
        <h2>Sample personal description (1)</h2>
        <p about="#me" typeof="foaf:Person">
            My name is <span property="foaf:name">John Doe</span> while my given name in Italian would be <span property="foaf:givenname" xml:lang="it">Giovanni</span>;
            ...
        </p>
    </div>
  </body>
</html>

Microformats

hCalender (HTML iCalender)

<span class="vevent">
 <span class="summary">The microformats.org site was launched</span>
 on <span class="dtstart">2005-06-20</span> 
 at the Supernova Conference 
 in <span class="location">San Francisco, CA, USA</span>.
</span>

hCard (HTML vCard)

<div class="vcard">
 <a class="url fn" href="http://janakiev.com/">Nikolai Janakiev</a>
</div>

hRecipe

<p class="ingredient"><span class="value">125</span><span class="type">ml</span> milk</p>

JSON-LD

JavaScript Object Notation for Linked Data (json-ld.org)

<script type="application/ld+json">
{
   ...
}
</script>
{
    "@context":"http://schema.org",
    "@type":"WebSite",
    "url":"http://janakiev.com/",
    "name":"Nikolai Janakiev",
    "author":{
        "@type":"Person",
        "name":"Nikolai Janakiev"
    },
    "image":"...",
    "description":"...",
    "sameAs":[
        "https://twitter.com/njanakiev",
        "https://github.com/njanakiev",
        ...
    ]
}

Schema.org

Vocabulary for RDFa, Microdata and JSON-LD, founded by Google, Microsoft, Yahoo and Yandex (schema.org)

Schema.org

The Open Graph protocol

Facebook Metadata (opg.me)

OGP

<html>
  <head prefix="og: http://ogp.me/ns#">
    <meta charset="utf-8">
    <title>The Open Graph protocol</title>
    <meta name="description" content="The Open Graph protocol enables any web page to become a rich object in a social graph.">
    <meta property="og:title" content="Open Graph protocol">
    <meta property="og:type" content="website">
    <meta property="og:url" content="http://ogp.me/">
    <meta property="og:image" content="http://ogp.me/logo.png">
    <meta property="og:image:type" content="image/png">
    <meta property="og:image:width" content="300">
    <meta property="og:image:height" content="300">
    <meta property="og:image:alt" content="The Open Graph logo">
    <meta property="og:description" content="The Open Graph protocol enables any web page to become a rich object in a social graph.">
    ...
  </head>
  ...
<html>

Who Actually Uses This?

Companies in Crunchbase

Crunchbase Data

Crunchbase Country Stats

Stats

Structured Data on the WorldWideWeb

Nikolai Janakiev @njanakiev