TaxonWorks (http://taxonworks.org) is an integrated workbench for taxonomists and biodiversity scientists. It is designed to capture, organize, and enrich data, share and refine it with collaborators, and package it for analysis and publication. It is based on PostgreSQL (database) and the Ruby-on-Rails programming language and framework for developing web applications (https://github.com/SpeciesFileGroup/taxonworks). The TaxonWorks community is built around an open software ecosystem that facilitates participation at many levels. TaxonWorks is designed to serve both researchers who create and curate the data, as well as technical users, such as programmers and informatics specialists, who act as data consumers. TaxonWorks provides researchers with robust, user friendly interfaces based on well thought out customized workflows for efficient and validated data entry. It provides technical users database access through an application programming interface (API) that serves data in JSON format. The data model includes coverage for nearly all classes of data recorded in modern taxonomic treatments primary studies of biodiversity, including nomenclature, bibliography, specimens and collecting events, phylogenetic matrices and species descriptions, etc. The nomenclatural classes are based on the NOMEN ontology (https://github.com/SpeciesFileGroup/nomen).
more »
« less
What Can You Do with a TaxonWorks API?
TaxonWorks is a web-based workbench facilitating curation of a broad cross-section of biodiversity informatics concepts. Its development is currently led by the Species File Group. TaxonWorks has a large, JSON serving, application programming interface (API). This API is slowly being exposed for external use. The API is documented at https://api.taxonworks.org. Here we highlight some existing key features of the API focusing on the TaxonWorks concepts of People, Sources, Collection Objects, Taxon Names, and Downloads and provide a brief roadmap for upcoming additions. Highlights include the ability for data curators to produce shareable bibliographies, DarwinCore Archives (DwC-A), and Catalogue of Life-formatted datasets, access their nomenclature as autocompletes and via many filter facets, share Person metadata including numerous identifier types, and perform basic Geo-JSON and simple DwC-A parameter-based filtering on Collection Objects. As examples of what can be done with the API, we provide several visualizations that are straightforward to implement by those with basic R, Python, Javascript, or Ruby programming skills.
more »
« less
- Award ID(s):
- 1639601
- PAR ID:
- 10204785
- Date Published:
- Journal Name:
- Biodiversity Information Science and Standards
- Volume:
- 4
- ISSN:
- 2535-0897
- Format(s):
- Medium: X
- Sponsoring Org:
- National Science Foundation
More Like this
-
-
Compilation and retrieval of reliable data on biological interactions is one of the critical bottlenecks affecting efficiency and statistical power in testing ecological theories. TaxonWorks, a web-based workbench, can facilitate such research by enabling the digitization of complex biological interactions involving multiple species, individuals, and trophic levels. These data can be further organized into spatial and temporal axes, and annotated at the level of individual or grouped interactions (e.g. singularly citing the combined elements of a tritrophic interaction). The simple, customizable nature of tools ultimately reduces the time-consuming steps of data gathering, cleaning, and formatting of datasets for subsequent exploration and analysis while also improving the asserted semantics. An example use case is provided with a dataset of associations among plants, pathogens and insect vectors. The curated data are accessed through the JSON serving TaxonWorks API (Application Programming Interface) by an R package. Analysis and visualization of the network graphs persisted in TaxonWorks is demonstrated using core R functionality and the igraph package (Csardi and Nepusz 2006). TaxonWorks is open-source, collaboratively built software available at http://taxonworks.org.more » « less
-
TaxonWorks is an integrated web-based application for practicing taxonomists and biodiversity specialists. It is focused on promoting collaboration between researchers and developers. TaxonWorks has a modular structure that enables various components of the application to target specific needs and requirements of different groups of users. Specific areas of interest may include nomenclature-related tasks (Yoder and Dmitriev 2021) designed to help assemble and validate scientific name checklists of a target group of organisms; and collection management tasks, including interfaces to create, filter, and edit collecting events, collection objects, and loans. This presentation focuses on matrix-related tools integrated into TaxonWorks. A matrix, which could either be used for phylogenetic analysis or to build an identification key, is structured as a table where columns represent numerous characters that could be used to describe a set of entities, taxa or specimens (presented as rows of the table). Each cell of the table may contain observations for specific character/entity combinations. TaxonWorks does not generate a table for each a particular matrix—all observations are stored as graphs. This structure allows building of a matrix of an unlimited size as well as reuse of individual observations in multiple matrices. For matrix columns, TaxonWorks supports a variety of different kinds of characters or descriptors: qualitative, presence/absence, quantitative, sample, gene, free text, and media. Each character may have specific properties, for example a qualitative descriptor may have numerous characters states, and a quantitative descriptor may have a measurement unit defined. For an entity in a matrix row, TaxonWorks supports either collection objects (specimens) or taxa as Operational Taxonomic Units (OTU). OTUs could either be linked to nomenclature or be stand alone entities (e.g., representing undescribed species). The matrix, once built, could serve several purposes. A matrix based on qualitative and quantitative characters could be used to build an interactive key (Fig. 1), construct standardized natural language descriptions for each entity, and determine a diagnosis (a minimal set of characters that separate one entity from all others). It could also be exported and used for phylogenetic analysis or to build an interactive key in an external application. TaxonWorks supports export files in several formats, including Nexus, TNT, NeXML. Application Programming Interfaces (API) are also available. A matrix based on media descriptors could be used as a pictorial identification tool (Fig. 2).more » « less
-
Many newcomers to programming and computational thinking have been brought up on interactive, gamified learning environments. Introductory computer science courses at the university level need to dig deeper into these topics, but must do so with similarly engaging technologies and projects. To address this need, we have built a framework for a grid-based game API with event-based blocking and continuous non-blocking interfaces. The framework abstracts away much of the complexity of inputs and rendering and exposes a simple game grid similar to a 2D array indexed by rows and columns. As such, our project helps reinforce basic computing concepts (arrays, loops, OOP, recursion) with a customizable and engaging game interface. We have discussed the valuable influence of visual representations of student's data structures using BRIDGES in previous publications, and believe our game API can provide significance and intrigue for students in introductory courses and beyond. Our Bridges Games App website (http://bridges-games.herokuapp.com/) presents descriptions and instructions.more » « less
-
The purpose of the GraphBLAS Forum is to standardize linear-algebraic building blocks for graph computations. An important part of this standardization effort is to translate the mathematical specification into an actual Application Programming Interface (API) that (i) is faithful to the mathematics and (ii) enables efficient implementations on modern hardware. This paper documents the approach taken by the C language specification subcommittee and presents the main concepts, constructs, and objects within the GraphBLAS API. Use of the API is illustrated by showing an implementation of the betweenness centrality algorithm.more » « less
An official website of the United States government

