# Schema Identity

> Structured data for EmDash: a connected schema.org graph for your site, the people behind your content and their credentials. By Monprez.

Source: https://emdashcmseverything.com/plugins/schema-identity/

- Category: schema
- Status: available
- Version: 1.0.0
- Price: Unknown
- Compatibility: Not stated in the public registry profile
- License: MIT
- Maintainer: Monprez
- Download: https://plugins.emdashcms.com/plugins/@monprez.se/schema-identity
- Repository: https://github.com/monprez/emdash-schema-identity
- Published: 2026-10-21

## Description

Schema Identity replaces EmDash's built-in JSON-LD with one connected schema.org graph on every page, with the most care spent on **who** is behind your content: the people and organisation, their credentials and expertise, and who wrote which article.

**What it publishes**

- The site as a Person, an Organization or both, with job title, profiles elsewhere (`sameAs`) and areas of expertise (`knowsAbout`). `worksFor` and `founder` are separate claims, because an employee is not a founder.
- Credentials (`hasCredential`) with issuing body, dates and a verification link, and organisation certifications (`hasCertification`). An expired credential drops out on its own the day after it expires (cached pages can take longer to catch up).
- Every credited byline as its own Person node. Role labels such as "Reviewed by" are mapped explicitly, never guessed.
- `WebSite`, `WebPage`, `BlogPosting`, the primary image, and breadcrumbs when your theme supplies them.

**Rules it follows:** relationships only where something confirms them, no invented data, and impossible dates refused rather than repaired.

Made by [Monprez](https://monprez.se/en/home/). Also available for WordPress as [Monprez Schema Identity](https://wordpress.org/plugins/monprez-schema-identity/).

## Installation

1. Install the plugin and approve its one permission, reading bylines. It makes no network requests and never changes your content.
2. **Identity**: choose a person, an organisation or both, fill in what is true, and link your own byline if you write on the site. Set the time zone that decides when a credential expires.
3. **Credentials**: add the site person's credentials and the organisation's certifications.
4. **People**: add job titles, expertise and credentials for each byline. Name, bio and website stay on the byline itself.
5. **Byline roles**: map any role labels your bylines use, such as "Reviewed by".

Then paste a published article into Google's Rich Results Test; the Identity page links to it.

Structured data should match what readers see. To show credentials on the page too, see [Show what you publish](https://github.com/monprez/emdash-schema-identity#show-what-you-publish) for the public route and a copyable author box.

Use one schema plugin at a time: only one can own the page's JSON-LD. Needs EmDash 1.2.0 or later. English-only for now, built for single-language sites.

## Security

Report security issues to plugins@monprez.se.

The plugin asks for one permission, `bylines:read`. It has no network access, no content writes and no media access. Its data stays in its own storage on your site.

One public, read-only route (`GET /_emdash/api/plugins/schema-identity/people`) lets themes show what the markup says about a person: their job title, expertise and current credentials, by the same rules as the markup. It answers for every existing byline, including people not yet credited on a published page, so only enter what you are happy to make public. Hidden, expired and not-yet-issued credentials, and data kept for deleted bylines, are never returned.

## Changelog

# Changelog

## 1.0.0

First public release. Schema Identity replaces EmDash's built-in JSON-LD with
one connected schema.org graph:

- Site identity as a Person, an Organization or both, with `worksFor` and
  `founder` as separate claims.
- Person credentials (`hasCredential`) and organisation certifications
  (`hasCertification`), with expiry handled per request and a Published switch.
- A Person node for every credited byline, with its own job title, expertise and
  credentials; role labels are mapped explicitly.
- `WebSite`, `WebPage`, `BlogPosting`, primary image and `BreadcrumbList`.
- Admin pages: Identity (with links for checking your markup), Credentials,
  People, Byline roles; an Expiring credentials dashboard widget.
- A public, read-only `people` route and an example author box for themes.
