# app.gainforest.ac.multimedia

> Published by [gainforest.earth](https://lexicon.garden/identity/did:plc:qoti4acfmc5wg6zzmtix6hse)

✓ This is the authoritative definition for this NSID.

## Description

Audubon Core multimedia resource record. Represents a single media item (image, audio, video, spectrogram) associated with a biodiversity occurrence. Based on the TDWG Audiovisual Core standard (http://www.tdwg.org/standards/638). Each media item is a separate record linked to a dwc.occurrence via occurrenceRef.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:qoti4acfmc5wg6zzmtix6hse/app.gainforest.ac.multimedia)
- [Documentation](https://lexicon.garden/lexicon/did:plc:qoti4acfmc5wg6zzmtix6hse/app.gainforest.ac.multimedia/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:qoti4acfmc5wg6zzmtix6hse/app.gainforest.ac.multimedia/examples)

## Definitions

### `app.gainforest.ac.multimedia`

**Type**: `record`

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `file` | `blob` | Yes | The media file blob. Images up to 100MB, audio up to 100MB, video up to 100MB. For PDS-stored compressed versions; original full-res referenced via accessUri. |
| `format` | `string` | No | MIME type of the media file (e.g. image/webp, audio/flac). Should match the blob's actual content type. |
| `caption` | `string` | No | Human-readable description of the media content. |
| `creator` | `string` | No | Name of the person or agent who created the media resource. |
| `siteRef` | `string` (at-uri) | No | AT-URI of the organization site record where this media was captured. |
| `accessUri` | `string` (uri) | No | URI to the original full-resolution media resource (e.g. S3 URL). The PDS blob is a compressed variant; this points to the archival original. |
| `createdAt` | `string` (datetime) | Yes | Timestamp of record creation in the ATProto PDS. |
| `createDate` | `string` (datetime) | No | Date and time the media resource was originally created (e.g. when the photo was taken). |
| `subjectPart` | `string` | Yes | The part of the organism depicted, using TDWG Audubon Core subjectPart controlled values (http://rs.tdwg.org/acpart/values/). Examples: entireOrganism, leaf, bark, flower, fruit, seed, stem, twig, bud, root. |
| `occurrenceRef` | `string` (at-uri) | No | AT-URI of the dwc.occurrence record this media is evidence for. |
| `subjectPartUri` | `string` (uri) | No | Full IRI of the subjectPart term from the TDWG controlled vocabulary. Example: http://rs.tdwg.org/acpart/values/p0002 for bark. |
| `variantLiteral` | `string` | No | AC variant describing the quality/size of this service access point. Values: Thumbnail, Lower Quality, Medium Quality, Good Quality, Best Quality, Offline. |
| `subjectOrientation` | `string` | No | Viewing orientation relative to the subject, using TDWG Audubon Core subjectOrientation controlled values. Examples: dorsal, ventral, lateral, anterior, posterior. |

## Raw Schema

```json
{
  "id": "app.gainforest.ac.multimedia",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "subjectPart",
          "file",
          "createdAt"
        ],
        "properties": {
          "file": {
            "type": "blob",
            "accept": [
              "image/jpeg",
              "image/jpg",
              "image/png",
              "image/webp",
              "image/heic",
              "image/heif",
              "image/tiff",
              "image/tif",
              "image/gif",
              "image/bmp",
              "image/svg+xml",
              "audio/wav",
              "audio/x-wav",
              "audio/mpeg",
              "audio/mp3",
              "audio/mp4",
              "audio/x-m4a",
              "audio/aac",
              "audio/flac",
              "audio/x-flac",
              "audio/ogg",
              "audio/opus",
              "audio/webm",
              "video/mp4",
              "video/quicktime",
              "video/webm",
              "video/x-matroska"
            ],
            "maxSize": 104857600,
            "description": "The media file blob. Images up to 100MB, audio up to 100MB, video up to 100MB. For PDS-stored compressed versions; original full-res referenced via accessUri."
          },
          "format": {
            "type": "string",
            "description": "MIME type of the media file (e.g. image/webp, audio/flac). Should match the blob's actual content type.",
            "maxGraphemes": 128
          },
          "caption": {
            "type": "string",
            "description": "Human-readable description of the media content.",
            "maxGraphemes": 1024
          },
          "creator": {
            "type": "string",
            "description": "Name of the person or agent who created the media resource.",
            "maxGraphemes": 256
          },
          "siteRef": {
            "type": "string",
            "format": "at-uri",
            "description": "AT-URI of the organization site record where this media was captured."
          },
          "accessUri": {
            "type": "string",
            "format": "uri",
            "description": "URI to the original full-resolution media resource (e.g. S3 URL). The PDS blob is a compressed variant; this points to the archival original.",
            "maxGraphemes": 2048
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "Timestamp of record creation in the ATProto PDS."
          },
          "createDate": {
            "type": "string",
            "format": "datetime",
            "description": "Date and time the media resource was originally created (e.g. when the photo was taken)."
          },
          "subjectPart": {
            "type": "string",
            "description": "The part of the organism depicted, using TDWG Audubon Core subjectPart controlled values (http://rs.tdwg.org/acpart/values/). Examples: entireOrganism, leaf, bark, flower, fruit, seed, stem, twig, bud, root.",
            "knownValues": [
              "entireOrganism",
              "leaf",
              "bark",
              "flower",
              "fruit",
              "seed",
              "stem",
              "twig",
              "bud",
              "root",
              "head",
              "wing",
              "shell",
              "unspecifiedPart"
            ],
            "maxGraphemes": 128
          },
          "occurrenceRef": {
            "type": "string",
            "format": "at-uri",
            "description": "AT-URI of the dwc.occurrence record this media is evidence for."
          },
          "subjectPartUri": {
            "type": "string",
            "format": "uri",
            "description": "Full IRI of the subjectPart term from the TDWG controlled vocabulary. Example: http://rs.tdwg.org/acpart/values/p0002 for bark."
          },
          "variantLiteral": {
            "type": "string",
            "description": "AC variant describing the quality/size of this service access point. Values: Thumbnail, Lower Quality, Medium Quality, Good Quality, Best Quality, Offline.",
            "knownValues": [
              "Thumbnail",
              "Lower Quality",
              "Medium Quality",
              "Good Quality",
              "Best Quality",
              "Offline"
            ],
            "maxGraphemes": 64
          },
          "subjectOrientation": {
            "type": "string",
            "description": "Viewing orientation relative to the subject, using TDWG Audubon Core subjectOrientation controlled values. Examples: dorsal, ventral, lateral, anterior, posterior.",
            "maxGraphemes": 128
          }
        }
      }
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "description": "Audubon Core multimedia resource record. Represents a single media item (image, audio, video, spectrogram) associated with a biodiversity occurrence. Based on the TDWG Audiovisual Core standard (http://www.tdwg.org/standards/638). Each media item is a separate record linked to a dwc.occurrence via occurrenceRef."
}
```
