# world.ptah.template

> 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.template)
- [Documentation](https://lexicon.garden/lexicon/did:plc:l45z35sxxjuobp5q65a5vu22/world.ptah.template/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:l45z35sxxjuobp5q65a5vu22/world.ptah.template/examples)

## Definitions

### `world.ptah.template`

**Type**: `record`

A shared identity template that multiple characters can embody. The type, not the instance. Defines what something fundamentally is before any specific character performs it.

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `name` | `string` | Yes | The name of the template |
| `createdAt` | `string` (datetime) | Yes | Timestamp when this template was created |
| `creatorDID` | `string` (did) | Yes | The permanent identity of the template's creator |
| `originType` | `string` | No | The intellectual property status of this template |
| `description` | `string` | No | What this template represents |
| `instancePolicy` | `string` | No | Who can create new character instances of this template — open (anyone), restricted (with approval), closed (no new instances) |
| `worldReference` | `string` (at-uri) | Yes | Reference to the world this template belongs to |
| `canonicalStatus` | `string` | No | The canonical standing of this template |
| `canonicalReferencePolicy` | `string` | No | How the canonical character reference behaves over time — fixed (never changes), updatable (originator can update), community (community consensus) |
| `canonicalCharacterReference` | `string` (at-uri) | No | Reference to the canonical character instance of this template (if any) |

## Raw Schema

```json
{
  "id": "world.ptah.template",
  "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 template",
            "maxGraphemes": 64
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "Timestamp when this template was created"
          },
          "creatorDID": {
            "type": "string",
            "format": "did",
            "description": "The permanent identity of the template's creator"
          },
          "originType": {
            "type": "string",
            "description": "The intellectual property status of this template",
            "knownValues": [
              "originalIP",
              "publicDomain",
              "collaborativeCommons"
            ]
          },
          "description": {
            "type": "string",
            "maxLength": 10240,
            "description": "What this template represents",
            "maxGraphemes": 1024
          },
          "instancePolicy": {
            "type": "string",
            "description": "Who can create new character instances of this template — open (anyone), restricted (with approval), closed (no new instances)",
            "knownValues": [
              "open",
              "restricted",
              "closed"
            ]
          },
          "worldReference": {
            "type": "string",
            "format": "at-uri",
            "description": "Reference to the world this template belongs to"
          },
          "canonicalStatus": {
            "type": "string",
            "description": "The canonical standing of this template",
            "knownValues": [
              "world.ptah.defs#canonicalStatusOfficial",
              "world.ptah.defs#canonicalStatusCommunity",
              "world.ptah.defs#canonicalStatusApocryphal"
            ]
          },
          "canonicalReferencePolicy": {
            "type": "string",
            "description": "How the canonical character reference behaves over time — fixed (never changes), updatable (originator can update), community (community consensus)",
            "knownValues": [
              "fixed",
              "updatable",
              "community"
            ]
          },
          "canonicalCharacterReference": {
            "type": "string",
            "format": "at-uri",
            "description": "Reference to the canonical character instance of this template (if any)"
          }
        }
      },
      "description": "A shared identity template that multiple characters can embody. The type, not the instance. Defines what something fundamentally is before any specific character performs it."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
