scimapR treats research questions as structured objects, not just query strings.
rq <- sm_question(
text = "Does spatial transcriptomics improve outcome prediction in colorectal cancer?",
framework = "PICO",
population = "colorectal cancer patients",
intervention = "spatial transcriptomics",
outcome = "survival or recurrence"
)
print(rq)
#>
#> ── <sm_question> ───────────────────────────────────────────────────────────────
#> ID: Q-ecd0161dbb634ba3
#> Framework: PICO
#> Created: 2026-11-03 18:20:46
#>
#> Question:
#> Does spatial transcriptomics improve outcome prediction in colorectal cancer?
#>
#> ── Structured fields
#> Population: colorectal cancer patients
#> Intervention: spatial transcriptomics
#> Outcome: survival or recurrence
#>
#> Languages: en
#>
#> ── Query strings
#> generic: (colorectal cancer patients) AND (spatial transcriptomics) AND
#> (survival or r...
#> pubmed: (colorectal cancer patients[tiab]) AND (spatial transcriptomics[tiab])
#> AND (s...
#> openalex: (colorectal cancer patients) AND (spatial transcriptomics) AND
#> (survival or r...
#> crossref: (colorectal cancer patients) AND (spatial transcriptomics) AND
#> (survival or r...# In production, this hits APIs:
corpus <- sm_corpus_for_question(rq, sources = c("pubmed", "openalex"))For this vignette, we use the synthetic example corpus:
sm_screen_summary(corpus)
#>
#> ── Stage: title-abstract (n=200)
#> exclude: 96 (48%)
#> include: 82 (41%)
#> uncertain: 22 (11%)
#> # A tibble: 3 × 4
#> stage decision n pct
#> <chr> <chr> <int> <dbl>
#> 1 title-abstract exclude 96 48
#> 2 title-abstract include 82 41
#> 3 title-abstract uncertain 22 11