After the rambly last post, I finished up the conversion script to turn the existing data into a set of better, mostly-compliant schema.org files. Almost all the data fits into existing schema structures, albeit with some use of relatedLink and significantLink, which is a little vaguer than I’d like to be. Google’s tester doesn’t like the alternateType use, though, which is disappointing, but its crawler will find all the json by crawling the HTML so I guess it’ll do.

The most glaring absence has been that of linking contact and social media information to Persons and Organizations, which is funny because c’mon, it was in FOAF, why didn’t Brickley bring it over. So I did: created an umbrella Agent to unify Person and Organization and gave them holdsAccount properites to contain OnlineAccounts. At some point I will serve up the modified schemas under the right @context and see if Google is okay with them.

Aside from that, everything validates, and I have a Website with Blogs that have SocialMediaPostings under them, which contain ImageObjects, are attributed to an Organization as publisher and a Person as author. Next step, since having a Google Calendar widget on every page has really weighed the existing structure down, plus I got tired of synchronizing Google and Facebook, has been to write a little thing that converts Facebook events to schema.org Events.

With that done, now I’m working on updating my templates to agree with the new structures, and then it can build the live site directly.