Signatur
Beschreibung
Die Eigenschaft HTMLMetaElement.scheme spiegelt das HTML-Attribut scheme eines <meta>-Elements wider. Sie gibt einen Hinweis darauf, wie der Wert im content-Attribut zu interpretieren ist – etwa "ISBN" für eine Buchnummer oder "W3CDTF" für ein Datumsformat, wie es in Dublin-Core-Metadaten üblich war.
Das Attribut stammt aus HTML 4.01 und ist in HTML5 bzw. dem HTML Living Standard obsolet. Browser werten es nicht aus; es hat also keinerlei Einfluss auf Darstellung oder Verhalten der Seite. Der Wert ist rein informativ für Programme, die Metadaten auslesen (z. B. Crawler oder Bibliothekssysteme).
Sinnvoll ist die Eigenschaft heute fast nur noch beim Auslesen alter Dokumente oder bei Migrationsskripten, die Legacy-Metadaten in moderne Formate überführen. Für neue Inhalte sollte das Format stattdessen direkt im content-Wert kodiert oder auf strukturierte Daten (JSON-LD, Microdata, RDFa) ausgewichen werden.
Rückgabewert
scheme-Attributs. Ist das Attribut nicht gesetzt, wird ein leerer String "" zurückgegeben. In Browsern, die die Eigenschaft entfernt haben, ist der Wert undefined.Beispiele
Schema eines bestehenden Meta-Elements auslesen
// HTML: <meta name="identifier" content="978-3-16-148410-0" scheme="ISBN">
const meta = document.querySelector('meta[name="identifier"]');
// Fallback auf getAttribute, falls die Eigenschaft nicht existiert
const scheme = meta.scheme ?? meta.getAttribute('scheme');
console.log(`${meta.content} (Schema: ${scheme})`);
Meta-Element mit Schema dynamisch erzeugen
const meta = document.createElement('meta');
meta.name = 'DC.date';
meta.content = '2024-05-17';
// Robust setzen – funktioniert auch ohne IDL-Eigenschaft
meta.setAttribute('scheme', 'W3CDTF');
document.head.append(meta);
console.log(meta.outerHTML);
Legacy-Metadaten für eine Migration sammeln
const legacy = [...document.querySelectorAll('meta[scheme]')].map((m) => ({
name: m.name,
content: m.content,
scheme: m.getAttribute('scheme')
}));
console.table(legacy);
// Kann anschließend z. B. in JSON-LD umgewandelt werden
// Wichtig · Fallstricke
- Obsolet: Das Attribut
schemeist in HTML5 nicht mehr gültig; HTML-Validatoren melden einen Fehler. Nicht in neuen Projekten verwenden. - Keine Wirkung: Browser interpretieren den Wert nicht – das Setzen ändert nichts am Verhalten der Seite.
- Kompatibilität: Die IDL-Eigenschaft ist in modernen Browsern teils noch vorhanden (Chrome, Safari), in Firefox jedoch nicht zuverlässig. Für portablen Code
getAttribute('scheme')bzw.setAttribute('scheme', …)verwenden. - Alternative: Für maschinenlesbare Metadaten mit Typangabe strukturierte Daten wie JSON-LD (
<script type="application/ld+json">) oder Microdata nutzen.