Names
The part before the dot says what kind of thing the TNID identifies. Pick one short, obvious name per entity type and never rename it.
Rules
| Rule | Valid | Invalid |
|---|---|---|
| 1 to 4 characters | x, org, user | users |
a–z and 0–4 only | a1b2 | User, a-b, v5 |
An invalid name fails to compile when written in code, and is rejected at runtime when parsed. The small alphabet keeps the name to 20 bits: Name encoding.
Choosing names
- One per entity type: every user's TNID has the name
user. No tenant, environment or other data. - Obvious:
user,org,post,cmt,inv,sess, guessable from a log line. - Permanent: the name is in the bits, so renaming
accttouserchanges every TNID in every form. - A label, not a namespace: another system can use
usertoo.
Sorting by name
The name comes first in every form, so TNIDs with different names group by it: all org before all user. Time-sortable TNIDv0s sort by creation time only within one name.