page-meta
Document metadata display as a styled definition list with automatic JSON-LD structured data injection.
Overview
The <page-meta> component displays document metadata in a structured, styled block. It uses a <dl> (definition list) for semantically correct key-value pairs and automatically generates Schema.org JSON-LD structured data from the visible content.
Without JavaScript, the <dl> renders as a readable metadata block. With JS, the component injects a <script type="application/ld+json"> for search engines and tools.
Variants
Compact
The .compact class switches from a grid layout to an inline flow, suitable for use in article headers or footers.
With Version History
Use a <details> element inside a <dd> for collapsible revision history. No JavaScript needed for the toggle.
JSON-LD Output
On connectedCallback, the component reads the <dl> and maps known keys to Schema.org properties. The following keys are recognized:
<dt> Text | Schema.org Property |
|---|---|
| Author | author (Person) |
| Published | datePublished |
| Updated | dateModified |
| Version | version |
| Keywords | keywords (comma-separated) |
| Trust | creditText |
Relationship to <page-info>
<page-meta> is a composable sub-pattern of the richer <page-info> component. Use <page-meta> standalone for simple metadata display, or embed it within a <page-info> disclosure panel for the full provenance experience.
Accessibility
- Uses
<dl>for semantic key-value metadata — screen readers announce "Author: T. Powell" naturally - The
<address>element wraps author names to provide contact context <time>elements include machine-readabledatetimeattributes- JSON-LD injection is invisible to users and assistive technology