Q (haiku): What is the current and future support for storing and analyzing germline variants in cBioPortal, compared to other alternatives? ▶ list_guides {} ◀ result {"result":[{"uri":"cbioportal://mutation-frequency-guide","description":"Comprehensive guide for calculating gene mutation frequencies with gene-specific profiling denominators"},{"uri":"cbioportal://clinical-data-guide","description":"Guide for querying clinical data including patient vs sample level considerations"},{"uri":"cbioportal://sample-filtering-guide","description":"Guide for filtering samples and studies in cBioPortal queries"},{"uri":"cbioportal://common-pitfalls","description":"Guide to avoid common mistakes when querying cBioPortal data. If you already know which numbered pitfall applies, fetch just that section via read_guide(\"cbioportal://common-pitfalls#\") (e.g. #16) instead of the full guide"},{"uri":"cbioportal://treatment-guide","description":"Guide for querying treatment/clinical event data including drug agents, timelines, and linking to genomic data"},{"uri":"cbioportal://faq-guide","description":"General cBioPortal FAQ: history, how to cite, data types, reference genome, abbreviations, GISTIC thresholds, API access"},{"uri":"cbioportal://statistical-tests-guide","description":"Statistical test selection guide — decision matrix for choosing Fisher's exact, Wilcoxon, chi-squared, t-test, ANOVA, etc. based on data type and group count"},{"uri":"cbioportal://gene-expression-guide","description":"Gene expression / copy-number / methylation analysis. Covers genetic_alteration_derived, profile_type discovery, and the gene_pair_coexpression view for Spearman correlation between two genes"},{"uri":"cbioportal://external-resources-guide","description":"Guide for finding external linked resources such as imaging, pathology, Minerva, HTAN, or other resource_* table links before declaring data unavailable"},{"uri":"cbioportal://gene-resolution-guide","description":"Guide for resolving ambiguous gene symbols, aliases, gene families, and shorthand such as CD3 before querying expression or alteration data"},{"uri":"cbioportal://study-resolution-guide","description":"Guide for resolving requested studies, avoiding silent substitute cohorts, and redirecting to known external cBioPortal instances when data is not in this deployment"},{"uri":"cbioportal://germline-guide","description":"Guide for querying germline variant data — storage columns, study discovery, query patterns, and somatic vs germline considerations"},{"uri":"cbioportal://study-guide/{study_id}","description":"Dynamic study-specific guide - use get_study_guide(study_id) tool to generate"}]} ▶ read_guide { "uri": "cbioportal://germline-guide" } ◀ result Germline Variant Guide ====================== Overview -------- cBioPortal stores both somatic AND germline variant data. Many cBioPortal features work identically for both variant types. This guide explains how to query germline variants and what to be aware of. How Germline Data is Stored --------------------------- ### mutation_status is free text — always compare case-insensitively Each study loads its own spelling. Germline calls appear as `'Germline'`, `'GERMLINE'` and `'germline'`; somatic calls as `'Somatic'`, `'SOMATIC'` and `'somatic'`; unannotated mutations as `'NA'`, `'.'`, `'Unknown'`, `'UNKNOWN'`, `'__UNKNOWN__'` and others. Matching one spelling silently drops whole studies (`mutation_status = 'Germline'` misses `all_stjude_2013`, `aml_stjude_2024` and `pog570_bcgsc_2020`). - **Germline:** `upper(mutation_status) = 'GERMLINE'` - **Somatic:** `upper(mutation_status) = 'SOMATIC'` — but only when the user asks for somatic-only. Many studies label their somatic calls `'NA'` or `'UNKNOWN'`, so for ordinary mutation questions follow common-pitfalls #3 and exclude only `'UNCALLED'`. - When unsure, list the values first: `SELECT mutation_status, count() FROM genomic_event_derived WHERE cancer_study_identifier = '{study_id}' AND variant_type = 'mutation' GROUP BY mutation_status` ### Where the column lives - `genomic_event_derived.mutation_status` (preferred): mutations, and structural variants (from `sv_status`: `'SOMATIC'`, `'Somatic'`, `'GERMLINE'`) - `mutation_derived.mutationStatus`: the same values for mutations Identifying Studies with Germline Data -------------------------------------- Not all studies include germline data. Always check before querying: ```sql -- Find studies containing germline mutations SELECT cancer_study_identifier, COUNT(*) as germline_count FROM genomic_event_derived WHERE variant_type = 'mutation' AND upper(mutation_status) = 'GERMLINE' GROUP BY cancer_study_identifier ORDER BY germline_count DESC ``` Common Query Patterns --------------------- ### Count germline vs somatic mutations per gene in a study ```sql SELECT hugo_gene_symbol, upper(mutation_status) AS status, COUNT(*) as count FROM genomic_event_derived WHERE cancer_study_identifier = '{study_id}' AND variant_type = 'mutation' AND upper(mutation_status) IN ('GERMLINE', 'SOMATIC') GROUP BY hugo_gene_symbol, status ORDER BY count DESC LIMIT 20 ``` ### Find patients with germline mutations in a specific gene ```sql SELECT DISTINCT patient_unique_id, sample_unique_id, mutation_variant, mutation_type FROM genomic_event_derived WHERE hugo_gene_symbol = '{GENE}' AND upper(mutation_status) = 'GERMLINE' AND cancer_study_identifier = '{study_id}' AND variant_type = 'mutation' ``` ### Germline mutation frequency The numerator is samples with a germline mutation in the gene; the denominator is samples **profiled** for the gene — not samples that happen to have a mutation in it. Take the denominator from mutation-frequency-guide Step 2 (or … (2222 more chars) ═ answer (success) Based on the guide and cBioPortal's architecture, here's what you need to know: ## Current Germline Variant Support in cBioPortal **✓ What's supported:** - **Storage & querying**: Germline variants are stored directly in `genomic_event_derived` and `mutation_derived` tables alongside somatic variants, with `mutation_status` annotation (case-sensitive, so use `upper(mutation_status) = 'GERMLINE'`) - **Query capabilities**: mutation frequencies, protein domain analysis, co-occurrence, clinical correlations, gene panel coverage - **Web interface**: Full visualization support in cBioPortal's interface (OncoPrint, mutation tables, frequency tables) - **Cross-study analysis**: Can aggregate germline data across multiple studies **✗ Limitations:** 1. **Inconsistent annotation**: Not all studies include germline data or mutation_status classification. Many filter germline variants out entirely during data processing 2. **No ACMG classification**: cBioPortal does not store ACMG pathogenicity categories (pathogenic, likely pathogenic, VUS, benign) in standard columns 3. **No driver annotations**: OncoKB and driver/tier filters are designed for **somatic** variants only — not applied to germline calls 4. **Privacy caveat**: Some public cBioPortal instances may exclude germline variants due to privacy sensitivity 5. **No specialized germline analysis**: Features like TMB, mutual exclusivity, and multi-hit analysis are optimized for somatic variants ## Comparison to Alternatives | Feature | cBioPortal | ClinVar/NCBI | PanelApp/Gene2Phenotype | gnomAD | Specialized Germline DBs | |---------|-----------|----------|----------|--------|----------| | **Integrated cancer context** | ✓ (somatic + clinical) | ✗ | ✓ (phenotype-centric) | ✗ | ✓ | | **ACMG classification** | ✗ | ✓ | ✓ | ✗ | ✓ | | **Large cancer cohorts** | ✓ (many TCGA, MSK studies) | ✗ | ✗ | ✗ | Depends | | **Somatic context** | ✓ (co-mutation, comparison) | ✗ | ✗ | ✗ | Limited | | **Population frequency** | Limited | ✓ | Limited | ✓ | Varies | | **Linked phenotypes** | ✓ (tumor stage, treatment response) | ✓ | ✓ | ✗ | ✓ | ## Future Direction cBioPortal's approach is **cohort-focused, not variant-centric**. It excels at answering questions like: - "What germline variants appear in this cancer cohort?" - "Do germline mutations correlate with clinical outcomes?" - "What's the overlap between germline and somatic mutations in the same patients?" For **variant annotation at scale** (ACMG classification, population allele frequency, functional prediction), you'd integrate cBioPortal with: - **ClinVar** (for ACMG classifications) - **gnomAD/ALFA** (for population frequency) - **VEP/SnpEff** (for functional predictions) - **In-house germline databases** (for institution-specific variant catalogs) --- **Want to explore** which studies in this cBioPortal instance contain germline data, or query a specific gene? I can run that query for you.