# `type.principal_subject_not_unique`

Principal's subject field is not unique.

Area 8, [Identity](../topics/identity.md); not declinable; the next step is usually the agent's.

```jadpo
principal {
    user: {
        subject: Member.handle
    }
}

type Handle = Text {
    max_length: 40
}

entity Member {
    id: Uuid
    handle: Handle
}
```

```text
error: `Member.handle` doesn't identify one user
 --> main.jadpo:3:18
  |
3 |         subject: Member.handle
  |                  ^^^^^^^^^^^^^ not unique
  reason: A caller is looked up by its subject, so the subject names exactly one record: `Member.handle` isn't `unique: true`.
  next: Make `handle` a required field with `unique: true`, or name one that is (agent)
  rule: type.principal_subject_not_unique
  help: https://jadpo.dev/docs/errors/type.principal_subject_not_unique

check failed: 1 error, 1 file
```
