Expand description
Utilities for working with DOIs
This module provides functionality for:
- Validating, normalizing and escaping DOIs
- Encoding and decoding DOI identifiers
- Checking DOI registration status
- Working with DOI prefixes and registration agencies
- Generating DOIs for specific blogging platforms like WordPress and Substack
Functions§
- decode_
doi - Decodes a DOI suffix to an integer
- doi_
resolver - Returns a DOI resolver for a given DOI
- encode_
doi - Encodes a DOI with a randomly generated suffix
- encode_
doi_ suffix - Percent-encode characters that are valid in DOI suffixes but forbidden
unencoded in RFC 3986 URI paths. Covers brackets used by legacy schemes
(e.g. SICI – Serial Item and Contribution Identifier, NISO Z39.56) and
angle brackets used as structural delimiters in SICI suffixes such as
10.1206/0003-0090(2003)277<0001:TSSAAA>2.0.CO;2. - escape_
doi - Escapes a DOI, i.e. replaces ‘/’ with ‘%2F’
- get_
doi_ ra_ sync - Look up the registration agency for a DOI prefix (blocking).
- is_
registered_ doi - Checks if a DOI resolves (i.e. redirects) via the DOI handle servers
- normalize_
doi - Normalizes a DOI
- prefix_
from_ url - Extracts DOI prefix from URL
- validate_
doi - Validates a DOI
- validate_
prefix - Validates a DOI prefix for a given DOI