ch.openlegal.annotation

martingajdos.ch

{
  "id": "ch.openlegal.annotation",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "target",
          "motivation",
          "createdAt"
        ],
        "properties": {
          "body": {
            "refs": [
              "ch.openlegal.defs#textBody",
              "app.bsky.embed.external",
              "app.bsky.embed.record"
            ],
            "type": "union",
            "closed": false,
            "description": "The annotation content (WADM body): inline text (with richtext), or an embedded external/record resource. Absent for a bare highlight."
          },
          "reply": {
            "ref": "com.atproto.repo.strongRef",
            "type": "ref",
            "description": "For threaded annotations: the parent ch.openlegal.annotation being replied to (WADM replying / AS2 inReplyTo)."
          },
          "target": {
            "ref": "ch.openlegal.defs#target",
            "type": "ref",
            "description": "What is being annotated (WADM target — source + selector + version)."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "When the annotation was created (WADM created)."
          },
          "motivation": {
            "type": "string",
            "description": "Why the annotation exists (WADM motivation).",
            "knownValues": [
              "commenting",
              "highlighting",
              "describing",
              "classifying",
              "linking",
              "editing",
              "assessing",
              "questioning",
              "replying"
            ]
          }
        }
      }
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "description": "An annotation of a legal document, modelled on the W3C Web Annotation Data Model (dokieli-flavoured) and expressed as an AT Protocol record. The creator is the record's repo (DID); collaboration is per-repo (each annotator holds their own records, aggregated by an AppView). Composes app.bsky.richtext + app.bsky.embed rather than forking them."
}

Validate Record

Validate a record against ch.openlegal.annotation

Validation Options
Automatically resolve and include external schemas for full validation
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:63agxubxktwdumdrwhegyk2h
CID
bafyreiechn5qp4q65ndzhr2ofsqzot6yyfn37yftz5rwg73dlqc7tximpu
Indexed At
2026-07-20 14:37 UTC
AT-URI
at://did:plc:63agxubxktwdumdrwhegyk2h/com.atproto.lexicon.schema/ch.openlegal.annotation

Referenced Schemas (4)

Lexicon Garden

@