Clinical patterns

Attribution & the explanation that isn't

A saliency, heat or attention overlay shows where a model's response concentrated. Every reader alive will read it as the reason for the finding. Those are different claims, only one of them is true, and the gap between them is this whole page.

Stable · v1.0 ForeCall EU AI Act Art. 14 WCAG 2.2 AA

Overview

Attribution methods answer a narrow engineering question: which parts of the input moved the output most. That is useful for the people who built the model. Rendered over anatomy and placed beside a finding, it answers a different question entirely — why did it say that? — and it answers it wrongly, because it does not contain that information.

The failure is not that overlays are inaccurate. It is that they are persuasive about something they do not describe. A reader who sees a bright region over a lesion concludes the model found the lesion for the reason they would have. Nothing in the overlay supports that, and the impression is very hard to dislodge.

The rule that carries the risk

A model may show where it looked. It may never present where it looked as why it concluded.

The corollary does the practical work: a finding must be statable in words, with a location, without the overlay. If the overlay is the only way to know what was found, there is no finding — there is a picture.

Where, not why

An overlay is a pointer. It carries no reasoning, and the interface never lets it stand in for any.

The finding survives without it

Words and a location come first. The overlay is a convenience for finding the place, not the content of the claim.

No quantity it does not have

No intensity ramp, no percentages, no colour scale. A gradient reads as a measured surface, and none was measured.

What a mark is allowed to claim

Three things get drawn on an image and they make three different claims. Conflating them is the most common error in this area, and it is usually made by rendering all three the same way.

What is drawnThe claim it may makeThe claim it may not
A detection mark
box or outline
"Something the model was trained to detect is here." A locatable, checkable assertion. That it is correct, that it is the only one, or that its extent is a measurement.
A boundary
segmentation contour
"This is the extent the model assigned." Becomes a measurement the moment a number is derived — see Derived measurement. That the boundary is where a human would have drawn it.
An attribution overlay
saliency, heat, attention
"The response concentrated here." Nothing else. It is an engineering diagnostic that happens to be renderable. That this is why. Also: that brighter means more certain, that the highlighted tissue is abnormal, or that unhighlighted tissue was assessed.

Where it looked is not why it concluded

The finding, stated so the overlay is optional
1

mark 1 · outline only

Finding 1
Region marked, left upper quadrant
series 4, slice 47 of 300 · 14 mm across the mark
ForeCall v2.4 · detection only, not a diagnosis

Cover the image and the finding is still complete: what, where, how big, from what. That is the test.

Rendering: outline, never ramp

Why a gradient is the specific problem

A continuous intensity ramp reads as a measured surface over anatomy — a per-pixel quantity with units, of the kind a perfusion or dose map genuinely produces. An attribution method produces nothing of the sort. Rendering one as a smooth heat field asserts a precision and a physical meaning that do not exist, and it does so in the visual language of quantities that do.

This is the direct heir of Confidence disclosure's rule that a score is never a colour scale. Same failure, one dimension up.

Do

A boundary and nothing else. It says "here", which is all it knows, and the tissue underneath stays visible.

Don't

A ramp. It obscures the tissue it points at, implies brighter-is-more, and looks exactly like a perfusion map — a thing with units.

A finding has an address

When the referent is one of hundreds of thousands of comparable units — slices in a study, beats in a Holter, regions of a whole-slide image — a finding exists and the reader has found it are different states, and only one of them is visible on screen.

States

StateRendering
Marks available, not shown Stated, with a control to show them. Silence is ambiguous: nothing-found and not-yet-shown are different facts.
Marks shown Outline plus a text finding. The finding stands alone if the overlay is dismissed.
Nothing marked Stated as "no regions marked", scoped to what the model detects — never "normal", and never "no abnormality".
Analysis failed or partial Which series were and were not analysed. Distinct from nothing-marked, which is the distinction Key–value pair exists to protect.
Outside validated scope No marks and a reason — the paediatric case, the unusual protocol. Withhold rather than extrapolate, per Confidence disclosure.
Reader dismissed the marks Recorded. The knowledge does not go away when the pixels do, and the record should reflect what was on screen — see Clinician override.

Who holds each rule

An attribution map is an overlay on an image, and this package ships no image viewer. Almost every rule here is about something the package cannot see.

