dm: Relational Data Models

Provides tools for working with multiple related tables, stored as data frames or in a relational database. Multiple tables (data and metadata) are stored in a compound object, which can then be manipulated with a pipe-friendly syntax.

Version: 1.0.10
Depends: R (≥ 3.3)
Imports: backports, cli (≥ 2.2.0), dplyr (≥ 1.1.0), glue, igraph, lifecycle (≥ 1.0.3), memoise, methods, purrr (≥ 1.0.0), rlang (≥ 1.0.2), tibble (≥ 3.0.0), tidyr (≥ 1.0.0), tidyselect (≥ 1.2.0), vctrs (≥ 0.3.2)
Suggests: brio, colourpicker, covr, crayon, DBI (≥ 1.2.0), dbplyr (≥ 2.3.4), DiagrammeR, DiagrammeRsvg, digest, duckdb (≥ 0.4.0), fansi, forcats, htmltools, htmlwidgets, jsonlite, keyring, knitr, labelled (≥ 2.12.0), magrittr, mockr, nycflights13, odbc, pillar, pixarfilms, pool, progress, reactable, RMariaDB (≥ 1.3.0), rmarkdown, RPostgres, RSQLite (≥ 2.2.8), rstudioapi, shiny, shinyAce, shinydashboard, testthat (≥ 3.1.2), waldo, withr
Published: 2024-01-21
DOI: 10.32614/
Author: Tobias Schieferdecker [aut], Kirill Müller ORCID iD [aut, cre], Antoine Fabri [ctb], Darko Bergant [aut], Katharina Brunner [ctb], James Wondrasek [ctb], Indrajeet Patil ORCID iD [ctb], Maëlle Salmon ORCID iD [ctb], energie360° AG [fnd], cynkra GmbH [fnd, cph]
Maintainer: Kirill Müller <kirill at>
License: MIT + file LICENSE
NeedsCompilation: no
Materials: README NEWS
CRAN checks: dm results


Reference manual: dm.pdf
Vignettes: First read: Getting started with dm
How to: Copy data to and from a database
How to: Create a dm object from a database
How to: Create a dm object from data frames
How to: Insert, update or remove rows in a database
How to: Understand relational data models
Technical: Migration guide: 'cdm' -> 'dm'
Technical: Class dm and basic operations
Techincal: Visualizing dm objects
Technical: Filtering in relational data models
Technical: Joining in relational data models
Technical: Manipulating individual tables
Technical: Model verification - keys, constraints and normalization
Technical: Function naming logic
Technical: Zooming and manipulating tables


Package source: dm_1.0.10.tar.gz
Windows binaries: r-devel:, r-release:, r-oldrel:
macOS binaries: r-release (arm64): dm_1.0.10.tgz, r-oldrel (arm64): dm_1.0.10.tgz, r-release (x86_64): dm_1.0.10.tgz, r-oldrel (x86_64): dm_1.0.10.tgz
Old sources: dm archive

Reverse dependencies:

Reverse imports: robotoolbox, rolap, when
Reverse suggests: constructive, editbl, fishdata, geogenr, inldata, profile, starwarsdb


Please use the canonical form to link to this page.