---
id: "isbn10"
kind: "datatype"
status: "stable"
is_pii: false
categories: ["objectids", "publishing"]
langs: ["common"]
quality: 90
url: "http://registry.apicrafter.io/datatype/isbn10"
---

# International Standard Book Number 10-digits (ISBN10) (`isbn10`)

10-digit International Standard Book Number, used for books published before 2007. The last character is a check digit (0-9 or X).

- Parent datatype: `isbn`
- Personal data (PII): no
- Categories: Objects identifiers (objectids), Publishing and print (publishing)
- Countries: global
- Languages: Common to most languages (common)
- Classification: identifier

## Detection

Regular expression (Python `re`):

```
^(?:\d[- ]?){9}[\dX]$
```

Check digit algorithm: `isbn10`

## Examples

- `0-521-29366-9` — Hamlet, Prince of Denmark
- `0-521-22151-X` — Hamlet, Prince of Denmark

## Mappings

- autotype: `isbn`
- bioregistry: `isbn`
- schema_org: `isbn`
- stdnum: `isbn`
- wikidata: `P957`

## Metacrafter rules

4 rules: 1 match the field name, 3 match values.

- `isbn10field` (field, `common/objects.yaml`)
- `isbn10value` (data, `common/objects.yaml`)
- `isbn10valuewithdashes` (data, `common/objects.yaml`)
- `isbn10` (data, `ext/ext_objects.yaml`)

## Supported by tools

- `autotype`
- `collibra`
- `dataprep`
- `greatexpectations`
- `ibmknowledgecatalog`
- `metacrafter`
- `metacrafterpro`
- `pythonstdnum`
- `talend`

## Sources

- wikipedia: <https://en.wikipedia.org/wiki/International_Standard_Book_Number>
- wikidata: <https://www.wikidata.org/wiki/Property:P957>

## Quality

Score 90/100. Missing: negative example, translation.

JSON: <http://registry.apicrafter.io/api/v1/datatypes/isbn10.json> · Edit: <https://github.com/apicrafter/metacrafter-registry/edit/main/data/datatypes/any/objectids/isbn10.yaml>