RuleHeld by Where
Never an alarm hueStatus chip If the overlay’s legend is a chip, it cannot reach the alarm palette without an alarm tone. The overlay itself is drawn by you.
Asserted: StatusChip: an alarm tone maps to the governed hue, not a chosen colour
The words come first in the reading orderThe implementer Document order on the review screen.
Never label an overlay “explanation”, “reasoning”, “why” or “because”Spatial finding The control that shows the marks has a constant label — Show where the response concentrated — and the component’s code contains none of those words. What your viewer labels its own chrome is still yours; the control the reader uses is not.
Asserted: SpatialFinding: marks start hidden, and the control never says explain
Never offer it as the answer to a challengeThe implementer Interaction design: what the disagree action reveals.
Unhighlighted is not “assessed and clear”Spatial finding The none state requires a scope and renders “No regions marked for … This says nothing about anything else.” Neither normal nor no abnormality is in the code.
Asserted: SpatialFinding: nothing-marked is scoped, and never 'normal'
Attribution is not evidence in the recordThe implementer What gets written to the Event log is your choice; the log will faithfully record a heatmap if you tell it to.
Outline, not fill; no animation on appearance; never colour aloneThe implementer Canvas rendering, all of it yours.
Removable in one action, and off by defaultSpatial finding A Switch that starts off, with no prop to start it on. Hiding the overlay pixels when it moves is your viewer’s job; onShownChange is the moment.
Asserted: SpatialFinding: marks start hidden, and the control never says explain
The address is stated in the units the reader navigates inSpatial finding address is required and is series, slice and the size of the series. The numbers come from your viewer; that they are the only address expressible does not.
Asserted: SpatialFinding: the address is in the reader's units, and complete without the image
Navigating there is not assessing itSpatial finding onNavigate is the only callback and receives the address. Nothing here can be wired to a “seen” or “assessed” event — the same objection as tabs, held by the type this time.
Asserted: SpatialFinding: navigating is the only callback; nothing records assessment
Why this is written down

A pattern page has no component underneath it, so a rule stated here is held by whoever builds against it unless a component already holds it. Of these 10 rules, 1 are held by a component this package ships, and 9 are the implementer’s. One held, nine not. This page describes rules for a component this package does not have, which is stated on it and is worth restating here.

Do's and don'ts

Do

Where the response concentrated — a diagnostic view of the model, not a reason for the finding.

Names the overlay as what it is. A reader can decide how much weight to give it, which is the whole point of Article 14's "interpret the output correctly".

Don't

Explanation — why the model flagged this study.

It is not an explanation and does not contain one. The label is the entire failure: everything downstream follows from the reader believing it.

Do

Region marked, left upper quadrant · series 4, slice 47 of 300 · 14 mm across the mark

Statable in words with a location. It survives a phone call, a printout and a screen reader.

Don't

See highlighted region.

The overlay is the finding. Dismiss it and there is nothing left to act on, quote or escalate — which means there was never a finding, only a picture.

Do

No regions marked in the 4 series analysed. The model detects intracranial haemorrhage only.

Scoped to what the model looks for, and bounded by what it actually processed.

Don't

No abnormality detected.

A claim about the whole study made by a model that looks for one thing. The unhighlighted 299 slices were not cleared; they were not asked about.

Do

Why did it flag this? → Model scope, performance characteristics and version.

The honest answer to a challenge. None of it is an overlay, and all of it is checkable.

Don't

Why did it flag this? → Show the heatmap.

Answers a question about reasoning with a picture of activation. The reader leaves satisfied and knows nothing more than before.

Accessibility

Outcomes of use

What this contributes to, in the terms of Usability & context of use. These are attributes believed to contribute to an outcome; the outcome itself is settled by observing real use in a specified context, not by this page.

Clinical safety notes

Risk controls this pattern specifies, and what checks each

Trace these in your risk file (ISO 14971) and usability engineering file (IEC 62366-1). Each bullet says what checks it: a component that holds the rule, a test in your verification file, deployment configuration, post-market surveillance, or a design review where no test can see it. A control checked by nothing is a sentence.

NotJustAnyMed.Tech Design System · Attribution & the explanation that isn't · v1.0 · draft for review
Reference applications named in this system are fictional; the image fields are abstractions drawn for documentation and are not medical images.