How I Got Into Google’s Knowledge Graph

I’ve been tinkering with Freebase and structured data for so long I can’t be sure exactly how this happened, but it turns out I’ve got a Knowledge Graph result. Which isn’t bad going since Knowledge Graph describes entities and I am, well, a nonentity.

I’m not being entirely self-abasing, either. Apple Dictionary – lexicon of lexicons – defines nonentity as follows:

a person or thing with no special or interesting qualities; an unimportant person or thing: a political nonentity.

Granted everyone who knows me considers me special, interesting and toweringly important, they’re only human, but I’m not exactly well known.

Anyway, all this navel gazing serves a point, which is that Google Knowledge Graph isn’t some mysterious, unfathomable arbiter of importance and notability. That’s a privilege reserved for basement-dwelling Wikipedia moderators. You just need to feed it the right data in the right way.

Freebase, or maybe WikiData

I know a big factor in getting this to work is Freebase, the “open, shared database of the world’s knowledge” Google snapped up around five years ago. I know this because my Knowledge Graph result shows my birthplace, which is relatively obscure and, as far as I know, not published anywhere else on the web.

Naturally I felt silly creating a Freebase article about myself. My only claim on “notability” for their database’s purposes is my being a person, which given it’s a distinguishing feature I share with several billion others didn’t strike me as being prime Knowledge Graph material.

Nevertheless, in the name of science and narcissism I persisted. Date and place of birth, employment history, height, website URL, social media profiles, favourite brand of stroopwafel, etc. Things only my mother would want to know, if she didn’t already know them.

Now, if you want to try this you’re at a disadvantage already: Freebase is in the process of being shut down. Apparently it’s to be replaced by WikiData, though I’ve yet to see any movement on that front. Still, give it a whirl. I did, and I’m an entity now, and I draw a lot of water in this town.

Structured data

Here’s where it shows if you’ve done your homework or not. Structured data, Schema.org, microdata, RDFa, microformats, JSON-LD, and more besides get badly jumbled in certain quarters of the SEO echo chamber.

Not to divert into a tangential critique of the SEO industry’s unfortunate tendency to make itself appear incompetent, but we sound like bozos if we get things like this wrong. For our purposes, it’s enough to say that structured data describes any of various forms of machine-readable data. Oh, and Schema.org and a schema aren’t the same thing. Don’t even start me on the old tags, elements and attributes chestnut. End of lecture.

Bottom line is I tricked out my site with structured data from the Person schema, from Schema.org. In HTML5 microdata initially, until I decided I wanted to use JSON-LD for a lark.

Oh, and I know that Freebase (WikiData, whatever) alone won’t do the trick. Certain, arguably more notable colleagues have also been beavering away in Freebase without being catapulted to Knowledge Graph stardom.

If you’re interested, I wrote a post some while back on getting WordPress to output microdata, and touched on some of the difficulties entailed in making that work without designing page structure with that purpose in mind from the start.

Basically the problem is you tend to have related data spread all over the page, which works for humans but gets annoying when you need to mark up elements of said data that aren’t all descended from the same element. JSON-LD avoids that by just bunging it all in one place.

Anyway, I digress. Point is, use Person schema. Within it, use the sameAs attribute to refer to your Freebase (or, presumably, WikiData) entry’s URL. I also referred to a couple of my social profiles which, interestingly enough, is now explicitly supported by Google as a means of putting social profile links into Knowledge Graph entries. Get me.

Wait

Now the hard part. Wait. Honestly, I started tinkering with this on various sites and in various different ways in summer 2014. I managed to merge the Knowledge Graph results for the constituent companies in my employer’s merger (Digitas and LBi) in about a month, maybe two.

My own arrival on the entity search stage took… well, I only noticed last week, and then only because someone else searched me. Honest. I was joking about the narcissism. But the thing is, Knowledge Graph seems to take a longish time to influence. If you’re doing it for clients, you need to set reasonable expectations right from the start.