# org.shelfcheck.defs

> Published by [nowell.strite.org](https://lexicon.garden/identity/did:plc:wjr7uktrlvrqbgkbdp3svmjw)

✓ This is the authoritative definition for this NSID.

## Description

Shared definitions for the org.shelfcheck.* lexicon: status tokens, book identifiers, and structured author references.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:wjr7uktrlvrqbgkbdp3svmjw/org.shelfcheck.defs)
- [Documentation](https://lexicon.garden/lexicon/did:plc:wjr7uktrlvrqbgkbdp3svmjw/org.shelfcheck.defs/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:wjr7uktrlvrqbgkbdp3svmjw/org.shelfcheck.defs/examples)

## Definitions

### `org.shelfcheck.defs#bookIds`

**Type**: `object`

Identifiers correlating a book across catalogs. At least one identifier should be present, with olWorkId preferred.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `hiveId` | `string` | No | BookHive canonical book id, present when imported from a buzz.bookhive.book record. |
| `isbn10` | `string` | No |  |
| `isbn13` | `string` | No |  |
| `olWorkId` | `string` | No | Open Library Work ID, e.g. 'OL45883W'. Edition-independent. Primary correlation key. |
| `goodreadsId` | `string` | No |  |

### `org.shelfcheck.defs#reading`

**Type**: `token`

The user is currently reading this book.

The user is currently reading this book.

### `org.shelfcheck.defs#finished`

**Type**: `token`

The user has finished reading this book.

The user has finished reading this book.

### `org.shelfcheck.defs#abandoned`

**Type**: `token`

The user started but did not finish, and has stopped.

The user started but did not finish, and has stopped.

### `org.shelfcheck.defs#authorRef`

**Type**: `object`

Structured reference to an author of a book.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `name` | `string` | Yes |  |
| `olAuthorKey` | `string` | No | Open Library author key, e.g. 'OL23919A'. |

### `org.shelfcheck.defs#wantToRead`

**Type**: `token`

The user wants to read this book.

The user wants to read this book.

## Raw Schema

```json
{
  "id": "org.shelfcheck.defs",
  "defs": {
    "bookIds": {
      "type": "object",
      "properties": {
        "hiveId": {
          "type": "string",
          "maxLength": 64,
          "description": "BookHive canonical book id, present when imported from a buzz.bookhive.book record."
        },
        "isbn10": {
          "type": "string",
          "maxLength": 13
        },
        "isbn13": {
          "type": "string",
          "maxLength": 17
        },
        "olWorkId": {
          "type": "string",
          "maxLength": 64,
          "description": "Open Library Work ID, e.g. 'OL45883W'. Edition-independent. Primary correlation key."
        },
        "goodreadsId": {
          "type": "string",
          "maxLength": 64
        }
      },
      "description": "Identifiers correlating a book across catalogs. At least one identifier should be present, with olWorkId preferred."
    },
    "reading": {
      "type": "token",
      "description": "The user is currently reading this book."
    },
    "finished": {
      "type": "token",
      "description": "The user has finished reading this book."
    },
    "abandoned": {
      "type": "token",
      "description": "The user started but did not finish, and has stopped."
    },
    "authorRef": {
      "type": "object",
      "required": [
        "name"
      ],
      "properties": {
        "name": {
          "type": "string",
          "maxLength": 256
        },
        "olAuthorKey": {
          "type": "string",
          "maxLength": 64,
          "description": "Open Library author key, e.g. 'OL23919A'."
        }
      },
      "description": "Structured reference to an author of a book."
    },
    "wantToRead": {
      "type": "token",
      "description": "The user wants to read this book."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "description": "Shared definitions for the org.shelfcheck.* lexicon: status tokens, book identifiers, and structured author references."
}
```
