Repository navigation
Expand file tree
/
Copy pathcodemeta.json
More file actions
82 lines (82 loc) · 3.77 KB
/
Copy pathcodemeta.json
File metadata and controls
82 lines (82 loc) · 3.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
{
"@context": "https://w3id.org/codemeta/4.0",
"type": "SoftwareSourceCode",
"codeRepository": "https://github.com/caltechlibrary/crossrefapi",
"author": [
{
"id": "https://orcid.org/0000-0003-0900-6903",
"type": "Person",
"givenName": "Robert",
"familyName": "Doiel",
"affiliation": {
"type": "Organization",
"name": "Caltech Library"
},
"email": "rsdoiel@caltech.edu"
}
],
"contributor": [
{
"id": "https://orcid.org/0000-0002-7984-9554",
"type": "Person",
"givenName": "Louis",
"familyName": "Duchemin",
"affiliation": {
"type": "Organization",
"name": "Claude Bernard University"
}
}
],
"maintainer": [
{
"id": "https://orcid.org/0000-0003-0900-6903",
"type": "Person",
"givenName": "Robert",
"familyName": "Doiel",
"affiliation": {
"type": "Organization",
"name": "Caltech Library"
},
"email": "rsdoiel@caltech.edu"
},
{
"id": "https://orcid.org/0000-0001-9266-5146",
"type": "Person",
"givenName": "Thomas E",
"familyName": "Morrell",
"affiliation": {
"type": "Organization",
"name": "Caltech Library"
},
"email": "tmorrell@caltech.edu"
}
],
"dateCreated": "2018-07-05",
"dateModified": "2026-10-26",
"datePublished": "2026-10-26",
"description": "A Golang package and command line tool for working with the public CrossRef API, with a text layer that turns CrossRef titles and abstracts into plain text and repository-safe HTML",
"keywords": [
"CrossRef",
"DOI",
"metadata"
],
"name": "crossrefapi",
"license": "https://software.library.caltech.edu/crossrefapi/LICENSE",
"programmingLanguage": [
"Go >= 1.27.1"
],
"operatingSystem": [
"Linux",
"macOS",
"Windows"
],
"softwareRequirements": [
"Go >= 1.27.1",
"Pandoc (man pages)"
],
"version": "1.1.0",
"developmentStatus": "active",
"issueTracker": "https://github.com/caltechlibrary/crossrefapi/issues",
"downloadUrl": "https://github.com/caltechlibrary/crossrefapi/releases",
"releaseNotes": "v1.1.0 adds a text layer for CrossRef titles and abstracts. Nothing that existed changes.\n\nAdded:\n- `PlainText(s)`: a title fragment as plain Unicode text. Tags are removed, entities decoded, subscripts and MathML formulas converted, and the layout whitespace publishers add around markup tidied.\n- `(*Message).FullTitle()` and `(*Message).AlternateTitles()`: the title and subtitle as plain text (the subtitle left out when empty or already in the title), and the record's other titles. No language is guessed.\n- `HTMLAbstract(s)` and `(*Message).HTMLAbstract()`: a JATS abstract as HTML that Invenio RDM's sanitizer keeps, with MathML as TeX in `\\( ... \\)`, the leading \"Abstract\" heading and copyright text dropped, attributes stripped and links limited to http, https, mailto and relative addresses.\n- `Normalizer` and `NewNormalizer(path)`: the same conversions with an override of the embedded symbol table (`symbols.json`). A Normalizer never changes after it is built, so it can be shared between goroutines.\n- `Warning` and its codes (`parse-fallback`, `script-unmapped`, `math-linear`, `math-unconverted`, `multiple-titles`): what could not be converted cleanly, returned beside the best text available.\n- A user guide (docs/text_normalization.md), a package overview and runnable examples.\n\nNotes:\n- Whitespace around markup is a heuristic, chosen on real CrossRef records; the guide lists the rules and their known limits.\n- The TeX in an abstract needs MathJax, or another renderer that reads the `\\( ... \\)` delimiters, on the page that shows it.\n- The tests use captured CrossRef responses in testdata/ and run offline."
}