The purpose of this BEP is to add populationAbundance(TAX:
A populationAbundance function would allow biologists and toxicologists to capture population changes in a taxon, e.g., a species, subspecies, or phylum, OR a cell population, e.g. adipocytes, epithelial, muscle cells. There is currently no way to capture this information using BEL 2.0.0. This would be especially useful for microbiome, cell biology and ecology/toxicology.
Authors: William Hayes ([email protected])
Type: Standards Track
Population abundance is not currently captured by the BEL Language. In order to support microbiome, environmental biologists, toxicologists, and others, BEL needs the ability to describe effects on entire populations of organisms and cells.
Adding a populationAbundance() function would allow capturing Taxon and Cell population level changes due to environment or treatments.
# Penicillin decreases the population of Streptococcus entericus a(CHEBI:penicillin) decreases pop(TAX:1123302) # California Mule Deer increases population of gray wolves pop(TAX:598490) increases pop(TAX:9612) # Firmicutes bacteria increases obesity pop(TAX:1239) increases path(MESH:Obesity) # A heterogeneous population of microbiome bacteria composite(pop(TAX:xxxx), pop(TAX:yyyy)) increases ... # A drug decreases the population of adipocytes a(CHEBI:metformin) decreases pop(MESH:"Adipocytes, White") # P. falciparum invasion of RBCs increases malaria complex(pop(NCBI:txid5833), pop(CL:erythrocyte)) increases path(DO:malaria) #S. typhimurium in complex with L-ficolin (an opsonin) enhances phagocytosis [PMID:8576206] complex(pop(NCBI:txid90371), p(HGNC:FCN2)) increases bp(GO:phagocytosis)
The new language feature is:
composite(pop(), pop(), …)
translocation(pop(), fromLoc(), toLoc() )
pop(MESH:”Adipocytes, White”, loc())
Taxon is currently supported by the BEL.bio API using the NCBI Taxonomy (TAX) namespace. Cell is supported by CELL, part of MESH and other Cell-tagged namespaces
This proposed feature is for 2.0.0+ and will be added to the language so does not require any efforts to migrate older BEL knowledge.
The reference implementation will target the next minor point release of the BEL language after approval (e.g. 2.1.0) and will consist of adding the populationAbundance() function to the BEL Specification yaml file.
functions: info: populationAbundance: type: primary abbreviation: pop categories: - abundance description: Denotes the abundance of a taxon. name: populationAbundance signatures: populationAbundance: func_type: primary name: populationAbundance signatures: - arguments: - type: NSArg position: 1 values: - Species - Cell - optional: true type: Modifier values: - location translocation: func_type: primary name: translocation signatures: - arguments: - type: Function position: 1 values: - proteinAbundance - rnaAbundance - microRNAAbundance - complexAbundance - populationAbundance - type: Modifier position: 2 values: - fromLoc - type: Modifier position: 3 values: - toLoc compositeAbundance: func_type: primary name: compositeAbundance notes: Cannot embed a composite function inside a compositeAbundance function, you can use named complexes inside composite functions signatures: - arguments: - multiple: true optional: true type: Function values: - abundance - activity - proteinAbundance - geneAbundance - microRNAAbundance - rnaAbundance - complexAbundance - populationAbundance - multiple: true optional: true type: NSArg values: - Complex complexAbundance: description: | Can have multiple, named complexes (Entities of entity_type: Complex) as well as multiple abundance or proteinAbundance function arguments with a location Modifier. func_type: primary name: complexAbundance notes: | Cannot embed a complex function inside a complexAbundance function, you can use named complexes inside complex functions signatures: - arguments: - multiple: true optional: true type: Function values: - abundance - proteinAbundance - geneAbundance - microRNAAbundance - rnaAbundance - populationAbundance - multiple: true optional: true type: NSArg values: - Complex - optional: true type: Modifier values: - location