Module query

Module query 

Source
Expand description

Query builder for constructing PubMed search queries with filters

This module provides a flexible query builder for constructing complex PubMed search queries using E-utilities syntax. The query builder supports:

  • Field-specific searches (title, abstract, journal, etc.)
  • Date filtering with flexible precision
  • MeSH term filtering
  • Author and affiliation filtering
  • Boolean logic operations (AND, OR, NOT)
  • Article type and language filtering
  • Query validation and optimization

§Examples

Basic search:

use pubmed_client::pubmed::SearchQuery;

let query = SearchQuery::new()
    .query("covid-19 treatment")
    .published_after(2020)
    .free_full_text_only()
    .limit(10);

Complex boolean search:

use pubmed_client::pubmed::{SearchQuery, ArticleType, Language};

let ai_query = SearchQuery::new()
    .title_contains("machine learning")
    .or(SearchQuery::new().mesh_term("Artificial Intelligence"));

let medical_query = SearchQuery::new()
    .mesh_term("Medicine")
    .and(SearchQuery::new().human_studies_only());

let final_query = ai_query
    .and(medical_query)
    .article_type(ArticleType::Review)
    .language(Language::English)
    .published_between(2020, Some(2023));

Structs§

PubDate
Represents a date for PubMed searches with varying precision
SearchQuery
Builder for constructing PubMed search queries

Enums§

ArticleType
Article types that can be filtered in PubMed searches
Language
Language options for filtering articles
SortOrder
Sort order for PubMed search results