# world.ptah.character

> Published by [ptah.world](https://lexicon.garden/identity/did:plc:l45z35sxxjuobp5q65a5vu22)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:l45z35sxxjuobp5q65a5vu22/world.ptah.character)
- [Documentation](https://lexicon.garden/lexicon/did:plc:l45z35sxxjuobp5q65a5vu22/world.ptah.character/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:l45z35sxxjuobp5q65a5vu22/world.ptah.character/examples)

## Definitions

### `world.ptah.character`

**Type**: `record`

A person, creature, or entity inside a world. Characters take actions, participate in events, and accumulate history.

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `name` | `string` | Yes | The name of the character |
| `avatar` | `blob` | No | Avatar image for the character |
| `createdAt` | `string` (datetime) | Yes | Timestamp when this character was created |
| `creatorDID` | `string` (did) | Yes | The permanent identity of the character's creator |
| `originType` | `string` | No | The intellectual property status of this character |
| `controlType` | `string` | No | Who can act as this character — exclusive (creator only), open (anyone), or contested (multiple claimants) |
| `description` | `string` | No | Who this character is |
| `worldReference` | `string` (at-uri) | Yes | Reference to the world this character inhabits |
| `canonicalStatus` | `string` | No | The canonical standing of this character |
| `authorshipRecord` | `string` (did) | No | The DID of the original author if different from creator |
| `templateReference` | `string` (at-uri) | No | Reference to the template this character embodies (if any) |
| `characterProperties` | `ref` → `#characterProperties` | No | Additional structured properties for this character |

### `world.ptah.character#characterProperties`

**Type**: `object`

Structured metadata for characters

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `age` | `string` | No |  |
| `role` | `string` | No |  |
| `species` | `string` | No |  |
| `abilities` | `string` | No |  |
| `affiliation` | `string` | No |  |

## Raw Schema

```json
{
  "id": "world.ptah.character",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "name",
          "creatorDID",
          "worldReference",
          "createdAt"
        ],
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 640,
            "description": "The name of the character",
            "maxGraphemes": 64
          },
          "avatar": {
            "type": "blob",
            "accept": [
              "image/png",
              "image/jpeg",
              "image/webp"
            ],
            "maxSize": 1000000,
            "description": "Avatar image for the character"
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "Timestamp when this character was created"
          },
          "creatorDID": {
            "type": "string",
            "format": "did",
            "description": "The permanent identity of the character's creator"
          },
          "originType": {
            "type": "string",
            "description": "The intellectual property status of this character",
            "knownValues": [
              "originalIP",
              "publicDomain",
              "collaborativeCommons"
            ]
          },
          "controlType": {
            "type": "string",
            "description": "Who can act as this character — exclusive (creator only), open (anyone), or contested (multiple claimants)",
            "knownValues": [
              "exclusive",
              "open",
              "contested"
            ]
          },
          "description": {
            "type": "string",
            "maxLength": 10240,
            "description": "Who this character is",
            "maxGraphemes": 1024
          },
          "worldReference": {
            "type": "string",
            "format": "at-uri",
            "description": "Reference to the world this character inhabits"
          },
          "canonicalStatus": {
            "type": "string",
            "description": "The canonical standing of this character",
            "knownValues": [
              "world.ptah.defs#canonicalStatusOfficial",
              "world.ptah.defs#canonicalStatusCommunity",
              "world.ptah.defs#canonicalStatusApocryphal"
            ]
          },
          "authorshipRecord": {
            "type": "string",
            "format": "did",
            "description": "The DID of the original author if different from creator"
          },
          "templateReference": {
            "type": "string",
            "format": "at-uri",
            "description": "Reference to the template this character embodies (if any)"
          },
          "characterProperties": {
            "ref": "#characterProperties",
            "type": "ref",
            "description": "Additional structured properties for this character"
          }
        }
      },
      "description": "A person, creature, or entity inside a world. Characters take actions, participate in events, and accumulate history."
    },
    "characterProperties": {
      "type": "object",
      "properties": {
        "age": {
          "type": "string",
          "maxLength": 640,
          "maxGraphemes": 64
        },
        "role": {
          "type": "string",
          "maxLength": 640,
          "maxGraphemes": 64
        },
        "species": {
          "type": "string",
          "maxLength": 640,
          "maxGraphemes": 64
        },
        "abilities": {
          "type": "string",
          "maxLength": 2560,
          "maxGraphemes": 256
        },
        "affiliation": {
          "type": "string",
          "maxLength": 640,
          "maxGraphemes": 64
        }
      },
      "description": "Structured metadata for characters"
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
