{
  "lexicon": 1,
  "id": "space.polymodel.library.model",
  "defs": {
    "main": {
      "type": "record",
      "description": "A model: an ordered set of parts; a variant of a thing.",
      "key": "tid",
      "record": {
        "type": "object",
        "required": [
          "name",
          "parts",
          "createdAt"
        ],
        "properties": {
          "cover": {
            "type": "array",
            "items": {
              "type": "ref",
              "ref": "space.polymodel.library.defs#image"
            },
            "maxLength": 8
          },
          "createdAt": {
            "type": "string",
            "format": "datetime"
          },
          "derivedFrom": {
            "type": "ref",
            "ref": "com.atproto.repo.strongRef"
          },
          "instructions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxLength": 100
          },
          "intendedToWorkWith": {
            "type": "array",
            "items": {
              "type": "ref",
              "ref": "com.atproto.repo.strongRef"
            },
            "maxLength": 32
          },
          "license": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "maxLength": 256,
            "maxGraphemes": 64
          },
          "parts": {
            "type": "array",
            "items": {
              "type": "ref",
              "ref": "com.atproto.repo.strongRef"
            },
            "maxLength": 1024
          },
          "previews": {
            "type": "array",
            "items": {
              "type": "ref",
              "ref": "space.polymodel.library.defs#image"
            },
            "maxLength": 12
          },
          "summary": {
            "type": "string",
            "maxLength": 2000,
            "maxGraphemes": 300
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 64,
              "maxGraphemes": 32
            },
            "maxLength": 16
          }
        }
      }
    }
  }
}