Readers.
RFID readers generate high-volume observation data at fixed and handheld read points. EPCIS 2.0 is the layer above the reads: the standardized event, not the raw stream. The gateway accepts the events, stamps the warrantor, grades the asserted observer, and appends.
POST /capturePOST /translate
A tunnel's shift, as events.
read point: tunnel-2 · 06:00–14:00 · 4,180 tag reads
→ ObjectEvent observing ×4 (one per batch, not one per read)
"readPoint": { "id": "https://id.gs1.or…0/254/T2" },
"who": "did:thing:tunnel-2", // asserted, graded
"spine:capturedBy": "acct:plant-il-3" // stamped
Illustrative: a fixed reader run at line speed. The observer is the tunnel itself — an embodied agent, asserted and graded like any other observer; the plant's account is the stamped warrantor.
For the engineer between the reader and the record.
The raw read stream is not the record; the standardized event is. Batching reads into events is your call at the edge — what the door guarantees is that every event that clears it validated against the official schema and carries both grains, whichever hardware produced the reads.