Microformats 2 and Schema
There's been some misinformation about microformats spread at AccBristol, specifically:
For the sake of daftness, I'm going to show how to do this. I'm going to take the 2nd example of BroadcastService, about In Our Time and give a microformats2 markup for the arbitrary schema vocab.
Immediately, there is some confusion as the various examples given don't match (the JSON-LD is missing all of the episode name information, and has misparsed the dates as text; the microdata and RDFa have injected lots of extra div's that will relayout the page) but I'll see if I can match the microdata/RDFa examples:
Things to note here:
- I've prefixed the schema-specific properties as a vendor vocabulary ie
h-RadioSeriesto show it's an extension that hasn't been through the microformats process
- The Microformats JSON is parsed directly from the HTML, and will be consistent across parsers in different languages. Whereas the JSON-LD is a separate DRY violating piece of data that goes out of sync with the information in the page (as the example from schema.org shows - not sure if that is a parsing failure or poor manual updating)
- The jf2 version of the parsed microformats is more compact than the direct version by embedding single-valued properties directly, not as a list - this is derived from the microformats version, and is close to what a correct JSON-LD form would be.
- The Microformats markup is more compact than either Microdata or RDFa because of the implied
- Nesting other types inside a property is much more compact than microdata and simpler than RDFa
- This example also shows other issues with the schema.org vocabulary - why is the episode number a CreativeWork:position and not a RadioSeries:episode:episodeNumber ?
Updated with jf2 version.