mirror of
https://github.com/metabarcoding/obitools4.git
synced 2026-04-30 03:50:39 +00:00
⬆️ version bump to v4.5
- Update obioptions.Version from "Release 4.4.29" to "/v/ Release v5" - Update version.txt from 4.29 → .30 (automated by Makefile)
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
# Semantic Description of `obiseq` Package Functionalities
|
||||
|
||||
This Go package provides **sequence filtering predicates** for biological sequences, integrated with taxonomic validation and hierarchy analysis.
|
||||
|
||||
- `IsAValidTaxon(taxonomy, ...bool) SequencePredicate`:
|
||||
Returns a predicate that checks whether a sequence has an associated valid taxon in the given taxonomy.
|
||||
Optionally supports *auto-correction* of outdated/incorrect `taxid` values to match the current taxonomy node.
|
||||
|
||||
- `IsSubCladeOf(taxonomy, parent) SequencePredicate`:
|
||||
Filters sequences whose taxonomic assignment is a descendant (sub-clade) of the specified `parent` taxon.
|
||||
|
||||
- `IsSubCladeOfSlot(taxonomy, key) SequencePredicate`:
|
||||
Enables filtering based on a *sequence attribute* (e.g., `"taxon"` or `"classification"`) that holds a taxonomic label.
|
||||
Validates the label against the taxonomy, then checks if the sequence’s assigned taxon falls under it.
|
||||
|
||||
- `HasRequiredRank(taxonomy, rank) SequencePredicate`:
|
||||
Ensures the sequence’s taxon is assigned at or below a specified rank (e.g., `"species"`, `"genus"`).
|
||||
Validates the requested `rank` against taxonomy’s rank list; exits on invalid input.
|
||||
|
||||
All predicates follow a functional, composable design pattern (`SequencePredicate = func(*BioSequence) bool`), enabling flexible pipeline construction (e.g., filtering, classification validation).
|
||||
Reference in New Issue
Block a user