{
  "_id": "6acca5caa14063b82c3a7538",
  "Package": "tidyOhdsiSolutions",
  "Title": "Tidy Utilities for Observational Medical Outcomes Partnership\nCommon Data Model Workflows",
  "Version": "0.1.0",
  "Authors@R": "person(\"Alexander\", \"Alexeyuk\", , \"AlexanderAlexeyuk@gmail.com\", role = c(\"aut\", \"cre\"))",
  "Description": "Lightweight utilities for working with OMOP (Observational\nMedical Outcomes Partnership) Common Data Model (CDM) data in\nthe Observational Health Data Sciences and Informatics\necosystem. Provides base-R re-implementations of common 'purrr'\nfunctional helpers, tools to convert plain data frames into\n'CIRCE' concept set expressions, SQL generators for resolving\nconcept sets against an OMOP vocabulary schema without\nrequiring 'CirceR'.",
  "License": "Apache License (>= 2)",
  "Config/testthat/edition": "3",
  "Encoding": "UTF-8",
  "RoxygenNote": "7.3.3",
  "VignetteBuilder": "knitr",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-12 09:13:15 UTC",
    "User": "root"
  },
  "Author": "Alexander Alexeyuk [aut, cre]",
  "Maintainer": "Alexander Alexeyuk <AlexanderAlexeyuk@gmail.com>",
  "Repository": "https://a1exanderalexeyuk.r-universe.dev",
  "Date/Publication": "2026-04-15 14:08:57 UTC",
  "RemoteUrl": "https://github.com/cran/tidyOhdsiSolutions",
  "RemoteRef": "HEAD",
  "RemoteSha": "475378df05e78e2e77132ab8ffbcc9872d32b0e9",
  "_user": "a1exanderalexeyuk",
  "_type": "src",
  "_file": "tidyOhdsiSolutions_0.1.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/5357241c9dd8c7ff382342963ebd6caf57c5d70fbc0b1f6b62eddade64a129c4",
  "_filesize": 225369,
  "_sha256": "5357241c9dd8c7ff382342963ebd6caf57c5d70fbc0b1f6b62eddade64a129c4",
  "_expires": "2027-01-20T09:17:59.000Z",
  "_created": "2026-10-12T09:13:15.000Z",
  "_published": "2026-10-12T09:18:01.964Z",
  "_buildurl": "https://github.com/r-universe/a1exanderalexeyuk/actions/runs/38228159699",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_jobs": [
    {
      "job": 114741854448,
      "time": 105,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11737800957"
    },
    {
      "job": 114741854509,
      "time": 105,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11738335230"
    },
    {
      "job": 114741854575,
      "time": 215,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11737931067"
    },
    {
      "job": 114741854478,
      "time": 151,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11737741150"
    },
    {
      "job": 114740836539,
      "time": 167,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11737737118"
    },
    {
      "job": 114741854392,
      "time": 93,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11738090651"
    },
    {
      "job": 114741854492,
      "time": 68,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11738000684"
    },
    {
      "job": 114741854616,
      "time": 83,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11737871294"
    },
    {
      "job": 114741854423,
      "time": 91,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11737706016"
    }
  ],
  "_upstream": "https://github.com/cran/tidyOhdsiSolutions",
  "_commit": {
    "id": "475378df05e78e2e77132ab8ffbcc9872d32b0e9",
    "author": "Alexander Alexeyuk <AlexanderAlexeyuk@gmail.com>",
    "committer": "cran-robot <csardi.gabor+cran@gmail.com>",
    "message": "version 0.1.0\n",
    "time": 1776262137
  },
  "_maintainer": {
    "name": "Alexander Alexeyuk",
    "email": "alexanderalexeyuk@gmail.com",
    "login": "a1exanderalexeyuk",
    "description": "",
    "uuid": 87428750
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1.0",
      "role": "Depends"
    },
    {
      "package": "jsonlite",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "CirceR",
      "role": "Suggests"
    },
    {
      "package": "DatabaseConnector",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    }
  ],
  "_owner": "cran",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-16",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "0.1.0",
      "date": "2026-04-15"
    }
  ],
  "_stars": 0,
  "_contributors": [
    {
      "user": "a1exanderalexeyuk",
      "count": 1,
      "uuid": 87428750
    }
  ],
  "_userbio": {
    "uuid": 87428750,
    "type": "user",
    "name": "alexander aleksiayuk",
    "followers": 3
  },
  "_downloads": {
    "count": 269,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/tidyOhdsiSolutions"
  },
  "_searchresults": 0,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/readme.html",
    "extra/readme.md",
    "extra/tidyOhdsiSolutions.html"
  ],
  "_realowner": "a1exanderalexeyuk",
  "_cranurl": false,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2026-04-15"
    }
  ],
  "_exports": [
    "as_mapper",
    "buildConceptSetQueries",
    "buildConceptSetQuery",
    "cohortFromConceptSet",
    "cohortToJson",
    "collectCsFromCohort",
    "createConceptSetCohort",
    "imap",
    "imap_chr",
    "imap_dbl",
    "imap_dfr",
    "map",
    "map_chr",
    "map_dbl",
    "map_dfc",
    "map_dfr",
    "map_int",
    "map_lgl",
    "map2",
    "map2_chr",
    "map2_dbl",
    "map2_dfc",
    "map2_dfr",
    "map2_int",
    "map2_lgl",
    "msg_abort",
    "msg_blank",
    "msg_bullet",
    "msg_danger",
    "msg_debug",
    "msg_header",
    "msg_info",
    "msg_kv",
    "msg_list",
    "msg_process",
    "msg_progress",
    "msg_rule",
    "msg_spinner",
    "msg_success",
    "msg_timed",
    "msg_todo",
    "msg_try",
    "msg_verbose",
    "msg_warn",
    "msg_warning",
    "pluck",
    "pmap",
    "pmap_chr",
    "pmap_dbl",
    "pmap_dfc",
    "pmap_dfr",
    "pmap_int",
    "pmap_lgl",
    "pwalk",
    "toConceptSet",
    "toConceptSets",
    "walk",
    "walk2"
  ],
  "_help": [
    {
      "page": "as_mapper",
      "title": "Convert Input to a Mapping Function",
      "topics": [
        "as_mapper"
      ]
    },
    {
      "page": "buildConceptSetQueries",
      "title": "Resolve Multiple Concept Sets to SQL",
      "topics": [
        "buildConceptSetQueries"
      ]
    },
    {
      "page": "buildConceptSetQuery",
      "title": "Build SQL to resolve a concept set expression without Java/CirceR",
      "topics": [
        "buildConceptSetQuery"
      ]
    },
    {
      "page": "cohortFromConceptSet",
      "title": "Create a CirceR-compatible cohort definition from multiple concept set expressions",
      "topics": [
        "cohortFromConceptSet"
      ]
    },
    {
      "page": "cohortToJson",
      "title": "Serialize a Cohort Expression to JSON",
      "topics": [
        "cohortToJson"
      ]
    },
    {
      "page": "collectCsFromCohort",
      "title": "Extract Concept Set Expressions from a Cohort Definition",
      "topics": [
        "collectCsFromCohort"
      ]
    },
    {
      "page": "createConceptSetCohort",
      "title": "Create a CirceR-compatible cohort definition from a concept set expression",
      "topics": [
        "createConceptSetCohort"
      ]
    },
    {
      "page": "imap",
      "title": "Apply a Function to Each Element with Its Index or Name",
      "concept": [
        "imap"
      ],
      "topics": [
        "imap",
        "imap_chr",
        "imap_dbl",
        "imap_dfr"
      ]
    },
    {
      "page": "map",
      "title": "Apply a Function to Each Element of a List or Vector",
      "concept": [
        "map"
      ],
      "topics": [
        "map",
        "map_chr",
        "map_dbl",
        "map_dfc",
        "map_dfr",
        "map_int",
        "map_lgl"
      ]
    },
    {
      "page": "map2",
      "title": "Apply a Function to Pairs of Elements from Two Lists",
      "concept": [
        "map2"
      ],
      "topics": [
        "map2",
        "map2_chr",
        "map2_dbl",
        "map2_dfc",
        "map2_dfr",
        "map2_int",
        "map2_lgl"
      ]
    },
    {
      "page": "msg_abort",
      "title": "Stop with a styled error message",
      "topics": [
        "msg_abort"
      ]
    },
    {
      "page": "msg_blank",
      "title": "Print a blank line",
      "topics": [
        "msg_blank"
      ]
    },
    {
      "page": "msg_bullet",
      "title": "Print a bullet point",
      "topics": [
        "msg_bullet"
      ]
    },
    {
      "page": "msg_danger",
      "title": "Print a danger / error message (styled, non-stopping)",
      "topics": [
        "msg_danger"
      ]
    },
    {
      "page": "msg_debug",
      "title": "Print a debug message (only when option is set)",
      "topics": [
        "msg_debug"
      ]
    },
    {
      "page": "msg_header",
      "title": "Print a section header",
      "topics": [
        "msg_header"
      ]
    },
    {
      "page": "msg_info",
      "title": "Print an informational message",
      "topics": [
        "msg_info"
      ]
    },
    {
      "page": "msg_kv",
      "title": "Print a two-column key-value table",
      "topics": [
        "msg_kv"
      ]
    },
    {
      "page": "msg_list",
      "title": "Print a named list of items",
      "topics": [
        "msg_list"
      ]
    },
    {
      "page": "msg_process",
      "title": "Print a process / action message",
      "topics": [
        "msg_process"
      ]
    },
    {
      "page": "msg_progress",
      "title": "Simple inline progress counter",
      "topics": [
        "msg_progress"
      ]
    },
    {
      "page": "msg_rule",
      "title": "Print a simple rule / divider",
      "topics": [
        "msg_rule"
      ]
    },
    {
      "page": "msg_spinner",
      "title": "Animated spinner for long-running tasks",
      "topics": [
        "msg_spinner"
      ]
    },
    {
      "page": "msg_success",
      "title": "Print a success message",
      "topics": [
        "msg_success"
      ]
    },
    {
      "page": "msg_timed",
      "title": "Time a block and report duration",
      "topics": [
        "msg_timed"
      ]
    },
    {
      "page": "msg_todo",
      "title": "Print a todo item",
      "topics": [
        "msg_todo"
      ]
    },
    {
      "page": "msg_try",
      "title": "Run expr and catch + style any errors/warnings",
      "topics": [
        "msg_try"
      ]
    },
    {
      "page": "msg_verbose",
      "title": "Message only when verbose option is TRUE",
      "topics": [
        "msg_verbose"
      ]
    },
    {
      "page": "msg_warn",
      "title": "Print a warning message (styled, non-stopping)",
      "topics": [
        "msg_warn"
      ]
    },
    {
      "page": "msg_warning",
      "title": "Warn with a styled warning message",
      "topics": [
        "msg_warning"
      ]
    },
    {
      "page": "pluck",
      "title": "Extract an Element from a Nested Structure",
      "topics": [
        "pluck"
      ]
    },
    {
      "page": "pmap",
      "title": "Apply a Function to Multiple Lists in Parallel",
      "concept": [
        "pmap"
      ],
      "topics": [
        "pmap",
        "pmap_chr",
        "pmap_dbl",
        "pmap_dfc",
        "pmap_dfr",
        "pmap_int",
        "pmap_lgl"
      ]
    },
    {
      "page": "toConceptSet",
      "title": "Convert a single data.frame to a concept set expression list",
      "topics": [
        "toConceptSet"
      ]
    },
    {
      "page": "toConceptSets",
      "title": "Convert Concept Set Expression Tibble(s) to Concept Set Expression Lists",
      "topics": [
        "toConceptSets"
      ]
    },
    {
      "page": "walk",
      "title": "Apply a Function for Side Effects",
      "concept": [
        "walk"
      ],
      "topics": [
        "pwalk",
        "walk",
        "walk2"
      ]
    }
  ],
  "_readme": "https://github.com/cran/tidyOhdsiSolutions/raw/HEAD/README.md",
  "_rundeps": [
    "jsonlite"
  ],
  "_vignettes": [
    {
      "source": "cohort-from-concept-set.Rmd",
      "filename": "cohort-from-concept-set.html",
      "title": "Building Cohorts from Concept Sets",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Overview",
        "Typical Workflow",
        "Step 1: Define Concept Sets as Data Frames",
        "Step 2: Convert to Concept Set Expressions",
        "Step 3: Build the Cohort",
        "Parameters",
        "Step 4: Export to JSON",
        "End Strategies",
        "Default: observation period end date",
        "Fixed exit: offset from index",
        "Drug exit: era-based persistence",
        "Event Limits",
        "Source Criteria",
        "Structure of the Output"
      ],
      "created": "2026-04-15 14:08:57",
      "modified": "2026-04-15 14:08:57",
      "commits": 1
    },
    {
      "source": "handy-cli.Rmd",
      "filename": "handy-cli.html",
      "title": "Console Messaging with handyCli",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Overview",
        "1  Basic message levels",
        "2  Section structure: headers, rules, and blank lines",
        "3  Structured output: lists and key-value tables",
        "Named list",
        "Key-value table",
        "4  Iteration patterns",
        "4a  Logging inside a loop",
        "4b  Safe iteration with msg_try()",
        "4c  Verbose mode — conditional logging inside helpers",
        "5  Timing expressions with msg_timed()",
        "Timing an iteration",
        "6  Error and warning handling",
        "Raising styled errors with msg_abort()",
        "Raising styled warnings with msg_warning()",
        "msg_try() on_error modes",
        "7  Debug messages",
        "8  Progress bar (interactive sessions)",
        "9  Spinner (interactive sessions)",
        "10  Putting it all together — annotated pipeline"
      ],
      "created": "2026-04-15 14:08:57",
      "modified": "2026-04-15 14:08:57",
      "commits": 1
    }
  ],
  "_score": 3,
  "_indexed": true,
  "_nocasepkg": "tidyohdsisolutions",
  "_universes": [
    "a1exanderalexeyuk"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.1.0",
      "date": "2026-10-12T09:15:04.000Z",
      "distro": "resolute",
      "commit": "475378df05e78e2e77132ab8ffbcc9872d32b0e9",
      "fileid": "https://r2.ropensci.org/d50aec63b2b5270ea15b3e6774a2af2e54a94bdbc943fba69a677fa64562f76a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/a1exanderalexeyuk/actions/runs/38228159699"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.1.0",
      "date": "2026-10-12T09:15:04.000Z",
      "distro": "resolute",
      "commit": "475378df05e78e2e77132ab8ffbcc9872d32b0e9",
      "fileid": "https://r2.ropensci.org/8aa22b4b55a3e3027a2fe50823f7f9e09185d87b252cd0bb26409bdc2be16488",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/a1exanderalexeyuk/actions/runs/38228159699"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.1.0",
      "date": "2026-10-12T09:16:45.000Z",
      "commit": "475378df05e78e2e77132ab8ffbcc9872d32b0e9",
      "fileid": "https://r2.ropensci.org/84453ca7747ba284ef603e894aed1d86246162ca3772a568817dd7fe7fb8b03b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/a1exanderalexeyuk/actions/runs/38228159699"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.1.0",
      "date": "2026-10-12T09:15:37.000Z",
      "commit": "475378df05e78e2e77132ab8ffbcc9872d32b0e9",
      "fileid": "https://r2.ropensci.org/9bcbe814cb5c13f8330c539f9f989f6a995205c5238094dba25f07171966255f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/a1exanderalexeyuk/actions/runs/38228159699"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.1.0",
      "date": "2026-10-12T09:15:06.000Z",
      "commit": "475378df05e78e2e77132ab8ffbcc9872d32b0e9",
      "fileid": "https://r2.ropensci.org/387adbb850de5cfa2a9e2bf093c70b923db68b3c66d29dc9f0568c1012184055",
      "status": "success",
      "buildurl": "https://github.com/r-universe/a1exanderalexeyuk/actions/runs/38228159699"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.1.0",
      "date": "2026-10-12T09:14:20.000Z",
      "commit": "475378df05e78e2e77132ab8ffbcc9872d32b0e9",
      "fileid": "https://r2.ropensci.org/1bd6a9c11d50ecd20560c84828a78ebc23098c7fb01b5f48bcca116b5aea51fd",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/a1exanderalexeyuk/actions/runs/38228159699"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.1.0",
      "date": "2026-10-12T09:14:27.000Z",
      "commit": "475378df05e78e2e77132ab8ffbcc9872d32b0e9",
      "fileid": "https://r2.ropensci.org/639f49d2e5857bd2110e8e2464902e7a76d9d16a16c9981e0f536ce8c14c51f7",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/a1exanderalexeyuk/actions/runs/38228159699"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.1.0",
      "date": "2026-10-12T09:14:36.000Z",
      "commit": "475378df05e78e2e77132ab8ffbcc9872d32b0e9",
      "fileid": "https://r2.ropensci.org/ca67b446b59cfadb0a5ea108fbd81ff96ec483df1e5dbdd08154724369e44837",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/a1exanderalexeyuk/actions/runs/38228159699"
    }
  ]
}