Open Graph schema
Built-in id: ogp:article:1.0
Published at: https://hawkeyexl.github.io/manni/schemas/ogp/1.0.json
The Open Graph protocol basic properties plus the article
object type. This is the built-in that checks something no build tool
checks. Nothing fails when og:image is missing. The page builds and deploys
perfectly, then renders as a grey box everywhere it is shared.
It is one of the metadata vocabularies, which describe a page to something outside your docs site.
Use it
Section titled “Use it”Opt in for the pages you publish with social cards. Scope it with an override when only part of the site carries Open Graph tags:
meta: overrides: - files: "site/**/*.html" schemas: - ogp:article:1.0 - x:cards:1.0To try it once without config:
manni meta validate site/ -s ogp:article:1.0In HTML these live on <meta property="…">. manni meta reads property alongside
name, so an ordinary HTML page needs no special handling:
<meta property="og:title" content="Validate document metadata in CI" /><meta property="og:type" content="article" /><meta property="og:url" content="https://example.com/docs/ci" /><meta property="og:image" content="https://example.com/img/card.png" />Fields
Section titled “Fields”| Property | Type | Notes |
|---|---|---|
og:title | string | Required. Non-empty. |
og:type | string | Required. Not enumerated, because the protocol allows namespaced and vendor types. |
og:url | URI | Required. Absolute. A site-root path is not a canonical URL. |
og:image | URI | array | Required. |
og:description | string | One or two sentences. |
og:site_name | string | |
og:determiner | enum | a, an, the, "", auto. |
og:locale | string | language_TERRITORY, such as en_US. |
og:locale:alternate | string | array | Same form. |
og:audio, og:video | URI | array | |
article:published_time | date-time | ISO 8601. |
article:modified_time | date-time | ISO 8601. |
article:expiration_time | date-time | ISO 8601. |
article:author | string | array | |
article:section | string | |
article:tag | string | array |
Additional properties
Section titled “Additional properties”Allowed. A page may carry other og:* properties, other article:*
properties, and any key of its own.
Example
Section titled “Example”In front matter they are ordinary keys, quoted because they contain a colon:
---"og:title": Validate document metadata in CI"og:type": article---A page that passes carries all four required properties:
---"og:title": Validate document metadata in CI"og:type": article"og:url": https://example.com/docs/ci"og:image": https://example.com/img/card.png"og:locale": en_US---A common mistake
Section titled “A common mistake”✗ docs/ci.md /og:locale must match pattern "^[a-z]{2,3}(_[A-Z]{2})?$" (line 6) [ogp:article:1.0]Its companion for X is x:cards:1.0.