# ink.resenha.feed.comment

> A comment on a reader's book record, or a reply to such a comment: the conversation about a reader reading a book, for activities in Resenha's Feed that have no post to reply to. One subject per book per reader, so comments on their starting and finishing it are one thread. Written in the commenter's account; Resenha's server threads them and tells the reader.

- Kind: record
- Record key: tid
- Authority: feed.resenha.ink
- Lexicon: 1
- Published by [resenha.ink](https://lexicon.garden/identity/did:plc:v7itjf4h3sb5zuegiiskctqb), not the NSID's authority

## Links

- [Documentation](https://lexicon.garden/lexicon/did:plc:v7itjf4h3sb5zuegiiskctqb/ink.resenha.feed.comment)
- [Schema JSON](https://lexicon.garden/lexicon/did:plc:v7itjf4h3sb5zuegiiskctqb/ink.resenha.feed.comment/schema.json)
- [Analytics](https://lexicon.garden/lexicon/did:plc:v7itjf4h3sb5zuegiiskctqb/ink.resenha.feed.comment/analytics)

## Record (`ink.resenha.feed.comment`)

Type: record · key tid

### Properties

- `book` (ref): The book the thread is about, in every key anyone uses, beside the record the subject names.
  - Reference: `ink.resenha.defs#bookRef`
- `createdAt` (string · datetime, required)
- `langs` (array)
  - Constraints: maxLength: 3
  - `items` (string · language)
- `reply` (ref): Present on a reply to another comment.
  - Reference: `#replyRef`
- `subject` (ref, required): The reader's book record the thread is about, for a reply too.
  - Reference: `com.atproto.repo.strongRef`
- `text` (string, required)
  - Constraints: maxLength: 10000, maxGraphemes: 1000

## #replyRef (`ink.resenha.feed.comment#replyRef`)

Type: object

### Properties

- `parent` (ref, required): The comment being answered.
  - Reference: `com.atproto.repo.strongRef`
- `root` (ref, required): The first comment of the thread.
  - Reference: `com.atproto.repo.strongRef`

## Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "key": "tid",
      "record": {
        "properties": {
          "book": {
            "description": "The book the thread is about, in every key anyone uses, beside the record the subject names.",
            "ref": "ink.resenha.defs#bookRef",
            "type": "ref"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "langs": {
            "items": {
              "format": "language",
              "type": "string"
            },
            "maxLength": 3,
            "type": "array"
          },
          "reply": {
            "description": "Present on a reply to another comment.",
            "ref": "#replyRef",
            "type": "ref"
          },
          "subject": {
            "description": "The reader's book record the thread is about, for a reply too.",
            "ref": "com.atproto.repo.strongRef",
            "type": "ref"
          },
          "text": {
            "maxGraphemes": 1000,
            "maxLength": 10000,
            "type": "string"
          }
        },
        "required": [
          "subject",
          "text",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "replyRef": {
      "properties": {
        "parent": {
          "description": "The comment being answered.",
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        },
        "root": {
          "description": "The first comment of the thread.",
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        }
      },
      "required": [
        "root",
        "parent"
      ],
      "type": "object"
    }
  },
  "description": "A comment on a reader's book record, or a reply to such a comment: the conversation about a reader reading a book, for activities in Resenha's Feed that have no post to reply to. One subject per book per reader, so comments on their starting and finishing it are one thread. Written in the commenter's account; Resenha's server threads them and tells the reader.",
  "id": "ink.resenha.feed.comment",
  "lexicon": 1
}
```
