# Source lineage — the $321.3 billion annual claim

**Direction convention:** arrows run from the attributed upstream source to the downstream document carrying this specific statistic. They do not represent the origin of every statement in an article or prove how an editor obtained text.

**Scope:** complete graph for the inspected six claim documents. Other repetitions discovered but not fully inspected are outside this bounded graph. S1 represents the release through its recovered archived version; arrows do not imply that February 20 accounts copied from a February 25 archive.

```mermaid
flowchart LR
  S1["S1 Canalys release\n20 Feb 2025; archive 25 Feb"]
  S2["S2 CCA\n20 Feb 2025"]
  S3["S3 Telecom Reseller\n20 Feb 2025; extract only"]
  S4["S4 ITPro\n21 Feb 2025"]
  S5["S5 HostingJournalist\n20 Feb 2025"]
  S6["S6 WHTop\n20 Feb 2025"]
  S1 -->|E1 exact release destination| S2
  S1 -.->|E2 exact destination in qualified extract| S3
  S1 -.->|E3 Canalys named; exact document inferred| S4
  S1 -.->|E4 Canalys named; exact document inferred| S5
  S5 -->|E5 explicit source credit and URL| S6
```

Solid arrows: confirmed document attribution in independently inspected content. Dashed E2: exact attribution observed in extraction with blocked live access. Dashed E3/E4: publisher attribution confirmed, precise source-document route inferred. E2's access limitation and E3/E4's inference are different uncertainties; the table is authoritative. No dashed arrow asserts a verified copying route.

## Accessible graph equivalent and complete edge table

| Edge | Upstream → downstream | Confirmed evidence | Inference or limit | Relationship decision |
|---|---|---|---|---|
| E1 | S1 Canalys → S2 CCA | CCA opening link's decoded `url` equals the original release URL; analyst attribution; annual tuple and nearby context match archived S1. | Exact acquisition process and licensing unestablished. | Confirmed exact-document attribution; attributed reproduction. |
| E2 | S1 Canalys → S3 Telecom Reseller | Firecrawl full text contains exact release tracking destination and annual tuple. | Browser blocked/direct 403; live content not independently inspected. | Connector-observed exact-document attribution, access qualified. |
| E3 | S1 Canalys → S4 ITPro | Article explicitly names Canalys and carries $321.3bn/full-year 2024/worldwide cloud infrastructure tuple. | No link to S1; actual original-specific route unknown. | Publisher attribution confirmed; connection to this release inferred. |
| E4 | S1 Canalys → S5 HostingJournalist | Article names Canalys as report publisher and carries matching tuple. | Associated link goes to Canalys about page, not release; acquisition route unknown. | Publisher attribution confirmed; connection to this release inferred. |
| E5 | S5 HostingJournalist → S6 WHTop | Visible source credit and printed exact HostingJournalist article URL. | URL is plain text, not a working source hyperlink; no claim about transmission channel. | Confirmed immediate-source credit; downstream summary/excerpt. |

Reader tracing runs in the reverse direction. Starting at WHTop, the supported trail is **WHTop → HostingJournalist → Canalys attribution**. The final step to this particular Canalys document remains inferred on that branch. Starting at CCA, its encoded URL gives the exact release lead; the inspected archive then supplies the original record. These branches can be connected for analysis without inventing an unobserved HostingJournalist → CCA or CCA → Telecom Reseller route.

The selected documents converge on a Canalys-attributed estimate. They do not supply a separately disclosed calculation of the annual total. Multiple appearances therefore cannot be used as evidence that each publication independently estimated the market. This statement is limited to the audited statistic and inspected accounts; it is not a general assessment of the publishers' independence.

