Schema.org/Microdata markup for list of recent posts without providing “author” / “publisher”?

It’s perfectly fine not to provide these properties. Schema.org doesn’t require any property. If Google’s Structured Data Testing Tool says that certain properties are missing, what it really means is: “If you don’t provide these properties, we won’t show the corresponding Rich Snippet or Knowledge Graph feature in Google Search” There’s no need to get … Read more

Why does Google Testing Tool use the “id” attribute to generate a URL for the Microdata item?

This is strange. It’s definitely not conforming to the Microdata Note. Apart from Microdata’s itemref attribute, HTML5’s id attribute has no special meaning in Microdata. If Google wants to use the id value anyway, they should at least generate the URL with a fragment identifier, i.e., http://www.example.com/#foobar. My guess is that they are (probably unintentionally) … Read more

How to implement “mainEntityOfPage” to this specific site?

About Google’s Microdata example Google’s Microdata example is invalid. If the meta element has the itemprop attribute, the content attribute is required (details). I described different ways how to specify mainEntityOfPage in Microdata, the most straigtforward one being a link element that creates a URL value (instead of another Microdata item): <link itemprop=”mainEntityOfPage” href=”http://example.com/article-1″ /> … Read more

Does Schema.org markup work if markup is dynamically built with JavaScript?

Google’s documentation only mentions that they can consume dynamically added structured data if the syntax JSON-LD is used: Also, Google can read JSON-LD data even when it is dynamically injected into the page’s contents, such as by Javascript code or embedded “widgets”. This does not necessarily mean that they can’t read it in case of … Read more