Bases: BaseProcessor

Processor for URSA tissue annotations.

URSA provides expert-curated UBERON/CL tissue term IDs for GEO samples. The source file is a headerless CSV with columns: sample_id, study_id, term_id.

process(output_dir, **kwargs)

Process the URSA CSV into standardized sample annotations.

Parameters:
  • output_dir (Path) –

    Directory where the processed parquet file will be written.

  • **kwargs (Any, default: {} ) –

    input_path (Path | str) — override the default URSA CSV input path (defaults to URSA_CSV from config).

Returns:
  • DataFrame

    Standardized annotations with columns sample_id, annotation_type, term_id, term_label, and ecode.

validate(data)

Validate processed URSA data.

Parameters:
  • data (DataFrame) –

    Processed annotations DataFrame to validate.

Returns:
  • bool

    True if validation passes.

Raises: