Home · Entity Graph
The entity graph
What is an entity graph? Building mine in public, from photographs
Search engines organize the world as things, not pages
Ask a search engine a question about a person and it does not answer with a list of pages first. It answers with a person: a name, a job, a company, a place, a set of facts it is confident belong to one individual and not to someone else with a similar name. The same is true of an AI assistant. Before it can say anything sensible about you, it has to decide which Dennis you are.
That decision rests on entities. An entity is a distinct, named thing: a person, a company, a school, a stadium, an event, an award. Entities have stable identities. Pages about them change, move and disappear. The entity stays.
An entity graph is the map of those entities and the relationships between them. Companies keep enormous graphs of the whole world. This article is about a much smaller one: mine. It covers one person, the people he has met and worked with, the companies he has worked for, the places he has lived, the schools he went to, the events he was part of and the awards on his shelf. It is published on this site, in the open, so that people can explore it and machines can read it.
One hub, and everything connects to it
My graph has one center. Every other entity connects to it, and many connect to each other as well. The former prime minister connects to the organization he now leads. The hockey club connects to the town, the town to the school, the school to the boy who played there. Read together, those links are a biography in a form a computer can follow.
The entities on this site fall into nine groups:
- Family: the members of my family.
- Notable connections: people photographed with me whose work is public, in politics, sport and culture.
- Professional network: friends, clients and peers I work with, including a large part of the search industry.
- Companies: employers from earlier in my career and clients I work for now.
- Ventures: the sites and businesses I run myself, from TNC Visibility to Architectural Atlas.
- Places: Naarden, where I was born, Bussum, Wassenaar, and the California towns I lived in: San Francisco, Pleasanton and San Jose.
- Education: St Vitus College in Bussum and the University of Amsterdam.
- Events: matches, tournaments and gatherings where photographs and records exist, from a Copa América match in 2016 to Oktoberfest in Munich.
- Awards: recognition given to teams I was part of, recorded by the awarding body at the time.
One page cannot hold all of that as prose. A graph can. That is why the map on this site is interactive. You can zoom out and see the shape of a life, or zoom in on a single node and read what connects it to everything else.
Evidence first, and no claim stronger than its evidence
A graph built on photographs has an obvious temptation built into it. Stand next to enough well-known people, publish the pictures, and a careless reader might conclude that you are more connected, more endorsed and more important than you are. I do not want that graph. It would be false, and false graphs fall apart the first time anyone checks them.
So this site works from a ladder. Each rung is a stronger claim, and each rung needs stronger evidence than the one below it.
| Level | What the page may say | Evidence required |
|---|---|---|
| 1. Co-present | Dennis with X at Y | One original photograph, with the setting identified. |
| 2. Conversation | Dennis spoke with X about Z | A first-hand account of the conversation, written by Dennis. |
| 3. Collaboration | Dennis worked with X on Y | The work itself: a project, a talk, an article, a recording. |
| 4. Ongoing tie | Dennis and X know each other | A relationship both sides would recognize, stated in plain words. |
| 5. Endorsement | X said this about Dennis | A direct, attributed statement with a source. Never inferred. |
Most photographs on this site sit at level 1, and the page says so. A photograph of two people is honest evidence of one thing: they were in the same place, at the same moment, and both agreed to be in the picture. That is worth publishing. It is also all it is worth, and the caption, the story and the code underneath the page all stop there.
Where the evidence is stronger, the page says more. A panel I spoke on has a program. A project I worked on has an outcome. An award has a name engraved on it. Those edges carry real weight in the graph because someone else recorded them at the time, for their own reasons, long before this website existed.
The people in the photographs
Two encounters open the public graph. They were chosen because they test it in different directions: one in public life, one in sport and civil rights.
Mark Rutte
Mark Rutte was Prime Minister of the Netherlands and is now Secretary General of NATO. In the photograph he has a hand on my shoulder and we are both laughing. It is a warm picture, and it would be easy to let it imply a closeness it cannot prove. The page for this encounter therefore does a plain job. It names the man, shows the photograph, and carries my first-hand account of where we were and how the moment came about. Until that account is written and checked, the connection sits at level 1 of the ladder: co-present, photographed together, nothing more claimed.
Colin Kaepernick
Colin Kaepernick was quarterback of the San Francisco 49ers and became one of the most recognizable activists in sport for his protest against racial injustice. Our photograph was taken outdoors, both of us in suits. I lived in the Bay Area and worked in American sport during the years his story unfolded, which is the honest context for the picture. The encounter page follows the same rule as the Rutte page: the photograph, the setting as I remember and can document it, and no sentence that reaches past that.
Two more confirmed photographs wait in reserve. One is a selfie with Shaquille O'Neal, who towers over me in the frame. The other is with Carlos Sainz, the Formula 1 driver, in his Ferrari race suit in a Ferrari hospitality setting. Both men are identified with confidence. Both photographs stay off the public site for now, by choice. A graph you build in stages, releasing each part when its record is complete, is worth more than a wall of famous faces published in one go.
A further set of photographs is held back for now, from my years at Fanatics, where athletes passed through events constantly. Every identity in them has since been confirmed to the standard this site sets. They join the graph in stages, when each occasion is documented. Naming the wrong person on a public page is the fastest way to make every other name on the site worth less, so nothing goes up until the record behind it is complete.
Places and events are entities too
A life leaves place-shaped evidence as reliably as it leaves people. The photographs from my years in the United States and my life in the Netherlands give the graph a geography, and geography is hard to fake consistently across thirty photographs.
The Binnenhof appears twice in my photographs, once across the Hofvijver toward the Torentje and once inside the Ridderzaal courtyard. It is a place entity with its own weight: parliaments sit there, and it connects the graph to Dutch public life without a single claim about me. Levi's Stadium connects in the other direction. I stood on that field in a Fanatics cap, in the home stadium of the 49ers, the team Colin Kaepernick played for. The stadium, the team, the employer and the quarterback form a small cluster of nodes that confirm each other.
Other places in the set do quieter work. Hoover Dam, the Grand Canyon, Yosemite and Las Vegas belong to family years in California. One World Trade Center, the New York Stock Exchange and the Brooklyn Bridge belong to New York trips. The Allianz Arena and an Oktoberfest tent belong to Munich. Marina Bay in Singapore, with the ArtScience Museum across the water, belongs to work travel. Muiderslot belongs to home. Each photograph is dated evidence of a person in a place, and places are the nodes search engines are most confident about, because the whole world agrees on where they are.
Work and awards carry the strongest edges
If the photographs are the visible part of this graph, the work is the load-bearing part. My career runs through Bitdefender, where I was VP Marketing, and through PayPal, eBay, Airbnb and Fanatics. My work now runs through TNC Visibility, my consultancy, and through clients and ventures of my own: Fan Signal Desk, Jersey Grail, ShopTwits, Black Coffee, Tulip Magazine and Architectural Atlas, among others. Every one of those organizations has its own public record, kept by other people. Edges to them are strong because I did not write either end of the record.
The clearest example sits on a shelf. In 2018 the Fanatics SEO team won Best In-House Team at the US Search Awards, and I have the trophy in my hands in the photograph above, with the award name, the year, the company and the team legible on it. That single object connects five entities at once: a person, a team, a company, an awards body and a year. No caption has to argue for any of it.
The professional network works the same way at a slower pace. My friends and peers in search, the people I have shared stages, panels, podcasts and projects with for years, are the part of this graph with the most level 3 evidence behind it: actual joint work. A conference program that lists two speakers is a published record. An interview that names its guest is a published record. Those pages live on other people's sites, which is exactly why they count.
Every relationship is stated twice
A person reads a page. A machine reads the page and the structured data underneath it. On this site both readings come from one record, so they cannot drift apart. The record holds the names, the photograph, its caption and alt text, the event details when they are verified, and the one sentence that states the relationship at the right level of the ladder. The visible page and the code are both generated from that record.
The code is JSON-LD, the format schema.org defines and search engines read. Three patterns do most of the work. First, I have one permanent Person identifier on this domain, and every page on the site refers to that same identifier instead of describing me from scratch. Second, each photograph is published as an ImageObject that names the people in it, so the image itself carries its context wherever it is found. Third, an event becomes a node only when its name, date and place are verified. If they are not verified, the node is left out and the page says only what is known.
In shortened form, an encounter page describes itself to a machine like this:
{
"@type": "ImageObject",
"caption": "Dennis Goedegebuure with Mark Rutte",
"about": [
{ "@id": "https://dennisgoedegebuure.com/#dennis" },
{ "@type": "Person", "name": "Mark Rutte",
"jobTitle": "Secretary General of NATO" }
]
}
Two details in that pattern matter more than the rest. The sameAs property points only at pages that identify the same person, never at a different person, so it can link my profiles together but can never weld me to Mark Rutte. And the knows property, which schema.org provides for people who genuinely know each other, stays unused on photograph pages. Co-presence is expressed through the photograph and the event, which is what the evidence shows.
Corroboration is what turns a claim into a record
Everything above is first-party. I wrote it, on my own site, about myself. Search engines and AI systems treat first-party claims the way a careful reader does: as a starting point, to be checked against what the rest of the web says.
That check is the outer layer of the graph, and it is built slowly. Conference sites that listed me as a speaker. Employer and client pages that named me. Interviews, podcast show notes and guest articles that used my full name and linked back here. Peers who cite a piece of work because it helped them. None of that can be declared into existence with markup. It accumulates when the work is real and the identity details are consistent everywhere: same full name, same short description, same canonical site. Consistency is unglamorous and it is most of the job.
There is a shortcut version of this layer and I am not using it. Sites can swap profile pages, manufacture reciprocal links and pad each other's graphs with friendly claims. Those patterns are easy to spot, they age badly, and they poison the one asset this whole project rests on, which is that everything on this site checks out.
What an entity graph cannot do
It is worth ending the technical part of this article with the limits, because the limits are the reason the rest is believable.
- There is no submission route. No website can upload a graph, or a vector database, into Google, Bing, ChatGPT or any other platform and receive recognition in return. Platforms crawl, read and decide for themselves.
- There is no guaranteed result. Good structure improves the odds that a system identifies me correctly and cites the right pages. It guarantees no knowledge panel, no ranking and no citation.
- There is no borrowed authority. A photograph next to a NATO Secretary General adds a node and an honest edge to my graph. It adds nothing to my expertise, and this site never writes as if it does.
- There is no substitute for the work. The strongest parts of the graph are the jobs, the award and the joint projects, because other people recorded them. The graph organizes a career. It cannot stand in for one.
Building mine in public
This site is being rebuilt in the open, and the graph is part of that rebuild. It grows in a fixed order. The Rutte and Kaepernick encounters come first, as pilots, and their pages are finished only when the first-hand accounts, dates and photo rights are on record. The professional cluster follows, because its evidence is the strongest. The back-pocket photographs, Shaquille O'Neal and Carlos Sainz among them, join when I choose to release them and their records are complete. Family photographs stay in the graph as family nodes, including my dog in the snow, because a personal graph that only contains useful people would not be a graph of a person at all.
If you work in search or build for the web, the method is the portable part. Pick one canonical identifier for yourself and use it everywhere. Publish your evidence with names, dates and captions a stranger can verify. Claim each relationship at the level its evidence supports, in words and in code that match. Then do work other people want to record, and let the outer layer of the graph grow at the speed of that work. The map on this site is what that looks like for one person, kept honestly, one verified node at a time.
Appendix: photo index and publication status
Every photograph in this article is listed below with the entity it documents and its status. Photographs described in the text but not reproduced here are listed as well.
| Photograph | Entity | Status |
|---|---|---|
| Dennis with Mark Rutte | Mark Rutte (person) | Shown. Public pilot. Date and venue pending. |
| Dennis with Colin Kaepernick | Colin Kaepernick (person) | Shown. Public pilot. Date and venue pending. |
| Binnenhof across the Hofvijver | Binnenhof, The Hague (place) | Shown. |
| MetLife Stadium, Copa América 2016 | MetLife Stadium and Copa América Centenario 2016 (place and event) | Shown. |
| Hoover Dam | Hoover Dam (place) | Shown. |
| El Capitan, Yosemite | Yosemite National Park (place) | Shown. |
| Marina Bay, Singapore | Marina Bay Sands, Singapore (place) | Shown. |
| US Search Awards 2018 trophy | US Search Awards 2018, Best In-House Team, Fanatics SEO team (award) | Shown. |
| Dennis with the family dog in the snow | Auggie Moon (family) | Shown. |
| Dennis with Shaquille O'Neal | Shaquille O'Neal (person) | Described only. Confirmed, held in reserve. |
| Dennis with Carlos Sainz | Carlos Sainz (person) | Described only. Confirmed, held in reserve. |
| On the field at Levi's Stadium | Levi's Stadium (place) | Described only. |
| Six further photographs from events | Identities confirmed by Dennis | Held in reserve. Released in stages, when each occasion is documented. |
Before any encounter page goes live on dennisgoedegebuure.com, its record must carry the date and place of the encounter, a first-hand account, the photographer and rights status for the photograph, and one relationship sentence that matches the ladder in this article.
Sources and further reading
- Entity Graph Plan, dennisgoedegebuure.com project files: the framework this article puts into practice, including the schema patterns and the phased rollout.
- Photo intake, 15 October 2026: the catalog of the 30 photographs supplied for the graph, with confirmed, reserve and withheld items marked as such.
- Google Search Central, ProfilePage structured data and general structured data guidelines: markup must be visible, current and not misleading.
- Google Search Central, image SEO best practices: descriptive file names, alt text, captions and page context.
- NATO, biography of Mark Rutte, and Robert F. Kennedy Human Rights, profile of Colin Kaepernick: the identity sources used for the two pilot connections.