Output Interpretation¶
Every profiling run produces an HTML report. You can also request structured exports (JSON, PDF, TSV) with --export for automation and downstream processing.
Start with the HTML report
Use the HTML report first for interpretation context, then use JSON/TSV for automation and downstream processing.
HTML report (*.report.html)¶
The HTML report is a single, portable file you can open in any browser. It is always generated.
What to inspect first:
- sample and project identity
- total hits and matched rules
- per-feature mutation details and consequences
- phenotype and clinical phenotype context
- optional manual classifications
Best for:
- review by analysts and clinicians
- sharing a portable report artifact
Detailed examples of important report tabs¶
JSON export (*.results.json)¶
A structured, machine-readable export for automation and reproducibility.
Top-level sections:
runvariant_resultcoverage_gapformula_rule_hitsample_classification
Best for:
- downstream pipelines
- archival and deterministic regeneration
- data integration with external systems
Reproducible artifacts
JSON exports are intended as reproducible artifacts and can be used directly with respro regenerate --json.
Regenerate a report from JSON:
respro regenerate \
--project myrespro.db \
--json my_output/sample_variants.results.json \
--output my_output
See CLI Reference for all regeneration options.
TSV export (*.results.tsv)¶
A denormalized, tab-separated table of every annotated variant and its matched resistance rules. One row is emitted per (annotated variant × matched rule); variants with no matching rule still appear with empty rule columns. This mirrors the HTML Database Hits table but is flat and machine-readable.
Enable it with --export tsv (repeatable, combinable with json/pdf):
respro vcf \
--project myrespro.db \
--vcf sample.vcf \
--ref-fasta reference.fa \
--output my_output \
--export tsv
Columns¶
| Column | Description |
|---|---|
reference |
Matched internal reference name (VCF mode only; omitted in FASTA mode). Populated for multi-species VCF runs; empty for single-reference runs where the chrom is not the reference accession. |
gene |
Feature / gene name (display name applied when configured). |
nt_mut |
Nucleotide change on the internal reference, ref{pos}alt (1-based). Combined codon events use ref_codon{codon_pos}alt_codon. |
nt_mut_user |
Nucleotide change on the user-supplied reference (VCF coords before remap). VCF mode only; omitted in FASTA mode. |
strand |
Coding strand of the feature (+/-), sourced from the feature record. |
af |
Allele frequency (raw float). |
depth |
Read depth at the variant (VCF mode only; omitted in FASTA mode). Empty for combined formula rows. |
consequence |
Consequence label (missense, frameshift, …). |
aa_effects |
All amino-acid effects for the variant, as <ref><pos><alt> | <frequency> | <tag> joined with ;. The tag is observed or lower bound. The single-exchange effect is listed first (when its amino-acid frequency is > 0), followed by every accepted combined-codon outcome. Combined formula rows join member effects with ;. |
in_database |
yes when at least one rule matched (single or formula member); otherwise no. |
rule_type |
single, formula, formula-member, or n/a for non-hits. |
drug |
Drug name for the matched rule. n/a for non-hits. |
phenotype |
Rule phenotype label, stored verbatim (lowercased + whitespace-stripped) and resolved to a rank (e.g. susceptible / low-level resistance / resistant). n/a for non-hits. |
clinical_phenotype |
Clinical phenotype label (same vocabulary as phenotype). n/a for non-hits. |
ic50 |
Rule IC50 value (string, may carry qualifiers). Empty for non-hits. |
fold_ic50 |
Rule fold-IC50 value. Empty for non-hits. |
score |
Rule score. Empty for non-hits. |
source |
Rule source. n/a for non-hits. |
publications |
|-joined publication identifiers (DOI, or PubMed ID as fallback). Empty for non-hits. |
Row semantics¶
- Single rules: one row per matching rule. A variant conferring resistance to two drugs produces two rows, each carrying that rule's own phenotype/IC50/fold-IC50/score.
- Formula (combinatorial) rules: one combined row per fired formula rule.
Member mutations are joined with
;ingene,nt_mut,nt_mut_user,aa_effects,af, andstrand. The phenotype/IC50/fold-IC50/score come from the formula rule set (the combined call), not the individual members. - Formula-member-only variants: a variant that is only a formula member (no
single rule of its own) gets a
rule_type=formula-memberrow within_database=yesand empty rule metric columns. - Effect-as-resistant: metadata-only synthetic hits (e.g. frameshifts
classified as resistant by algorithm config) appear as
rule_type=singlerows withsource=Metadata algorithm.
Web download
In the webapp, the TSV is produced for every profile/regenerate run alongside
the HTML, PDF, and JSON artifacts. Download it from the Analyze page
(single-report action bar), the Reports page under Analysis (per-row TSV
link), or the batch/session "Download all" zip bundles. Run the CLI with
--export tsv for command-line use.


