Paste {"users":[{"name":"Ada"}],"":42}. The pointer /users/0/name selects "Ada"; / selects 42; an empty pointer selects the complete object. These three results use the same document but different token sequences.

Array index is canonical

The token 0 selects the first element. The token 00 is rejected rather than treated as zero, and 1 is out of range for this one-element array.

Generated leaves prove the distinction

Leaf generation returns /users/0/name and /. It does not return the empty root pointer because the root object is not a leaf; resolving the empty pointer remains available explicitly.

Verify the exact decoded tokens

Check each token against the original member name. Decode ~1 to slash and ~0 to tilde only once, then distinguish object names from canonical array indices. Keep the empty root pointer distinct from / and compare important paths with the authoritative producer contract.