The scheme attribute was used on <meta> elements to tell browsers and tools how to interpret the content value paired with a name. For example, scheme="ISBN" could qualify a book identifier, and scheme="DCTERMS.W3CDTF" could mark a Dublin Core date format. In HTML5 the attribute is obsolete and deprecated. It is not related to URI schemes such as https:// in links, and it was never valid on <input> fields.
What You’ll Learn
01
<meta> Only
Legacy metadata.
02
Deprecated
Obsolete in HTML5.
03
name + content
Qualifies value.
04
Not URI scheme
Not http/https.
05
JSON-LD
Modern replacement.
06
Legacy code
Read old markup.
Fundamentals
Purpose of scheme
The original purpose of the scheme attribute was to provide extra context for machine-readable metadata. When a <meta> element had a name and content, the scheme value named the vocabulary, format, or classification system used for content—such as ISBN, a date format, or a taxonomy code.
HTML5 removed support for processing this attribute. User agents are encouraged to ignore scheme and treat each name/content pair on its own. You may still encounter it in older government, library, or Dublin Core documents, which is why it belongs in an attributes reference.
⚠️
Not for URL protocols
The HTML scheme attribute does not set whether a link uses http, https, or mailto:. Those are URI schemes inside URLs. Some outdated tutorials incorrectly placed scheme="https" on <input> elements—that markup was never standard HTML.
Foundation
📝 Syntax
Legacy syntax on a <meta> element (shown for recognition only—do not use in new projects):
Modern equivalent (encode the format in the name or use structured data):
meta-modern.html
<!-- One scheme per field: use a specific name --><metaname="book-isbn"content="978-0134685991"><!-- Or JSON-LD for rich metadata --><scripttype="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Book",
"isbn": "978-0134685991"
}
</script>
Syntax Rules
Historically valid on <meta> elements with name and content.
Value was a free-form string naming a format, vocabulary, or URI describing the format.
Worked together with name to qualify how content should be parsed.
Obsolete in HTML5—validators flag it; omit it in new code.
Not valid on <input>, <a>, or other interactive elements.
Prefer JSON-LD, RDFa, or microdata for structured metadata today.
Reference
💎 Values
The scheme attribute accepted a string naming the interpretation system for content. Common legacy values included:
ISBN — International Standard Book Number for publication identifiers.
DCTERMS.W3CDTF — W3C date/time format used with Dublin Core metadata.
DCTERMS.URI — URI identifier scheme in Dublin Core profiles.
DCTERMS.IMT — Internet Media Type (MIME) in Dublin Core.
LGCL, ORLY — Example taxonomy codes in HTML5 spec illustrations.
A URI — Some profiles used a URL pointing to documentation for the format.
Together, the three attributes told tools: “field identifier uses the ISBN format and its value is 978-0134685991.” HTML5 recommends encoding that meaning without scheme.
Hands-On
Examples Gallery
Legacy scheme on <meta>, the modern replacement, and reading the attribute with JavaScript in old code.
👀 Live Preview
Read a legacy scheme value from a <meta> element (for demonstration only):
Click to inject a demo <meta name="identifier" scheme="ISBN"> into the document head and read meta.scheme.
Click the button to read the deprecated attribute in DevTools.
Example — Legacy Meta with scheme
Historical markup you may encounter in older documents:
index.html
<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><metaname="identifier"scheme="ISBN"content="978-0134685991"><metaname="DC.date"scheme="DCTERMS.W3CDTF"content="2025-08-22"><title>Legacy metadata</title></head><body><h1>Document with deprecated scheme meta</h1></body></html>
Browsers render the page normally. The scheme attribute is ignored for metadata processing but may still appear in the DOM for legacy recognition.
How It Works
In the past, tools could combine name and scheme to understand the format of content. HTML5 deprecated this pattern in favor of clearer field names or structured data.
Example — Modern Replacement
Write new metadata without scheme:
meta-modern.html
<head><!-- Explicit field name instead of scheme --><metaname="book-isbn"content="978-0134685991"><!-- JSON-LD for search engines --><scripttype="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Book",
"name": "Effective Java",
"isbn": "978-0134685991",
"datePublished": "2017-12-17"
}
</script></head>
Use descriptive name values or JSON-LD. Search engines and validators prefer structured data over deprecated scheme meta tags.
How It Works
Instead of qualifying content with scheme, encode the meaning in the field name (book-isbn) or use schema.org JSON-LD for rich, typed metadata.
Dynamic Values with JavaScript
Legacy code could read or set scheme on meta elements:
dynamic-scheme.html
<metaid="legacyMeta"name="identifier"content="978-0134685991"><script>
var meta = document.getElementById("legacyMeta");
meta.setAttribute("scheme", "ISBN"); // deprecated — avoid in new code
console.log(meta.scheme); // "ISBN" (reflected, but ignored by HTML5)
</script>
HTMLMetaElement.scheme reflects the attribute in the DOM, but setting it has no effect on how HTML5 processes metadata. Use JSON-LD or explicit meta names instead.
How It Works
The old reference incorrectly showed setAttribute("scheme", "ftp") on an <input>. The real API is HTMLMetaElement.scheme on <meta> elements only.
A11y
♿ Accessibility
Meta tags are not visible UI — The scheme attribute never affected what users see or hear on the page.
Do not use meta for critical user info — Put accessible labels and descriptions in visible HTML, not hidden metadata.
Structured data complements a11y — JSON-LD helps search engines; use proper headings, labels, and ARIA for users.
Remove deprecated attributes during audits — Cleaner head markup is easier for maintainers and validators.
Language belongs in lang — Document language uses <html lang="...">, not scheme on meta.
🧠 How scheme Worked (Legacy)
1
Author adds meta with scheme
name, scheme, and content together.
Legacy
2
Tools read format hint
ISBN, date format, taxonomy.
History
3
HTML5 makes it obsolete
Browsers ignore scheme.
Standard
=
📄
Use JSON-LD or clear names
Omit scheme in new code.
Compatibility
Browser Support
The scheme attribute is obsolete. Browsers may reflect it in the DOM via HTMLMetaElement.scheme, but they do not use it when processing page metadata. It must not appear in new HTML5 documents.
⚠️ Obsolete · Ignored
Deprecated since HTML5
Attribute is parseable in legacy markup but has no metadata effect in modern browsers.
0%Recommended use
Google ChromeDOM reflection only
Obsolete
Mozilla FirefoxIgnored for metadata
Obsolete
Apple SafariIgnored
Obsolete
Microsoft EdgeIgnored
Obsolete
scheme on <meta>Do not use
Bottom line: Recognize it in legacy Dublin Core or library markup; replace with JSON-LD or explicit meta names in new projects.
Pro Tips
💡 Best Practices
✅ Do
Use JSON-LD or Open Graph for rich metadata in new sites
Choose descriptive name values when plain meta is enough
Remove scheme when refactoring legacy head sections
Validate pages with an HTML5 validator after cleanup
Learn Dublin Core history if you maintain government or library sites
❌ Don’t
Add scheme to new <meta> tags
Put scheme="https" on <input> elements
Confuse HTML scheme with URI schemes in URLs
Rely on scheme for SEO or structured data
Follow outdated tutorials that describe scheme as a form attribute
Wrap Up
Conclusion
The scheme attribute is a legacy tool for qualifying the format of <meta>content values. It is obsolete in HTML5 and should not be used in new documents.
For modern metadata, use explicit field names, encode formats inside content, or adopt JSON-LD and schema.org. Understanding the difference between HTML scheme and URI schemes like https:// keeps your markup accurate when reading or migrating older pages.
Five truths every developer should know about scheme
Bookmark these before editing legacy meta tags.
5
Core concepts
⚠️01
Deprecated
Obsolete in HTML5
Status
📄02
<meta>
Legacy use only
Element
🔎03
Qualifies content
ISBN, dates, etc.
Purpose
🔗04
Not URL scheme
Not http/https
Compare
📊05
Use JSON-LD
Modern metadata
Replace
❓ Frequently Asked Questions
A deprecated attribute on <meta> that named the format or vocabulary for the content value (e.g. scheme="ISBN"). HTML5 made it obsolete.
No. scheme was never valid on <input>. Some outdated tutorials incorrectly showed scheme="https" on form fields—that markup is not standard HTML.
No. URI schemes like https:// are part of a URL string. The HTML scheme attribute qualified metadata values on <meta> elements.
Use one meta name per field, encode the format in content, or add JSON-LD structured data for search engines and tools.
Dublin Core and library metadata profiles used scheme heavily before HTML5. Those documents were often never updated after the attribute was deprecated.
Yes. HTMLMetaElement.scheme reflects the attribute in the DOM, but browsers ignore it for metadata processing. Do not set it in new pages.