Person
Person markup covers anyone people might actually search for by name: a founder, an author, a team member, a historical figure. This example shows the properties you'll need most of the time, plus a few nice-to-haves.
Full example of schema.org/Person json-ld markup
The markup is verified as valid with Rich Results Test from Google.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@id": "https://janexoo.com#person",
"@type": "Person",
"name": "Jane Xoo",
"jobTitle": "Doctor",
"gender": "https://schema.org/Female",
"url": "https://www.janexoo.com",
"description": "Born in 1921 pediatrician Jane Xoo redefined how we view modern healthcare for children.",
"alternateName": "Janey",
"additionalName": "Anne",
"givenName": "Jane",
"familyName": "Xoo",
"honorificPrefix": "Dr.",
"honorificSuffix": "MD",
"nationality": "Denmark",
"mainEntityOfPage": "https://nationalgeographic.com/profile/JaneXoo",
"sameAs": "https://wikipedia.org/Famous-Person/Jane-Xoo",
"image": "https://janexoo.com/images/jane-xoo-portrait-1945.jpg",
"birthDate": "1921",
"birthPlace": "Kopenhagen, Denmark",
"deathDate": "1985",
"deathPlace": "Kopenhagen, Denmark",
"worksFor": {
"@type": "Organization",
"name": "Edholm Foundation DK",
"url": "http://www.edholdenmark.dk/",
"address": {
"@type": "PostalAddress",
"addressLocality": "Kopenhagen",
"postalCode": "11826",
"streetAddress": "Vejleg 45"
}
},
"sponsor": {
"@type": "Organization",
"name": "Royal Danish Healthcare Fund"
},
"brand": "Medical Packs DK",
"affiliation": "Copenhagen Baristas",
"colleague": [
"http://www.copenhagen.edu/professors/alice-jones.html",
"http://www.copenhagen.edu/professors/janick-olsen.html"
],
"parent": [
"Johannes Xoo",
"Amanda Xoo"
],
"spouse": "Anders Andersson",
"sibling": "Dima Xoo",
"memberOf": "https://royalgolf.dk/",
"knows": "Margrethe II of Denmark",
"owns": "Apocathery of Denmark",
"alumniOf": {
"@id": "https://roymed.dk#organization"
},
"performerIn": {
"@type": "Event",
"name": "The Royal Institute of Medicine Annual Opera",
"location": {
"@type": "Place",
"name": "Kopenhagen Operahouse",
"address": {
"@type": "PostalAddress",
"addressLocality": "Kopenhagen",
"postalCode": "10209",
"streetAddress": "7 Operavej"
}
},
"offers": {
"@type": "Offer",
"name": "Commemorative Opera Ticket from 1945",
"availability": "https://schema.org/InStock",
"price": "995",
"priceCurrency": "DKK",
"validFrom": "2017-09-20",
"url": "https://janexoo.com/shop/commemorative/opera-ticket-1945-mint-condition"
},
"startDate": "1945-02-18",
"endDate": "1945-08-01",
"description": "A comical opera in 4 acts depicting life in the Danish countryside",
"image": "https://janexoo.com/archives/opera-opening-poster-1945.jpg",
"performer": [
"Austin Svenson",
"Karima Anara"
]
},
"award": "Doctor of the Year award",
"seeks": "Fame"
}
</script>Rich result preview
Approximate preview of what Google may render from this markup. Hover any element inside the card to see which JSON-LD path produced it. Google decides whether to show any rich result. Markup makes you eligible, not guaranteed.
Jane Xoo
Born in 1921 pediatrician Jane Xoo redefined how we view modern healthcare for children.
Minimal valid version
The smallest markup that still produces a valid Person entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Person",
"name": "Jane Xoo",
"url": "https://www.janexoo.com",
"image": "https://janexoo.com/images/jane-xoo-portrait-1945.jpg"
}
</script>Google rich results this unlocks
Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.
- Google docsProfile Page / Knowledge Panel enrichmentprimary
Common Person mistakes
Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.
- 01
Using a country name string for nationality
Wrong"nationality": "Denmark"Right"nationality": { "@type": "Country", "name": "Denmark" }schema.org expects nationality to reference a Country entity. A plain string validates but conveys less information to consumers that walk the graph, and Google's Knowledge Panel pipeline prefers the nested form.
- 02
sameAs as a single URL instead of an array
Wrong"sameAs": "https://wikipedia.org/wiki/Jane-Xoo"Right"sameAs": [ "https://wikipedia.org/wiki/Jane-Xoo", "https://linkedin.com/in/jane-xoo", "https://twitter.com/janexoo" ]sameAs is most useful when it points to multiple authoritative profiles. A single URL validates, but multiple sameAs entries are how search engines merge facts about a person across the web into one Knowledge Graph node.
- 03
Flattening worksFor into a string
Wrong"worksFor": "Edholm Foundation DK"Right"worksFor": { "@type": "Organization", "name": "Edholm Foundation DK", "url": "http://www.edholdenmark.dk/" }A string works but throws away the ability to link to the organization's own markup, website, and address. Prefer the nested Organization so the graph actually connects.
Schema properties in this example
Also mentioned in 123 other examples
Person also appears in AchieveAction, AnalysisNewsArticle, Answer, AssessAction, BackgroundNewsArticle, BoatReservation, BookSeries, BusReservation, and 115 more. See the full Person schema page for every reference.
About the example data
It follows the schema.org/Person vocabulary. The character is Jane Xoo, a fictional Danish pediatrician born 1921, who shows up across the whole Xoo universe. Article references her as the author of a 1945 medical paper. EducationalOrganization lists her as an alumna of the Royal Institute of Medicine. Recipe credits her for a hospital porridge formula. This entry is the anchor for all those @id cross-references.
Comments
Loading comments...