Catalogue of Life Repackaged and Sorted hash://sha256/7ba03a18029f51f07c73b1dd792a5a7054b1a439b30c20a4b438ed7a84b26e0c hash://md5/f9d660d798d7d81a8a6a204fcba0c350
Authors/Creators
Description
Taxonomic name alignment is a necessary, and often time consuming, task when integration biodiversity datasets for re-use. This publication aims to facilitate fast (e.g., > 1k names/s), offline-enabled, and reproducible, name alignment workflows through the Catalogue of Life by repackaging optimized versions of the wealth of names contained in the Catalogue of Life.
Technical info
# Introduction
The Catalogue of Life [@Banki_2023] is "[...] is an assembly of expert-based global species checklists with the aim to build a comprehensive catalogue of all known species of organisms on Earth. [...]"
This data publication contains a verifiable copy of the Catalogue of Life as well as a reverse sorted version of the NameUsage.tsv table. The aims of this publication are to:
1. provide a signed citation [@Elliott_2023] for a copy of Catalogue of Life
2. prepare Catalogue of Life to be included in the Nomer Corpus of Taxonomic Resources [@Poelen_2023a].
3. pre-process the Catalogue of Life to facilitate optimized indexing and offline taxonomic name alignments using tools like Nomer [@Poelen_2023b].
Overall, the publications aims to facilitate taxonomic name alignment using the wealth of information provided by the Catalogue of Life to help enable fast, reproduceable, offline-enabled alignment of namelists with taxonomic resources of known provenance (or origin).
An example of an application facilitated by this publication is the Taxonomic Name Alignment tool as provided through https://github.com/globalbioticinteractions/name-alignment-template. This template repository implements an automated workflow using GitHub Action to align scientific names in csv/tsv files and darwin core archive with common taxonomic name lists like Catalogue of Life, NCBI Taxonomy, Integrated Taxonomic Information System (ITIS), and GBIF Backbone taxonomy.
## Methods
To capture and process the Catalogue of Life, the following steps were taken:
1. track and archive a copy of Catalogue of Life
2. reverse sort NameUsage.tsv
3. assign an alias to the processed resources
Steps 1-3 are captured and documented using Preston, a biodiversity data tracker. Preston not only helps to documents the steps, but also includes the digital resources that were used and produced.
### Track and Archive
To track and archive a copy of Catalogue of Life, the following command was issued:
~~~
preston track https://download.catalogueoflife.org/col/xr_latest_coldp.zip
~~~
With this, a copy of https://download.catalogueoflife.org/col/xr_latest_coldp.zip is downloaded and their sha256 checksum (or hash) is calculated. Also, the download process is captured machine-readable rdf/nquads statement.
The content id (or sha256 hash) of the copy included in this publication can be found using:
~~~
preston alias \
--anchor hash://sha256/7ba03a18029f51f07c73b1dd792a5a7054b1a439b30c20a4b438ed7a84b26e0c \
--remote https://zenodo.org/deposit/19460413/files \
https://download.catalogueoflife.org/col/xr_latest_coldp.zip \
| head -n1
~~~
and is
~~~
<https://download.checklistbank.org/col/xr_latest_coldp.zip> <http://purl.org/pav/hasVersion> <hash://sha256/2efcf557bb213a26c8035a783c076eb18acd809a90b64cdd278ae5ded0611c13> <urn:uuid:c02514cc-4a51-4fb7-9aae-08ad8d10df5d> .
~~~
meaning that `hash://sha256/2efcf557bb213a26c8035a783c076eb18acd809a90b64cdd278ae5ded0611c13` is the content id (or sha256 hash) of the content produced by `https://download.catalogueoflife.org/col/xr_latest_coldp.zip` at the time this publication was compiled.
### Reverse Sort NameUsage.tsv
The second step was to pre-process (or transform) part of the tracked Catalogue of Life data package and reverse sort their content. We use the following bash script to do this processing:
~~~
(sed -u 1q; LC_ALL=C sort -r) | gzip
~~~
The script first prints the header (i.e., `sed -u 1q`), then reverse sorts the following content (i.e., `LC_ALL=C sort -r`). Finally, the output is compressed using gzip.
This script is part of this data publication, and can be retrieved via:
~~~
preston cat \
--remote https://zenodo.org/record/19460413/files/ \
hash://sha256/03292e3e40a04c565c83debd26ed521516f158a29c011b57a96d1c720c40b6cd
~~~
To help make it easier to reference the script, an alias was created using
~~~
preston alias \
urn:example:reverse-sort.sh \
hash://sha256/03292e3e40a04c565c83debd26ed521516f158a29c011b57a96d1c720c40b6cd
~~
Following the authoring of the reverse sort script, and documenting their alias (i.e. 'urn:example:reverse-sort.sh`), we applied the script to the acquired copy of the Catalogue of Life using:
~~~
preston cat \
--remote https://zenodo.org/record/19460413/files/ \
'zip:hash://sha256/2efcf557bb213a26c8035a783c076eb18acd809a90b64cdd278ae5ded0611c13!/NameUsage.tsv'\
| preston bash\
--anchor hash://sha256/7ba03a18029f51f07c73b1dd792a5a7054b1a439b30c20a4b438ed7a84b26e0c\
--remote https://zenodo.org/record/19460413/files/\
-c urn:example:reverse-sort.sh
~~~
The result of this process was the content identified by sha256 hash
~~~
hash://sha256/1008433bfa5fe7fb059a720eddfe995e18b3e0e8f25ac0c990f1477c177d18cc
~~~
as documented in line 22 of the associated preston processing log in
~~~
preston cat\
--remote https://zenodo.org/record/19460413/files/\
'line:hash://sha256/8ba35deafc847f0d5d69d357241a431b7fd9b6f2735189575b2b7168d523caa9!/L22'
~~~
### Assign An Alias to Processed Resources
The alias 'col:NameUsage.tsv.gz' was defined to help make it easier to point to the result using:
~~~
preston alias\
col:NameUsage.tsv.gz\
hash://sha256/1008433bfa5fe7fb059a720eddfe995e18b3e0e8f25ac0c990f1477c177d18cc
~~~
With this, the following command was executed to list the first three lines of the produced resource:
~~~
preston cat \
--anchor hash://sha256/7ba03a18029f51f07c73b1dd792a5a7054b1a439b30c20a4b438ed7a84b26e0c \
--remote https://zenodo.org/record/19460413/files/ \
col:NameUsage.tsv.gz \
| gunzip \
| head -n3
~~~
Where `preston cat ...` prints the produced resource, `gunzip` uncompresses the result, and the first three lines are selected using `head -n3`.
The result of the operation is shown below:
| col:ID | col:alternativeID | col:nameAlternativeID | col:sourceID | col:parentID | col:basionymID | col:status | col:scientificName | col:authorship | col:rank | col:notho | col:originalSpelling | col:uninomial | col:genericName | col:infragenericEpithet | col:specificEpithet | col:infraspecificEpithet | col:cultivarEpithet | col:combinationAuthorship | col:combinationAuthorshipID | col:combinationExAuthorship | col:combinationExAuthorshipID | col:combinationAuthorshipYear | col:basionymAuthorship | col:basionymAuthorshipID | col:basionymExAuthorship | col:basionymExAuthorshipID | col:basionymAuthorshipYear | col:namePhrase | col:nameReferenceID | col:publishedInYear | col:publishedInPage | col:publishedInPageLink | col:gender | col:genderAgreement | col:etymology | col:code | col:nameStatus | col:accordingToID | col:accordingToPage | col:accordingToPageLink | col:referenceID | col:scrutinizer | col:scrutinizerID | col:scrutinizerDate | col:extinct | col:temporalRangeStart | col:temporalRangeEnd | col:environment | col:species | col:section | col:subgenus | col:genus | col:subtribe | col:tribe | col:subfamily | col:family | col:superfamily | col:suborder | col:order | col:subclass | col:class | col:subphylum | col:phylum | col:kingdom | col:ordinal | col:branchLength | col:link | col:nameRemarks | col:remarks | col:modified | col:modifiedBy | clb:merged |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| zylcJ5C5xwfQ5_i9Ss9 | | | 37384 | KVV3T | | accepted | BOLD:ADE5700 | | unranked | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tenebrionidae | Tenebrionoidea | Polyphaga | Coleoptera | | Insecta | Hexapoda | Arthropoda | Animalia | | | http://bins.boldsystems.org/index.php/Public_BarcodeCluster?clusteruri=BOLD:ADE5700 | | Family names applied to this BIN: Tenebrionidae (1). | | | true |
| z6CIok51k99C3_1pENr | | | 37384 | 7NF3Y | | accepted | BOLD:AAZ3374 | | unranked | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Gastropoda | | Mollusca | Animalia | | | http://bins.boldsystems.org/index.php/Public_BarcodeCluster?clusteruri=BOLD:AAZ3374 | | Order names applied to this BIN: Stylommatophora (1). | | | true |
# Results
As described in our methods, this publication derived the resource with alias col:NameUsage.tsv.gz and content id
```hash://sha256/07ed13f5e9d3e091871cb40d11e4789e92c2453a8a761e6d60556ade24360292``` . This resource contains a reverse-sorted copy of the NameUsage.tsv provided in the Catalogue of Life data package retrieved from https://download.catalogueoflife.org/col/xr_latest_coldp.zip with content identifier `hash://sha256/2efcf557bb213a26c8035a783c076eb18acd809a90b64cdd278ae5ded0611c13`.
The following tools were used to process the Catalogue of Life resource:
| tool name |
| --- |
| [preston](https://github.com/bio-guoda/preston) |
| [bash](https://en.wikipedia.org/wiki/Bash_(Unix_shell)) |
| [gzip](https://en.wikipedia.org/wiki/Gzip) |
| [sed](https://en.wikipedia.org/wiki/Sed) |
| [head](https://en.wikipedia.org/wiki/Head_(Unix)) |
| [sort](https://en.wikipedia.org/wiki/Sort_(Unix)) |
: Tools used in this data publication
# Discussion
This publication is intended to facilitate re-use of the Catalogue of Life data package in taxonomic name alignment workflows. While the primary goal was to generate a resource for use in Nomer v0.6.2 [@Poelen_2023b], other usage can be imagined such as:
1. Lots of Copies Keeps Stuff Safe (LOCKSS [@Maniatis_2005]): keep an identical copy of Catalogue of Life data package outside of the Catalogue of Life infrastructure.
2. demonstrating how data transformation processes can be documented using Preston
3. making a streamable copy of a reverse-sorted copy of Catalogue of Life available via https://zenodo.org/record/19460413/files/07ed13f5e9d3e091871cb40d11e4789e92c2453a8a761e6d60556ade24360292 for use in workflows like looking up the first record that contain _Enhydra lutris_ (Sea otter):
~~~
curl -L 'https://zenodo.org/record/19460413/files/07ed13f5e9d3e091871cb40d11e4789e92c2453a8a761e6d60556ade24360292'\
| gunzip\
| grep "Enhydra lutris"\
| head -n1
~~~
# Acknowledgements
This work stands on the shoulders of contributors to open source software and openly accessible datasets. Thank you!
Files
README.md
Files
(3.9 GB)
| Name | Size | |
|---|---|---|
|
md5:2e5c6ad0a7ed9d39440fe96c25624a54
|
4.2 kB | Download |
|
md5:52742e050f26fbd976c89b41d03bd7e6
|
37 Bytes | Download |
|
md5:228b3b85b0653aafce27117eb3657c3a
|
466.6 MB | Download |
|
md5:7a767c6c69ba1aad610e1464e4699791
|
78 Bytes | Download |
|
md5:3ac4f7368439677472f4c5b78f39a7f8
|
249.7 MB | Download |
|
md5:c004ed7619b27c060fb2647c4308bbb6
|
78 Bytes | Download |
|
md5:d548176bdab6e55bff8c5870a2d54d73
|
78 Bytes | Download |
|
md5:a71288331c96a9deb52784cd1df7e1b3
|
78 Bytes | Download |
|
md5:f13c3e4523a640ecb318022866cfc8dc
|
78 Bytes | Download |
|
md5:f2ee668f734335158e18b36dccd29b22
|
1.4 GB | Download |
|
md5:c39e3cbe35f0ae86acf3e77baeb01bfb
|
2.8 kB | Download |
|
md5:f0f8dc83486d9e02fee1cc8b08030528
|
78 Bytes | Download |
|
md5:c855768414a9cb25608da73ef05aa2dc
|
78 Bytes | Download |
|
md5:35ae97151692572ae9162226d1612c1c
|
4.3 kB | Download |
|
md5:6bf0c01a7399eadc1e884b40816cafef
|
78 Bytes | Download |
|
md5:4762fe5c2ebfdabf555bf50ef861ef9d
|
4.1 kB | Download |
|
md5:a3b90887aecc6755808344ed8c21f7e6
|
2.8 kB | Download |
|
md5:f9d660d798d7d81a8a6a204fcba0c350
|
2.8 kB | Download |
|
md5:393a6beada72f4ae814765aaeaf0bd39
|
4.1 kB | Download |
|
md5:38200d0bd8b59bf236ddd1f15ecfc3da
|
345.8 MB | Download |
|
md5:3666f86a695d88312e6b1861e6063a81
|
78 Bytes | Download |
|
md5:d279aa8e68fa34ede27de535d46a04b1
|
4.0 kB | Download |
|
md5:b2613e0f67093c892691f4df0914520a
|
3.8 kB | Download |
|
md5:6c44ffc9f0b3d32f44fa210ea2316373
|
78 Bytes | Download |
|
md5:a4421eb8f92ec1bbf4ed9f25359be674
|
78 Bytes | Download |
|
md5:ee9d7dc17de0f2f1285a5a375c677c01
|
78 Bytes | Download |
|
md5:07601e1cdd23c6bb3f7b3874dd636f37
|
1.9 kB | Download |
|
md5:9eb7ba8c3e5010c9535c91dc8692679d
|
1.0 GB | Download |
|
md5:facc490d8483f71b325abb8bf1cb1660
|
395.4 MB | Download |
|
md5:882b8744b3ebd5fae371fa659ee52a2b
|
2.7 kB | Download |
|
md5:699290389672021de333d5f300f10554
|
2.7 kB | Download |
|
md5:573f9826ca88dfd3afe11f552e7963b4
|
78 Bytes | Download |
|
md5:0f022c707ccf7dc6274657197b895600
|
4.1 kB | Download |
|
md5:883786539eac11b363423cd58e092162
|
2.8 kB | Download |
|
md5:8bd5452cb7f557867d13e75ed39bcf78
|
11.3 kB | Preview Download |
Additional details
Related works
- Is derived from
- Dataset: 10.48580/dft7 (DOI)