app.2ndscreen.defs

2ndscreen.app

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "artwork": {
      "description": "Optional original color geometry or an image the publisher may redistribute. Not necessarily an official crest. Unknown patterns fall back to the primary color.",
      "properties": {
        "alt": {
          "description": "Concise description of the artwork itself for accessibility.",
          "maxGraphemes": 250,
          "maxLength": 2500,
          "type": "string"
        },
        "colors": {
          "description": "Hex RGB colors including #, in primary, secondary, tertiary, quaternary order.",
          "items": {
            "maxLength": 7,
            "minLength": 7,
            "type": "string"
          },
          "maxLength": 4,
          "minLength": 1,
          "type": "array"
        },
        "image": {
          "accept": [
            "image/png",
            "image/jpeg",
            "image/webp"
          ],
          "description": "Blob stored in this catalog publisher repo, with redistribution permission; not an official account avatar assertion.",
          "maxSize": 1000000,
          "type": "blob"
        },
        "pattern": {
          "knownValues": [
            "sash",
            "stripes",
            "striped-trim",
            "hoops",
            "chevron",
            "halves",
            "trim",
            "sleeves",
            "band",
            "center-stripe",
            "pinstripes",
            "side-panel",
            "quarters",
            "diagonal-half",
            "cross",
            "tiger",
            "bolt"
          ],
          "maxLength": 100,
          "type": "string"
        },
        "provenance": {
          "description": "Origin, rights or attribution information; not accessibility alt text.",
          "maxGraphemes": 250,
          "maxLength": 2500,
          "type": "string"
        }
      },
      "required": [],
      "type": "object"
    },
    "membership": {
      "description": "Competition participation, not team identity. Omitted edition/dates makes no claim about a particular season.",
      "properties": {
        "competition": {
          "description": "Canonical DID-form AT URI of an app.2ndscreen.league record. Validate publisher provenance; cross-publisher traversal requires an explicit supported resolver policy.",
          "format": "at-uri",
          "type": "string"
        },
        "edition": {
          "description": "Publisher/provider edition label; not a permanent identity or sortable value.",
          "maxGraphemes": 100,
          "maxLength": 1000,
          "type": "string"
        },
        "endsAt": {
          "description": "Exclusive end of the membership interval.",
          "format": "datetime",
          "type": "string"
        },
        "startsAt": {
          "description": "Inclusive beginning of the membership interval.",
          "format": "datetime",
          "type": "string"
        }
      },
      "required": [
        "competition"
      ],
      "type": "object"
    },
    "officialAccount": {
      "description": "A claim by this catalog publisher. This does not grant verification or bypass account moderation.",
      "properties": {
        "checkedAt": {
          "description": "When this publisher last checked the public association evidence; not a guarantee of current account status.",
          "format": "datetime",
          "type": "string"
        },
        "did": {
          "format": "did",
          "type": "string"
        },
        "evidence": {
          "description": "HTTPS public sources establishing representation, not merely verification. Consumers must enforce HTTPS before rendering or following links.",
          "items": {
            "format": "uri",
            "maxLength": 2000,
            "type": "string"
          },
          "maxLength": 5,
          "minLength": 1,
          "type": "array"
        },
        "language": {
          "format": "language",
          "type": "string"
        },
        "role": {
          "knownValues": [
            "primary",
            "media",
            "regional"
          ],
          "maxLength": 100,
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "did",
        "role",
        "evidence",
        "checkedAt"
      ],
      "type": "object"
    },
    "providerIdentifier": {
      "properties": {
        "id": {
          "maxLength": 200,
          "minLength": 1,
          "type": "string"
        },
        "provider": {
          "description": "Provider domain, e.g. espn.com. An identifier is not permission to call or redistribute its API.",
          "maxLength": 100,
          "minLength": 1,
          "type": "string"
        },
        "scope": {
          "description": "Namespace in which id is unique, for example an ESPN league path basketball/nba. A sport alone is not generally sufficient.",
          "maxLength": 100,
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "provider",
        "scope",
        "id"
      ],
      "type": "object"
    },
    "side": {
      "description": "Distinguishes sides that share a club or national identity. Omitted fields mean unspecified, never all variants.",
      "properties": {
        "ageGroup": {
          "knownValues": [
            "senior",
            "under-23",
            "under-21",
            "under-20",
            "under-19",
            "under-18"
          ],
          "maxLength": 100,
          "type": "string"
        },
        "discipline": {
          "description": "Adaptive variant of a sport, such as wheelchair. Named sports such as rugby sevens belong in the sport reference, not this field.",
          "knownValues": [
            "standard",
            "wheelchair",
            "intellectual-disability",
            "physical-disability"
          ],
          "maxLength": 100,
          "type": "string"
        },
        "gender": {
          "knownValues": [
            "men",
            "women",
            "mixed",
            "open"
          ],
          "maxLength": 100,
          "type": "string"
        }
      },
      "required": [],
      "type": "object"
    }
  },
  "id": "app.2ndscreen.defs",
  "lexicon": 1
}

Validate Record

Validate a record against app.2ndscreen.defs

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:aeix5u7myob5u3yzlpxggxnu
CID
bafyreicx6gqvh76yrhccoqziy4oxbrec76rh7o2jzncjdoyelwj6aqwfaq
Indexed At
2026-10-13 01:57 UTC
AT-URI
at://did:plc:aeix5u7myob5u3yzlpxggxnu/com.atproto.lexicon.schema/app.2ndscreen.defs

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • A competition or fixture group with a permanent identity, independent of season editions or official accounts.

  • A particular club or representative side. Keys and fan references remain stable across league membership changes.

  • A sport or permanent umbrella topic. Its record URI is its identity, independent of any official account.

Lexicon Garden

@