Skip to content

feat: ranking & filtering support for biolink:statistical_significance_qualifier #134

Description

@SkyeAv

Summary

Add support for the new biolink:statistical_significance_qualifier across Shepherd so incorporated ARAs can rank and filter on it:

  1. Ranking — treat the qualifier as an additive scoring signal.
    • aragorn_score (primary goal — Aragorn's live ranker; Shepherd-specific, no RTX analog).
    • arax_rank (keep Shepherd's dict-based port of ARAX_ranker.py in sync with the equivalent RTX change).
  2. Filtering — a new shared filter_edges_by_statistical_significance operation (worker + shepherd_utils helper) that removes KG edges whose significance band falls below a minimum_significance threshold, wired into the Aragorn pipeline.

Why

biolink-model added a standardized statistical significance qualifier (enum StatisticalSignificanceQualifierEnum: very_strongly_significant / strongly_significant / significant / suggestive / not_significant) on the root association class. As KPs/Retriever begin populating it, Shepherd ARAs should prioritize and be able to filter on well-supported evidence.

Dependencies / related

Key assumptions

  • Because the qualifier is_a: statement_qualifier (a descendant of qualifier), BMT/Retriever will most likely deliver it in edge.qualifiers[]; some KPs may send it as an edge.attributes[] entry. We check both locations.
  • Rollout is incremental, so edges without the qualifier are neither penalized in ranking nor removed by the filter (only edges that explicitly carry a below-threshold band are removed).
  • Numeric p-values remain authoritative; the qualifier is a conservative additive companion.

Implementation plan + drafted issue comments live in PLAN.md on branch feat/implement-ranking-logic-for-the-statistical-significance-qualifier.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions