Linking data management systems to analytics is an important step in breeding digitalization. Breeders can use this R package to Query the Breeding Management System(s) like BMS, BreedBase, and GIGWA (using BrAPI calls) and help them to retrieve phenotypic and genotypic data directly into their analyzing pipelines developed in R statistical environment.
Well, because Breedbase supports the
BrAPI standard, most of the QBMS functionalities work
smoothly with minor changes. For example, you need to give special
attention to the
set_qbms_config parameters (check the
example below). Currently, some functions are not supported when working
with BreedBase, like
Breedbase is a comprehensive breeding management and analysis software. It can be used to design field layouts, collect phenotypic information using tablets, support the collection of genotyping samples in a field, store large amounts of high density genotypic information, and provide Genomic Selection related analyses and predictions.
The Breeding API (BrAPI) project is an effort to enable interoperability among plant breeding databases. BrAPI is a standardized RESTful web service API specification for communicating plant breeding data. This community driven standard is free to be used by anyone interested in plant breeding data management.
You can find a set of Breedbase based servers available for several crops and accessible with no authentication required are listed at the BrAPI website on the following page under the group of Boyce Thompson Institute (BTI), discovery and innovation in the life sciences: https://brapi.org/servers.
# load the QBMS library library(QBMS) # Cassava BreedBase server set_qbms_config("https://cassavabase.org/brapi/v1/calls/", time_out = 300, no_auth = TRUE, engine = "breedbase") # list supported crops in the current BreedBase server list_crops() # select a crop by name set_crop("Cassava") # list all breeding programs in the selected crop list_programs() # select a breeding program by name set_program("IITA") # list all studies/trials in the selected program list_trials() # select a specific study/trial by name set_trial("20_Abuja") # get observation variable ontology in the selected study/trial get_trial_obs_ontology() # list all environments/locations information in the selected study/trial list_studies() # select a specific environment/location by name set_study("20NCRP12yrtAB") # another option, select a specific study by location name (first match) # studies <- list_studies() # set_study(studies[studies$locationName == "Abuja", "studyName"]) # retrieve general information, data, and germplasm list # of the selected environment/location <- get_study_info() info <- get_study_data() data <- get_germplasm_list() germplasm # retrieve multi-environment trial data of the selected study/trial <- get_trial_data()MET