agentic‑readiness docs
/
Build one › Run a scan ›

DocsTrustEditorial metadata

Editorial metadata

Author, dates and provenance behind the content.

adoption Web baselinetrend ► flatchecked on every pagechecks 4verified 2026-08-12
Set up Editorial metadata on your site How to say who wrote a page and when, in the form an agent can actually attribute.
Free Add editorial provenance

Why an agent cares

Provenance is what lets an agent decide whether to trust and cite a page, and JSON-LD is the only unambiguous place to state it. This is Lumar's editorial-trust profile, not Google rich-result validity: Google states Article has no required properties.

Adoption

Web baseline. Standard equipment on the web. Its absence is the exception rather than its presence. For this one in particular, the JSON-LD syntax is everywhere; the article types that carry provenance are niche.

Direction of travel: ► flat, as at .

JSON-LD is on 41% of pages but Article-type markup on roughly 0.18% (Web Almanac 2024), and no vendor has confirmed that author markup feeds AI citations.

What we check

Absence is never a finding. Every check below runs only once editorialMetadataPresent is true, so a site that has not adopted this is not assessed on it and appears in no report. 4 of these 4 can fail it. In a Lumar crawl these land on the page's own row.
CheckSeverityRaisesOn whose authority
editorialMissingAuthormediumusabilityLumar readiness profile
editorialMissingPublishermediumusabilityLumar readiness profile
editorialMissingDatePublishedmediumusabilityLumar readiness profile
editorialInvalidDatemediumusabilitySchema.org profile

Examples

Both of these are fixtures the test suite runs through the real collector, not snippets written for a document: the first is a shape we score as valid, the second is one we flag.

correcthtmltest/e2e/test-pages/trust/correct.html (excerpt)
<!-- editorialMetadataPresent + correct: a NewsArticle in an @graph whose author and publisher are
         @id references into the graph (Yoast style) — the extractor resolves them to the Person /
         Organization nodes (each with a name), and both dates are valid ISO 8601. -->
    <script type="application/ld+json">
      {
        "@context": "https://schema.org",
        "@graph": [
          { "@type": "WebPage", "@id": "https://example.com/trust/correct.html#webpage", "url": "https://example.com/trust/correct.html" },
          {
            "@type": "NewsArticle",
            "@id": "https://example.com/trust/correct.html#article",
            "headline": "How agent-readiness works",
            "author": { "@id": "https://example.com/#/schema/person/ada" },
            "publisher": { "@id": "https://example.com/#organization" },
            "datePublished": "2026-06-01T09:00:00Z",
            "dateModified": "2026-06-15T12:00:00Z"
          },
          { "@type": "Person", "@id": "https://example.com/#/schema/person/ada", "name": "Ada Lovelace", "url": "https://example.com/authors/ada" },
          {
            "@type": "Organization",
            "@id": "https://example.com/#organization",
            "name": "Example",
            "logo": { "@type": "ImageObject", "url": "https://example.com/logo.png" }
          }
        ]
      }
    </script>
present but wronghtmltest/e2e/test-pages/trust/issues.html (excerpt)
<!-- editorialMetadataPresent: yes (a NewsArticle is declared).
         editorialMissingAuthor + editorialMissingPublisher: the Article names neither.
         editorialInvalidDate: datePublished is present but not ISO 8601 ("yesterday"). -->
    <script type="application/ld+json">
      {
        "@context": "https://schema.org",
        "@type": "NewsArticle",
        "headline": "How agent-readiness works",
        "datePublished": "yesterday"
      }
    </script>

Specifications

DocumentRevisionKind
Schema.org authorv30.0specification
Google Search: Article structured data (states no required properties)livingvendor profile

Last re-read against the published documents: .