At the upcoming March 25 meeting, the group will explore what it means to do business on the web scale. This post is one in a series of two blogs posts on the topic of making metadata scalable for the web.
Perhaps you’ve heard of SEO, or search engine optimization. Once meant to refer to strategies for making websites more discoverable to search engines, SEO has evolved into a business sector in its own right. SEO companies sprang up to help businesses “game” search engine algorithms, in order to makes those businesses appear at the top of search result lists. Years of increasing attention to SEO seems to have driven search engines like Google, Yahoo, and Bing into finding ways of leveraging web content to deliver relevant results to searchers. It’s not hard to imagine a future in which it isn’t enough to populate webpages with descriptive metadata about the content, authorship, and characteristics of that webpage. Doing business on the web is beginning to mean that organizations must markup webpage content in a semantically meaningful and machine processable way. This post introduces microdata and Schema.org as a way of telling machines the meaning of text.
Before elaborating on what microdata is, let’s backup and talk about how HTML has conveyed metadata in the past. HTML documents are comprised of two areas, the head element (HTML tag: <head>) and the body element (HTML tag: <body>). The body element is where you put all of the content you want people to see. The text you’re reading right now resides in the <body> tag of this HTML page. HTML body elements include tags for demarcating headings, paragraphs, lists, etc. In other words, HTML marks up syntactic or structural information in a block of text. Without the structure provided by HMTL tags, text would display in browsers as one long continuous clump without line breaks, white space, or font variation.
Though not typically displayed to users, the HTML head element provides information about the webpage such as the type of content and character set encoding (e.g., text/html, UTF-8), the website title (which is visible at the top of the browser window or tab), and sometimes the website author, description, and keywords. These website characteristics appear inside of the <meta> tag, short for metadata. Content within the <meta name=”description”> tag is most often used by search engines Yahoo and Bing for search result display. Yahoo and Bing retrieved the search result snippets shown in Figure 1 from the quoted search “krups ea9000 barista automatic espresso machine black stainless.” For comparison’s sake, I’ve selected the search result for the product as it appears on Zappos.com.
If I look at the HTML source code for the product webpage, I can see the full text of the meta description element, as it appears within the HTML head (Figure 2).
Bing and Yahoo opted to choose the same specific portion of text included in the meta description element. Why did both search engines opt to display this particular section of the description text? Only by looking at proprietary algorithms could we attempt to find a reason.
Google also retrieves the Zappos page for this search; however, Google displays what they call a “rich snippet” (Figure 3). Google’s snippet includes some of the text from the meta description element but it includes other text as well. You’ll notice that the terms I searched for appear in bold text. Google pulled text not only from the <meta> tag in the <head> of the HTML document, it also pulled content from the <body> of the webpage where my search terms appear.
Google also displayed the list and sale price of the product, probably because someone at Google decided that such information is useful to searchers. How did Google know that those numbers were prices and not the number 9000 from the EA9000 model number or the number 23 from the product weight information? Because the prices on the Zappos webpage were encoded in microdata.
Microdata and Schema.org
In the web context, microdata is a HTML specification for embedding semantically meaningful markup chiefly within the HTML body. Microdata isn’t the same thing as metadata, as microdata isn’t restricted to conveying only information about the creation of the text. Microdata becomes part of the web document itself and serves somewhat like an annotation within the HTML body text. Microdata tells machines something more about the meaning of the text. On the Zappos product page, we see a nice display of the list price and sale price in the upper right hand corner of the webpage (Figure 4). Search engine web crawlers mining the same text in the HTML file see that the text “$2,499.99″ is tagged with the Schema.org price property (Figure 5). Ah, so now we’ve come to it: how are microdata and Schema.org related? Basically, microdata is an HTML specification that allows for the expression of other vocabularies, such as Schema.org, within a webpage. Just as XML provides syntax for expressing TEI or EAD or MODS, microdata provides syntax for expressing Schema.org or RDFa.
I won’t go into the history of Schema.org (I touched upon it in past posts and this post has gotten quite a bit longer than I intended!); however it’s worth noting that the espresso machine example I’ve given above is limited, as Zappos hasn’t deployed Schema.org as extensively in their website as other companies have.
Try searching Google for movie times for a specific theater in Bloomington. At the very top of the search result list you should find structured display of movies, runtimes, MPAA ratings, showtimes, with links to trailers. How does this work? With Schema.org.
Welcome to the semantic web.
In the next of this two-part series, Rachel Wheeler will look at how libraries and library discovery layers are using Schema.org to expose resources.
Bradley, A. (2013 November 5). Basic vocabulary for schema.org and structured data. SEO Skeptic. Retrieved from: http://www.seoskeptic.com/basic-vocabulary-for-schema-org-and-structured-data/
 The statistical community also uses the term “microdata” to describe individual response data in surveys and censuses–completely different beast!
 I would have spent hours trying to figure out the distinction between microdata, microformats, schema.org, etc. if not for an incredibly thorough description by Aaron Bradley, former cataloger turned web consultant.