# town.laugh.db.defs

> Published by [laugh.town](https://lexicon.garden/identity/did:plc:k6owgpe2rkkchoiivxhzp2t4)

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:k6owgpe2rkkchoiivxhzp2t4/town.laugh.db.defs)
- [Documentation](https://lexicon.garden/lexicon/did:plc:k6owgpe2rkkchoiivxhzp2t4/town.laugh.db.defs/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:k6owgpe2rkkchoiivxhzp2t4/town.laugh.db.defs/examples)

## Definitions

### `town.laugh.db.defs#performer`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `role` | `string` | No | Role on the bill, e.g. headliner, host, feature |
| `comedian` | `string` (at-uri) | Yes | AT-URI reference to the town.laugh.db.comedian record |
| `billingOrder` | `integer` | No | Position on the bill (lower = higher billing) |

### `town.laugh.db.defs#externalId`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `value` | `string` | Yes | The identifier within that system |
| `system` | `string` | Yes | Identifier system (open controlled vocabulary) |

### `town.laugh.db.defs#localizedText`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `text` | `string` | Yes | The text in this language |
| `facets` | `array` | No | Optional byte-range rich text annotations on text (links, mentions) |
| `language` | `string` (language) | Yes | BCP-47 language tag for this variant, e.g. en, es, fr-CA |

## Raw Schema

```json
{
  "id": "town.laugh.db.defs",
  "defs": {
    "performer": {
      "type": "object",
      "required": [
        "comedian"
      ],
      "properties": {
        "role": {
          "type": "string",
          "description": "Role on the bill, e.g. headliner, host, feature"
        },
        "comedian": {
          "type": "string",
          "format": "at-uri",
          "description": "AT-URI reference to the town.laugh.db.comedian record"
        },
        "billingOrder": {
          "type": "integer",
          "description": "Position on the bill (lower = higher billing)"
        }
      }
    },
    "externalId": {
      "type": "object",
      "required": [
        "system",
        "value"
      ],
      "properties": {
        "value": {
          "type": "string",
          "description": "The identifier within that system"
        },
        "system": {
          "type": "string",
          "description": "Identifier system (open controlled vocabulary)",
          "knownValues": [
            "imdb",
            "spotify",
            "musicbrainz",
            "viaf",
            "isni",
            "wikidata",
            "instagram",
            "tiktok",
            "youtube",
            "eventsUrl"
          ]
        }
      }
    },
    "localizedText": {
      "type": "object",
      "required": [
        "language",
        "text"
      ],
      "properties": {
        "text": {
          "type": "string",
          "description": "The text in this language"
        },
        "facets": {
          "type": "array",
          "items": {
            "ref": "app.bsky.richtext.facet",
            "type": "ref"
          },
          "description": "Optional byte-range rich text annotations on text (links, mentions)"
        },
        "language": {
          "type": "string",
          "format": "language",
          "description": "BCP-47 language tag for this variant, e.g. en, es, fr-CA"
        }
      }
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
