Skip to content

Page Metadata

Alexander Refsum Jensenius edited this page Sep 21, 2026 · 2 revisions

Most pages on mishmash.no carry an "About the page" block in the footer: when it was last edited and by whom, what licence applies, how sensitive the content is, where the data came from, whether AI was involved, and whether the text is a machine translation.

It is rendered by site/_includes/page-about.html from site/_data/page_about_defaults.yml and an optional page_about block in the page's own frontmatter.

The block exists because the site is meant to be honest about its own provenance. See Web Philosophy.

You usually do not need to do anything

Sensible defaults apply to every page, so a page with no page_about block still gets a complete footer.

The last-edited date and author come from the Git history. scripts/generate_page_git_meta.py runs during deployment, walks the history of every content file, and writes site/_data/page_git_meta.yml. Committing your change is what updates the page; there is no date to maintain by hand.

The licence defaults to CC BY 4.0, the privacy classification defaults to green, and the link back to the source file on GitHub is constructed automatically.

Add a page_about block only when something about your page differs from those defaults, most often because AI was involved, or because the page is a translation.

The fields

page_about:
  last_edited:
    date: 2026-08-18
    by: Full Name
  privacy: green
  data_sources: [manual, nva, orcid]
  ai_support:
    agent: Copilot
    model_name: Claude
    model_version: "Sonnet 4.6"
  translation:
    automatic: true
    source_url: /about/description/
    model: "Claude (Cursor)"
  copyright:
    label: "CC BY 4.0"
    url: https://creativecommons.org/licenses/by/4.0/deed.en
  note: "Anything that needs saying in prose."
Field Default When to set it
last_edited From Git history Only to override the automatic value, for instance when the meaningful edit happened elsewhere
privacy green When the page is not open information. See below
data_sources None shown When the content comes from somewhere identifiable
ai_support None shown Whenever AI drafted or substantially shaped the page
translation Automatic for everything under no/ On a translated page outside no/, or to name the source page and model
copyright CC BY 4.0 When a page carries different terms
note None Anything the structured fields do not cover

Privacy classification

The levels follow the University of Oslo's data classification, and page_about_defaults.yml links to their guide.

Level Meaning
green Open information. Almost everything on a public site
yellow Restricted. Internal working material
red Confidential

Anything above green does not belong on the public site at all. The internal work package pages exist for restricted material; see Work Package Pages.

Data sources

Recognised values are manual, nva, orcid and wikipedia. The labels and links come from page_about_defaults.yml; add new ones there rather than inventing values in a page.

Person profiles use this to show that most of their content is synced from the national research archive rather than typed by hand. See Directory.

Declaring AI assistance

page_about:
  ai_support:
    agent: Copilot
    model_name: Claude
    model_version: "Sonnet 4.6"

agent is the tool you used, such as Copilot or Cursor. model_name and model_version identify the model behind it. Quote the version, since values like 4.6 are otherwise read as numbers.

Declare it when AI drafted the page, translated it, or generated the reading-level variants. Do not bother for a completed sentence or a reformatted table.

Using GitHub Copilot covers the practice around this. The AI colophon aggregates the picture across the whole site, generated from the Git history by scripts/generate_ai_colophon_stats.py.

Translation

Everything under site/no/ is marked as automatically translated by a default in _config.yml. Set the block explicitly to name the source page and the model, or to declare that a page was translated by a human:

page_about:
  translation:
    automatic: false

Turning the block off

page_about: false

or hide_page_about: true. Either replaces the full block with the short site footer. Used for pages where the metadata makes no sense, such as the front page.

Related

Clone this wiki locally