{
  "code": "S27",
  "name": "Persona",
  "shape": "persona",
  "family": "Evidence and pictures",
  "fits": "One audience member made real: a full-height portrait on a colour panel beside the segment name, a nickname, a name line, two context bullets, two quote cards and one highlighted desired shift.",
  "use_when": "Introducing who a piece or plan is for, one person at a time. Two quotes at most, in their voice; the plum box is the payload.",
  "slots": [
    {
      "name": "portrait",
      "holds": "illustrated portrait in a rounded plum frame on a beet panel, left 42%",
      "budget": "3:4"
    },
    {
      "name": "segment",
      "holds": "the audience segment, huge",
      "budget": "1 word"
    },
    {
      "name": "nickname",
      "holds": "who they are in a phrase",
      "budget": "under 5 words"
    },
    {
      "name": "name",
      "holds": "Name Surname, age, city (placeholder unless a real, consenting person)",
      "budget": "mono line"
    },
    {
      "name": "context",
      "holds": "two context bullets",
      "budget": "under 22 words each"
    },
    {
      "name": "quote",
      "holds": "two verbatim quote cards",
      "budget": "under 22 words each"
    },
    {
      "name": "want",
      "holds": "plum box: \"We want them to...\" and one desired shift in lime",
      "budget": "under 22 words"
    }
  ],
  "columns": 2,
  "density": "dense",
  "surface": "paper",
  "works_on": [
    "deck"
  ],
  "library": "Hoffman",
  "dir": "S27-persona",
  "semantic": {
    "audience_question": "Who is this audience, what do they say, and what shift do we seek?",
    "intent": "Understand a bounded persona through context, attributed voice and a desired change.",
    "reasoning_relation": "audience context, voice and intended shift",
    "message_pattern": "[Audience] currently [belief or behaviour] because [context]; we want [supported shift].",
    "required_content": [
      "A defined segment and evidence or hypothesis status.",
      "Two contextual constraints.",
      "Two verified utterances or explicitly fictional persona statements.",
      "One realistic desired change."
    ],
    "narrative_positions": [
      "audience diagnosis"
    ],
    "requires_before": [
      "Show why this audience segment matters and the research basis or gap."
    ],
    "enables_after": [
      "Build messages, service requirements or research questions addressing this concern."
    ],
    "slot_roles": {
      "portrait": "Cleared or disclosed illustrative persona depiction.",
      "segment": "The relevant audience group.",
      "nickname": "A meaningful behavioural description, not a stereotype.",
      "name": "Real consented identity or clearly labelled fictional/composite identity.",
      "context": "Two circumstances explaining this person’s decision.",
      "quote": "Two exact attributed quotes or visibly fictional teaching utterances.",
      "want": "The desired shift the programme seeks, kept separate from observed behaviour."
    },
    "avoid_when": [
      "Unlabelled invented customer research",
      "Demographic stereotypes",
      "A team-member biography"
    ],
    "layout_specific_contract": "One audience member made real: a full-height portrait on a colour panel beside the segment name, a nickname, a name line, two context bullets, two quote cards and one highlighted desired shift.",
    "provenance": {
      "basis": "interpretation of the existing layout and slot contracts",
      "review": "Tessel model-authored guidance; implementation approved by Nic, 2026-10-10",
      "corpus_evidence_status": "not yet established",
      "guide": "../SEMANTICS.md"
    },
    "reader_outcome": "Understand a bounded persona through context, attributed voice and a desired change.",
    "matching": {
      "audience_question": "Who is this audience, what do they say, and what shift do we seek?",
      "reader_outcome": "Understand a bounded persona through context, attributed voice and a desired change.",
      "reasoning_relation": "audience context, voice and intended shift",
      "content_shape": {
        "composition": "One audience member made real: a full-height portrait on a colour panel beside the segment name, a nickname, a name line, two context bullets, two quote cards and one highlighted desired shift.",
        "selected_state": "One audience member made real: a full-height portrait on a colour panel beside the segment name, a nickname, a name line, two context bullets, two quote cards and one highlighted desired shift.",
        "density": "dense",
        "columns": 2,
        "column_note": "Base metadata only; selected option can replace the base geometry."
      },
      "required_slots": [
        {
          "name": "portrait",
          "reader_question": "What subject, example or view must I inspect, and is it evidence or illustration?",
          "semantic_role": "Cleared or disclosed illustrative persona depiction.",
          "content_unit_count": {
            "min": 1,
            "max": 1,
            "basis": "authored composition members where a repeated group is specified; otherwise one named slot; not a required amount of evidence"
          },
          "placeholder": "[CLEARED IMAGE OR LABELLED ILLUSTRATION · portrait · illustrated portrait in a rounded plum frame on a beet panel, left 42%]",
          "layout_budget": {
            "authored": "3:4",
            "policy": "Working composition guidance: preserve scope and qualification; change layout rather than truncate the argument."
          },
          "markup": {
            "slot": "portrait",
            "occurrences": 1,
            "annotation_status": "present",
            "visibility_status": "not asserted from static parsing",
            "sample_word_counts": [
              0
            ]
          },
          "integrity": "Clear rights and provenance, retain meaningful alt text; generated scenes illustrate and cannot prove a historical event."
        },
        {
          "name": "segment",
          "reader_question": "What kind of content or argument section am I reading?",
          "semantic_role": "The relevant audience group.",
          "content_unit_count": {
            "min": 1,
            "max": 1,
            "basis": "authored composition members where a repeated group is specified; otherwise one named slot; not a required amount of evidence"
          },
          "placeholder": "[REAL CONTENT · segment · the audience segment, huge]",
          "layout_budget": {
            "authored": "1 word",
            "policy": "Working composition guidance: preserve scope and qualification; change layout rather than truncate the argument."
          },
          "markup": {
            "slot": "segment",
            "occurrences": 1,
            "annotation_status": "present",
            "visibility_status": "not asserted from static parsing",
            "sample_word_counts": [
              1
            ]
          }
        },
        {
          "name": "nickname",
          "reader_question": "What does the nickname contribute to this page’s reader outcome?",
          "semantic_role": "A meaningful behavioural description, not a stereotype.",
          "content_unit_count": {
            "min": 1,
            "max": 1,
            "basis": "authored composition members where a repeated group is specified; otherwise one named slot; not a required amount of evidence"
          },
          "placeholder": "[REAL CONTENT · nickname · who they are in a phrase]",
          "layout_budget": {
            "authored": "under 5 words",
            "policy": "Working composition guidance: preserve scope and qualification; change layout rather than truncate the argument."
          },
          "markup": {
            "slot": "nickname",
            "occurrences": 1,
            "annotation_status": "present",
            "visibility_status": "not asserted from static parsing",
            "sample_word_counts": [
              3
            ]
          }
        },
        {
          "name": "name",
          "reader_question": "Which precise person, meaning, statement or response is being identified?",
          "semantic_role": "Real consented identity or clearly labelled fictional/composite identity.",
          "content_unit_count": {
            "min": 1,
            "max": 1,
            "basis": "authored composition members where a repeated group is specified; otherwise one named slot; not a required amount of evidence"
          },
          "placeholder": "[REAL CONTENT · name · Name Surname, age, city (placeholder unless a real, consenting person)]",
          "layout_budget": {
            "authored": "mono line",
            "policy": "Working composition guidance: preserve scope and qualification; change layout rather than truncate the argument."
          },
          "markup": {
            "slot": "name",
            "occurrences": 1,
            "annotation_status": "present",
            "visibility_status": "not asserted from static parsing",
            "sample_word_counts": [
              5
            ]
          }
        },
        {
          "name": "context",
          "reader_question": "Which precise person, meaning, statement or response is being identified?",
          "semantic_role": "Two circumstances explaining this person’s decision.",
          "content_unit_count": {
            "min": 2,
            "max": 2,
            "basis": "authored composition members where a repeated group is specified; otherwise one named slot; not a required amount of evidence"
          },
          "placeholder": "[REAL CONTENT · context · two context bullets]",
          "layout_budget": {
            "authored": "under 22 words each",
            "policy": "Working composition guidance: preserve scope and qualification; change layout rather than truncate the argument."
          },
          "markup": {
            "slot": "context",
            "occurrences": 1,
            "annotation_status": "present",
            "visibility_status": "not asserted from static parsing",
            "sample_word_counts": [
              30
            ]
          }
        },
        {
          "name": "quote",
          "reader_question": "Which precise person, meaning, statement or response is being identified?",
          "semantic_role": "Two exact attributed quotes or visibly fictional teaching utterances.",
          "content_unit_count": {
            "min": 2,
            "max": 2,
            "basis": "authored composition members where a repeated group is specified; otherwise one named slot; not a required amount of evidence"
          },
          "placeholder": "[REAL CONTENT · quote · two verbatim quote cards]",
          "layout_budget": {
            "authored": "under 22 words each",
            "policy": "Working composition guidance: preserve scope and qualification; change layout rather than truncate the argument."
          },
          "markup": {
            "slot": "quote",
            "occurrences": 2,
            "annotation_status": "present",
            "visibility_status": "not asserted from static parsing",
            "sample_word_counts": [
              12,
              7
            ]
          }
        },
        {
          "name": "want",
          "reader_question": "Which precise person, meaning, statement or response is being identified?",
          "semantic_role": "The desired shift the programme seeks, kept separate from observed behaviour.",
          "content_unit_count": {
            "min": 1,
            "max": 1,
            "basis": "authored composition members where a repeated group is specified; otherwise one named slot; not a required amount of evidence"
          },
          "placeholder": "[REAL CONTENT · want · plum box: \"We want them to...\" and one desired shift in lime]",
          "layout_budget": {
            "authored": "under 22 words",
            "policy": "Working composition guidance: preserve scope and qualification; change layout rather than truncate the argument."
          },
          "markup": {
            "slot": "want",
            "occurrences": 1,
            "annotation_status": "present",
            "visibility_status": "not asserted from static parsing",
            "sample_word_counts": [
              16
            ]
          }
        }
      ],
      "rejection_constraints": [
        "Invented interview quotations or a fictional persona presented as a real researched person.",
        "An invented individual or quotation presented as research; demographics mistaken for motivation."
      ],
      "option_guidance": {
        "option": "default",
        "composition_delta": "One audience member made real: a full-height portrait on a colour panel beside the segment name, a nickname, a name line, two context bullets, two quote cards and one highlighted desired shift.",
        "semantic_change": "retains base content relationship; changes presentation or disclosure",
        "matching_instruction": "Select S27 default when the supplied material answers “Who is this audience, what do they say, and what shift do we seek?” through audience context, voice and intended shift. Respect this state: One audience member made real: a full-height portrait on a colour panel beside the segment name, a nickname, a name line, two context bullets, two quote cards and one highlighted desired shift."
      },
      "provenance": {
        "status": "inferred composition evidence",
        "author_intent": "not independently confirmed",
        "basis": [
          "retained source composition where available",
          "authored layout and slot contracts",
          "static implementation inspection"
        ],
        "source_visual_count": 1,
        "source_visual_sha256": [
          "ed7f59f7a611517e60d56bb0c0d34c809013cd9e7e8f40ede2077a693fe6a1e2"
        ],
        "source_export": "private source images remain outside this draft site",
        "markup_sha256": "9dbe07bd25df24764f56c3fa6ebc56bc73024881e7e6c003755778b2597b80a7",
        "limits": [
          "Static parsing inventories authored nodes; it does not certify rendered visibility, responsive fit or interactive state.",
          "Budgets are authored layout guidance, not a content-writing limit or proof of fit.",
          "Matching guidance is a draft inference; it does not establish facts, endorsement, causation or source author intent."
        ]
      },
      "adaptation_rules": [
        "Choose by audience question, reasoning relation and required content before aesthetic preference.",
        "Supply every required semantic role; retain visible unknowns as labelled real-content placeholders.",
        "A number needs source, scope and units; a quotation needs faithful wording and attribution.",
        "Do not infer importance from area, colour, depth or movement unless the content explicitly defines that encoding.",
        "Keep colour token roles, structural objects, licences and source records; changing content does not authorize changing them."
      ]
    },
    "rejection_constraints": [
      "Invented interview quotations or a fictional persona presented as a real researched person.",
      "An invented individual or quotation presented as research; demographics mistaken for motivation."
    ],
    "markup_inventory": {
      "file": "spread.html",
      "sha256": "9dbe07bd25df24764f56c3fa6ebc56bc73024881e7e6c003755778b2597b80a7",
      "method": "static lxml markup plus authored option description; no rendered-visibility claim",
      "all_markup_slot_counts": {
        "portrait": 1,
        "segment": 1,
        "nickname": 1,
        "name": 1,
        "context": 1,
        "quote": 2,
        "want": 1
      },
      "slot_evidence": {
        "portrait": [
          {
            "tag": "figure",
            "classes": "ph cut r-3x4",
            "sample_word_count": 0,
            "repeated_children": 1
          }
        ],
        "segment": [
          {
            "tag": "h2",
            "classes": "seg",
            "sample_word_count": 1,
            "repeated_children": 0
          }
        ],
        "nickname": [
          {
            "tag": "div",
            "classes": "nick",
            "sample_word_count": 3,
            "repeated_children": 0
          }
        ],
        "name": [
          {
            "tag": "div",
            "classes": "who",
            "sample_word_count": 5,
            "repeated_children": 0
          }
        ],
        "context": [
          {
            "tag": "ul",
            "classes": "",
            "sample_word_count": 30,
            "repeated_children": 2
          }
        ],
        "quote": [
          {
            "tag": "p",
            "classes": "qcard",
            "sample_word_count": 12,
            "repeated_children": 0
          },
          {
            "tag": "p",
            "classes": "qcard",
            "sample_word_count": 7,
            "repeated_children": 0
          }
        ],
        "want": [
          {
            "tag": "div",
            "classes": "want",
            "sample_word_count": 16,
            "repeated_children": 2
          }
        ]
      },
      "option_selectors": [],
      "linked_implementation": [
        {
          "file": "../spreads.css",
          "sha256": "32da94472b0c9131e4d5dae7d5bf0498b09202a9e66294b4e4f23e6ddfbf37ba"
        },
        {
          "file": "../spread.js",
          "sha256": "3d99948b83f750bd4ae95dac08e3e50a395de7c149c90a6f1a1c0ea36a2634a4"
        }
      ]
    },
    "variations": {},
    "narrative_profile": {
      "central_point": "One representative person makes an audience’s situation and desired change understandable.",
      "communication_job": "Connect a segment’s context and concerns to a specific communication objective.",
      "audience_value": "Perspective: clarifies what this audience needs reassurance about; prevents a desired response being confused with current behaviour.",
      "reading_path": [
        "Identify segment, persona label and disclosed identity status.",
        "Read the two context points, then the two attributed or explicitly fictional utterances.",
        "Read the highlighted desired shift as the communicator’s aim, not something the person already believes."
      ],
      "adaptation": {
        "required_inputs": [
          "A defined segment and evidence or hypothesis status.",
          "Two contextual constraints.",
          "Two verified utterances or explicitly fictional persona statements.",
          "One realistic desired change."
        ],
        "slot_guidance": {
          "portrait": "Cleared or disclosed illustrative persona depiction.",
          "segment": "The relevant audience group.",
          "nickname": "A meaningful behavioural description, not a stereotype.",
          "name": "Real consented identity or clearly labelled fictional/composite identity.",
          "context": "Two circumstances explaining this person’s decision.",
          "quote": "Two exact attributed quotes or visibly fictional teaching utterances.",
          "want": "The desired shift the programme seeks, kept separate from observed behaviour."
        },
        "can_change": [
          "Persona details supported by research.",
          "Illustration while preserving disclosure and privacy."
        ],
        "must_survive": [
          "Observed context, quotation and desired shift stay distinct.",
          "Persona status is explicit.",
          "The proposed response follows from the stated problem."
        ]
      },
      "worked_example": {
        "fictional": true,
        "scenario": "Fictional repair cooperative proposal; all events, people and evidence are invented teaching material.",
        "slot_fills": {
          "portrait": "Labelled illustration of a fictional landlord reviewing a maintenance list.",
          "segment": "Landlords",
          "nickname": "The access-window planner",
          "name": "Jon Vale · fictional persona",
          "context": [
            "Coordinates repairs around tenant availability.",
            "Needs a clear explanation when a repair cannot be completed."
          ],
          "quote": [
            "“I cannot ask the tenant to wait twice.” — fictional utterance",
            "“Tell me what must be ready before I book.” — fictional utterance"
          ],
          "want": "Ask for a parts-readiness check before confirming tenant access."
        },
        "reasoning": "The desired shift responds to the stated access constraint; the persona is an illustrative hypothesis, not a researched population claim.",
        "qualification": "Fictional teaching example only. Proposed benefits and results are not verified; replace with authorised material for a real use."
      },
      "narrative_fit": {
        "before": "Show why this audience segment matters and the research basis or gap.",
        "after": "Build messages, service requirements or research questions addressing this concern.",
        "good_uses": [
          "Audience understanding",
          "A hypothesis to test in research",
          "A human context for a strategic choice"
        ],
        "poor_fits": [
          "Unlabelled invented customer research",
          "Demographic stereotypes",
          "A team-member biography"
        ]
      },
      "evidence": {
        "observations": [
          "Viewed source: persona context and two quotation cards lead into a separate desired-response box beside an image region.",
          "Current HTML and active slot contract were inspected."
        ],
        "interpretations": [
          "The guidance interprets the layout’s communication affordances; it does not assert source-author intent."
        ],
        "not_verified": [
          "Original author intent, surrounding source sequence, sample factual claims and persuasion effects are not independently verified."
        ],
        "references": [
          "02_product/spreads/S27-persona/source.webp",
          "dist/S27-persona/spread.html",
          "dist/S27-persona/spread.json",
          "https://github.com/neekchan/hoffman-agency-design-system/blob/main/templates/deck/Deck.dc.html"
        ]
      },
      "review": {
        "status": "reviewed",
        "basis": "Viewed retained source capture and inspected current markup/slot contract; reviewed reasoning and example mapping. This is layout-contract review, not source-intent confirmation."
      },
      "variation_relationship": "base"
    }
  },
  "options": [],
  "also_seen_in": [],
  "source": {
    "ref": "Hoffman L14 Persona",
    "url": "https://github.com/neekchan/hoffman-agency-design-system/blob/main/templates/deck/Deck.dc.html"
  }
}
