Brand Rosetta Specification
Version 0.1 (Initial Proposal) · April 2026 · CC BY 4.0
What this document is
Brand Rosetta is a formal open-source vocabulary specification proposing an extension to schema.org JSON-LD for brand-level AI readiness. It defines a common vocabulary for encoding what AI systems need to understand a brand accurately — what it stands for, how it should be represented in conversation, when its products are the right recommendation, and what it can do on a consumer’s behalf.
Published by Nodal Strategy. Available for free implementation by any brand, developer, or agency under Creative Commons CC BY 4.0. This is an open-source contribution — not a commercial product.
Dual-layer standard
Brand Rosetta is a dual-layer standard. It defines a structured content schema for llms.txt — giving the site-level AI declaration a consistent, machine-optimised format — and a JSON-LD vocabulary extension for per-page structured data. The same rosetta: properties appear at both levels: in llms.txt at the brand and catalogue level, and in JSON-LD <head> tags at the individual product and service level.
Technical identity
| Standard name | Brand Rosetta |
| Created and maintained | Nodal Strategy |
| Version | 0.1 (Initial Proposal) |
| Prefix | rosetta: |
| Namespace URL | https://brandrosetta.org/vocab# |
| Spec URL | brandrosetta.org |
| GitHub | github.com/nodalstrategy/brand-rosetta |
| Domain | brandrosetta.org / brandrosetta.com |
| Licence | Creative Commons CC BY 4.0 |
Context declaration in JSON-LD
{
"@context": {
"@vocab": "https://schema.org/",
"rosetta": "https://brandrosetta.org/vocab#"
}
}Background and rationale
Schema.org provides a shared vocabulary for structured data covering entities, relationships, and actions. Founded by Google, Microsoft, Yahoo, and Yandex in 2011. Now deployed across over 45 million web domains.
Schema.org handles what a brand is. It does not handle how a brand should be understood, represented, or interacted with by AI systems in the queried era.
The gap: existing schema.org types — Product, Service, Organization — describe factual attributes. They do not encode brand voice and positioning intent, use case guidance for AI recommendation, reasons to believe product claims, conversational flow logic for AI interactions, or transactional readiness signals for AI agents.
Brand Rosetta proposes properties to fill that gap as a formal named extension to schema.org JSON-LD. The standard builds on three existing infrastructure layers:
- robots.txt — access permissions for crawlers. Brand Rosetta adds
rosetta:crawlerPolicyto declare AI crawler access policy explicitly. - llms.txt — site-level plain text declaration for LLM consumption. Brand Rosetta complements it with per-page structured data and defines a structured content schema for llms.txt itself.
- schema.org JSON-LD — structured data for entity understanding. Brand Rosetta extends it with brand intelligence properties that schema.org does not currently cover.
Applying Brand Rosetta to RAG systems
Brand Rosetta properties are not limited to passive web crawling contexts. When implemented in content that feeds a retrieval-augmented generation (RAG) system, the properties travel with the content through retrieval and can be incorporated into AI behaviour at the system prompt level.
In a RAG architecture, content is chunked, embedded as vectors, and retrieved based on semantic similarity to a query. When Brand Rosetta properties are embedded in those content chunks, they are retrieved alongside the content they describe. A system prompt can then instruct the model how to use them:
When retrieved content contains rosetta: properties, incorporate them as follows:
rosetta:pageIntent — defines the intended outcome this page is designed to drive
rosetta:notSuitedFor — defines what you must decline or redirect
rosetta:conversationalFlow — defines your question sequence
rosetta:nextAction — defines your immediate next question
rosetta:brandVoice — defines the register and tone of your responsesImplementation tiers
Brand Rosetta properties are divided into two implementation tiers.
Foundation
Foundation properties address the core gap identified in the accompanying research: most brands provide no structured signal for AI identity, recommendation accuracy, or page intent. Foundation properties can be implemented on any existing site without backend changes, additional infrastructure, or embedded AI interfaces. They represent the minimum viable AI readiness layer and are the recommended starting point.
8 properties: positioning, brandVoice, era, llmsTxtURL, crawlerPolicy, useCase, notSuitedFor, pageIntent.
Extended
Extended properties require additional investment — an embedded AI chat interface, a live product or catalogue API, or a transactional endpoint. They are designed for brands building toward active AI readiness. Each property in the extended tier is independent. Brands can implement any subset that matches their current infrastructure.
13 properties: reasonToBelieve, elementOfValue, targetMoment, conversationalFlow, nextAction, suggestedFollowUps, delayedPrompt, catalogueAPI, inventoryAPI, inventoryAPIParams, transactionalEndpoint, supportedActions, checkAvailability.
Property reference table
| Property | Tier | Applies to |
|---|---|---|
rosetta:positioning | Foundation | Organization, Brand |
rosetta:brandVoice | Foundation | Organization, Brand |
rosetta:era | Foundation | WebSite, WebPage |
rosetta:llmsTxtURL | Foundation | WebSite, Organization |
rosetta:crawlerPolicy | Foundation | WebSite |
rosetta:useCase | Foundation | Product, Service |
rosetta:notSuitedFor | Foundation | Product, Service |
rosetta:pageIntent | Foundation | Product, Service, WebPage |
rosetta:reasonToBelieve | Extended | Product, Service |
rosetta:elementOfValue | Extended | Product, Service |
rosetta:targetMoment | Extended | Product, Service |
rosetta:conversationalFlow | Extended | Product, Service, WebPage |
rosetta:nextAction | Extended | Product, Service, WebPage |
rosetta:suggestedFollowUps | Extended | Product, Service, WebPage |
rosetta:delayedPrompt | Extended | WebPage, Product |
rosetta:catalogueAPI | Extended | WebSite, Organization |
rosetta:inventoryAPI | Extended | Product, Offer |
rosetta:inventoryAPIParams | Extended | Product |
rosetta:transactionalEndpoint | Extended | Product, Service |
rosetta:supportedActions | Extended | Product, Service |
rosetta:checkAvailability | Extended | Product, Service |
Full definitions, guidance, and examples for each property are in the vocabulary reference.
pageIntent vs supportedActions
The gap between rosetta:pageIntent and rosetta:supportedActions is intentional and honest. pageIntent declares what a page is designed to drive — it is a Foundation-tier property that requires no API or backend. supportedActions declares which actions an LLM agent can currently execute via a live endpoint — it is an Extended-tier property that requires a transactional endpoint.
A product page designed for purchase (pageIntent: ["purchase"]) may only currently support enquiry via an agent endpoint (supportedActions: ["enquire"]). Declaring both is more honest and more useful than collapsing them.
Versioning policy
Brand Rosetta uses semantic versioning. Version updates are triggered by changes to web infrastructure standards, new AI agent capabilities, or community-identified gaps — not by individual model updates.
- Patch versions (0.1.x) — clarifications, corrected examples, typographical fixes. No implementation changes required.
- Minor versions (0.2, 0.3...) — new properties added. Backwards compatible.
- Major versions (1.0, 2.0...) — structural changes to existing properties. Rare.
Model-agnostic by design. Brand Rosetta properties use self-describing names and plain text values that any capable LLM can interpret without specific training on the vocabulary.
Limitations
- AI compliance is not guaranteed.
rosetta:properties are signals, not commands. - Proposed, not formal standard. Submission to schema.org for formal inclusion is planned once sufficient real-world implementation exists.
- Point-in-time accuracy. Properties are point-in-time declarations. Accuracy depends on keeping structured data current.
- Transactional properties require tool use.
rosetta:inventoryAPIand transactional properties require AI agents with tool use enabled to function. - JavaScript-rendered content is not addressed. The vocabulary must sit alongside static or server-rendered content. Brands using SPA frameworks should implement
rosetta:catalogueAPIor an equivalent static fallback.
Licence
Published by Nodal Strategy under Creative Commons CC BY 4.0. Free to implement, adapt, and build upon with attribution.