With Moz’s (formerly SEOmoz) acquisition of Portland’s very own AudienceWise and structured data mega-evangelist Matt Brown, it seems inevitable that we’ll see some form of incredible semantic markup capabilities from the Mozzers in the near future. One day, we’ll see structured data all over the Moz website, but today is not that day. To quote what Matt had to say when I asked about the inevitability of semantic markup appearing on Moz.com, he had this to say:
— Matthew Brown (@MatthewJBrown) May 29, 2013
So in the meantime, I thought I’d walk through how I’d markup things on the MozCon 2013 event page (did you hear I’ll be a community speaker? Holy smokes!).
Why Semantic Markup?
Before we get into the nitty gritty technical aspect (the fun stuff), let’s start with WHY. Semantic markup is an incredibly powerful tool that we can use to give meaning to the data on our web pages. This allows applications and programs, like search engines, to understand all the specifics of what they’re crawling. With semantic markup, Google and Bing no longer have to figure out that MozCon is an event, where it’s located, or when it occurs; we’re conveying that information to them in unambiguous terms, using vocabularies they understand.
While the applications for semantic markup and structured data are nearly limitless, the one thing MozCon would get almost immediately is an event rich snippet in Google’s search results. MozCon doesn’t have one right now! Interestingly enough, they did have semantic markup on seomoz.org before the rebrand (which is still in Google’s cache).
MozCon’s Semantic Markup Battle Plan
When I see the MozCon landing page, all I can think about is “look at all that data”! I mean, just check it out: piles and piles of beautiful information. Right now, it’s pretty chaotic, but, through the amazing power of semantic markup, we can structure that data and harness its power! Let’s take a look at all the different types of semantic markup we can apply to the MozCon 2013 landing page.
Well, no duh. MozCon is the inbound marketing event of the season so we better be marking it up as such. The cool thing is that we aren’t just limited to marking it up as a single event. We can mark it up as a “super event” with many “sub events”! Here’s all the cool things we can define about MozCon.
- Name – The name of the event; MozCon!
- Description – A description of the event.
- Image(s) – Images associated with the event.
- URL – The URL of the event’s page.
- StartDate – The starting date/time in ISO 8601.
- Duration – How long the event lasts in ISO 8601. Really not required if we’re setting the start and end dates, yet I’m fascinated by it for some reason (I guess I just love defining as many things as possible).
- EndDate – The end date/time in ISO 8601.
- Location (EventVenue) – Discussed in the next section, but we’ll specify MozCon’s location.
- Offers – Offers include information about the sale of anything. We’ll use this to specify information about how much MozCon tickets cost.
- Sub Events – Sub events within the main one. For MozCon, we’ll use this for each individual session.
- Performers – The performers (i.e., presenters) at MozCon. In the section below, we’ll talk about how we pair this with “Person” markup.
We also markup the location as its own entity, nested within MozCon’s overarching one. What makes this even cooler? Schema.org defines a dedicated “EventVenue” so we can be even more specific than using a general “Place”. We can also markup the MozCon hotels with a dedicated “Hotel” schema! Within both of these, we can markup the following.
- Name – The name of the location.
- Description – A description or summary of the location itself.
- URL – The location’s homepage. The current landing page for MozCon 2013 doesn’t link out to any of the associated locations, so I won’t add it. The point is, we could.
- Address (Postal Address) – A nested entity with the street address, locality (city), region (state), and postal code.
- Map – MozCon’s landing page only has one map link (a combined map of both hotel options), but we could theoretically add this if we wanted to break out a separate link for each hotel or the venue itself.
- Telephone – Not included currently on the MozCon page, but we could add it if we wanted to.
I’m not sure why, but I absolutely adore Person markup. There’s just something cool about marking up data about not just some inanimate or intangible thing, but an ACTUAL PERSON! For each of the amazing speakers at MozCon 2013, we can markup the following properties.
- Name – The name of the person.
- Image – The person’s picture.
- URL – The URL associated with that person. Usually their company’s website or their personal homepage.
- JobTitle – Their job title.
- worksFor – The company that the person works for. Can be a straight name or a nested Organization/Corporation entity. Since we don’t include much information about each person’s company beyond the company’s name on the MozCon 2013 landing page, we’ll just stick with the straight name and not get into company specifics for every speaker.
One of the big things that sold me on attending MozCon for the first time was the phenomenal reviews that were featured on the landing page. Marking these up is a no brainer. Here’s what we can define about them.
- Name – Optionally, a title of the review. Since the testimonials for MozCon aren’t necessarily titled, we’ll skip this one.
- Author – The author of the review itself, which can be a name or a nested “Person” entity. For MozCon, we’ll be defining the reviewing People so we can specify their titles and companies.
- ReviewBody – Pretty straight forward; the body of the review.
- ItemReviewed – As users, we know that all the reviews are for MozCon itself, but we should specify it.
Marking Up MozCon 2013
The great thing about semantic markup (and the thing that can make it really challenging for a lot of people) is its flexibility. You aren’t stuck with a set of rigid rules where you have to just include a bulleted list of info and mark things up in an exact order.
This is no fun:
With semantic markup, you can work within an existing code framework to weave structured data throughout. So without further ado, go ahead and check out what appears to be an exact replica of the MozCon 2013 landing page.
While it looks exactly the same, there’s a wealth of structured data hidden within. Now go ahead and run that sucker through the Structured Data Testing Tool and be ready to have your mind blown.
Structured Data Highlights
If the mountains of structured data revealed by the Structured Data Testing Tool (there are about 90 “items”) leave you with a headache, check out some of the more user-friendly highlights below.
Semantic markup is just amazing. So is MozCon. How can we NOT combine the two?! I really can’t wait to see what’s in store for Moz’s structured data offering in the next few years and I’m extremely excited to see what happens as semantic markup becomes more ubiquitous on the web. Through semantic markup, we can start to organize the disparate snippets of text on our websites and give them relationships and meaning. I really think that semantic markup is the future of the web. It’s also virtuous and I’ve even gone so far as to say that “you suck” if you don’t care about semantic markup and structured data (yeah, I may have gone a bit overboard on that one).
I guess my point is this. Let’s make the web a better place; let’s markup ALL THE THINGS! Also, you should go to MozCon 2013 because it will be amazing.