From 21d33a66334bc087b711302f442c400786046e67 Mon Sep 17 00:00:00 2001 From: Maxim Moinat Date: Fri, 26 Jan 2024 14:20:06 +0100 Subject: [PATCH] create templates for check docs --- _pkgdown.yml | 16 +++---- extras/checkDescriptionTemplate.Rmd | 48 +++++++++++++++++++ extras/createCheckDoc.R | 30 ++++++++++++ vignettes/checkIndex.Rmd | 26 +++++----- vignettes/{ => checks}/cdmDatatype.Rmd | 0 vignettes/{ => checks}/cdmField.Rmd | 0 vignettes/{ => checks}/cdmTable.Rmd | 0 vignettes/{ => checks}/fkClass.Rmd | 0 vignettes/{ => checks}/fkDomain.Rmd | 0 vignettes/{ => checks}/isForeignKey.Rmd | 0 vignettes/{ => checks}/isPrimaryKey.Rmd | 0 vignettes/{ => checks}/isRequired.Rmd | 0 vignettes/checks/isStandardValidConcept.Rmd | 46 ++++++++++++++++++ .../measureConditionEraCompleteness.Rmd | 47 ++++++++++++++++++ .../checks/measurePersonCompleteness.Rmd | 46 ++++++++++++++++++ vignettes/checks/measureValueCompleteness.Rmd | 46 ++++++++++++++++++ vignettes/checks/plausibleAfterBirth copy.Rmd | 46 ++++++++++++++++++ .../{ => checks}/plausibleAfterBirth.Rmd | 0 vignettes/checks/plausibleBeforeDeath.Rmd | 46 ++++++++++++++++++ vignettes/checks/plausibleDuringLife.Rmd | 46 ++++++++++++++++++ vignettes/checks/plausibleGender.Rmd | 46 ++++++++++++++++++ vignettes/checks/plausibleStartBeforeEnd.Rmd | 46 ++++++++++++++++++ vignettes/checks/plausibleTemporalAfter.Rmd | 46 ++++++++++++++++++ vignettes/checks/plausibleUnitConceptIds.Rmd | 46 ++++++++++++++++++ vignettes/checks/plausibleValueHigh.Rmd | 46 ++++++++++++++++++ vignettes/checks/plausibleValueLow.Rmd | 46 ++++++++++++++++++ .../sourceConceptRecordCompleteness.Rmd | 46 ++++++++++++++++++ vignettes/checks/sourceValueCompleteness.Rmd | 46 ++++++++++++++++++ .../standardConceptRecordCompleteness.Rmd | 46 ++++++++++++++++++ vignettes/checks/withinVisitDates.Rmd | 46 ++++++++++++++++++ 30 files changed, 881 insertions(+), 22 deletions(-) create mode 100644 extras/checkDescriptionTemplate.Rmd create mode 100644 extras/createCheckDoc.R rename vignettes/{ => checks}/cdmDatatype.Rmd (100%) rename vignettes/{ => checks}/cdmField.Rmd (100%) rename vignettes/{ => checks}/cdmTable.Rmd (100%) rename vignettes/{ => checks}/fkClass.Rmd (100%) rename vignettes/{ => checks}/fkDomain.Rmd (100%) rename vignettes/{ => checks}/isForeignKey.Rmd (100%) rename vignettes/{ => checks}/isPrimaryKey.Rmd (100%) rename vignettes/{ => checks}/isRequired.Rmd (100%) create mode 100644 vignettes/checks/isStandardValidConcept.Rmd create mode 100644 vignettes/checks/measureConditionEraCompleteness.Rmd create mode 100644 vignettes/checks/measurePersonCompleteness.Rmd create mode 100644 vignettes/checks/measureValueCompleteness.Rmd create mode 100644 vignettes/checks/plausibleAfterBirth copy.Rmd rename vignettes/{ => checks}/plausibleAfterBirth.Rmd (100%) create mode 100644 vignettes/checks/plausibleBeforeDeath.Rmd create mode 100644 vignettes/checks/plausibleDuringLife.Rmd create mode 100644 vignettes/checks/plausibleGender.Rmd create mode 100644 vignettes/checks/plausibleStartBeforeEnd.Rmd create mode 100644 vignettes/checks/plausibleTemporalAfter.Rmd create mode 100644 vignettes/checks/plausibleUnitConceptIds.Rmd create mode 100644 vignettes/checks/plausibleValueHigh.Rmd create mode 100644 vignettes/checks/plausibleValueLow.Rmd create mode 100644 vignettes/checks/sourceConceptRecordCompleteness.Rmd create mode 100644 vignettes/checks/sourceValueCompleteness.Rmd create mode 100644 vignettes/checks/standardConceptRecordCompleteness.Rmd create mode 100644 vignettes/checks/withinVisitDates.Rmd diff --git a/_pkgdown.yml b/_pkgdown.yml index 65fbec92..284043fa 100644 --- a/_pkgdown.yml +++ b/_pkgdown.yml @@ -53,23 +53,23 @@ navbar: - text: Index href: articles/checkIndex.html - text: cdmTable - href: articles/cdmTable.html + href: articles/checks/cdmTable.html - text: cdmField - href: articles/cdmField.html + href: articles/checks/cdmField.html - text: cdmDatatype - href: articles/cdmDatatype.html + href: articles/checks/cdmDatatype.html - text: isPrimaryKey - href: articles/isPrimaryKey.html + href: articles/checks/isPrimaryKey.html - text: isForeignKey - href: articles/isForeignKey.html + href: articles/checks/isForeignKey.html - text: isRequired - href: articles/isRequired.html + href: articles/checks/isRequired.html - text: fkDomain - href: articles/fkDomain.html + href: articles/checks/fkDomain.html - text: fkClass href: articles/fkClass.html - text: plausibleAfterBirth - href: articles/plausibleAfterBirth.html + href: articles/checks/plausibleAfterBirth.html hades: text: hadesLogo href: https://ohdsi.github.io/Hades diff --git a/extras/checkDescriptionTemplate.Rmd b/extras/checkDescriptionTemplate.Rmd new file mode 100644 index 00000000..3c2dc998 --- /dev/null +++ b/extras/checkDescriptionTemplate.Rmd @@ -0,0 +1,48 @@ +--- +title: "%s" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: %s\ +**Context**: %s\ +**Category**: %s\ +**Subcategory**: %s\ +**Severity**: %s + + +## Description +%s + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql +SELECT * +FROM @cdmTable +WHERE violated IS TRUE +``` + + +### ETL Developers + + +### Data Users + diff --git a/extras/createCheckDoc.R b/extras/createCheckDoc.R new file mode 100644 index 00000000..08ad2104 --- /dev/null +++ b/extras/createCheckDoc.R @@ -0,0 +1,30 @@ +# Read check descriptions into a dataframe +checkDescriptions <- read.csv("inst/csv/OMOP_CDMv5.4_Check_Descriptions.csv") + +# Template +templateText <- paste(readLines('extras/checkDescriptionTemplate.Rmd', encoding = 'UTF-8'), collapse = "\n") + +checkText <- sprintf( + templateText, + checkDescriptions$checkName, + checkDescriptions$checkLevel, + checkDescriptions$kahnContext, + checkDescriptions$kahnCategory, + checkDescriptions$kahnSubcategory, + checkDescriptions$severity, + checkDescriptions$checkDescription +) + +# Write each element of checkText to a file +for (i in seq_along(checkText)) { + checkName <- checkDescriptions$checkName[i] + writeLines( + checkText[i], + file.path('extras/checks', paste0(checkName, ".Rmd")) + ) + cat(sprintf("- [%s](%s.html)\n", checkName, checkName)) +} +for (checkName in checkDescriptions$checkName) { + cat(sprintf(" - text: %s\n", checkName)) + cat(sprintf(" href: articles/checks/%s.html\n", checkName)) +} diff --git a/vignettes/checkIndex.Rmd b/vignettes/checkIndex.Rmd index 42694c37..5d2411b4 100644 --- a/vignettes/checkIndex.Rmd +++ b/vignettes/checkIndex.Rmd @@ -8,30 +8,28 @@ output: toc: yes --- -## Index - This section contains detailed descriptions of the data quality checks included in the DataQualityDashboard package. Each check is described on its own page; click on the check name in the list below or in the dropdown menu above to navigate to the check's documentation page.\ -*N.B. This section is currently under development. A documentation page is not yet available for all checks. The links below will be updated as more pages are added. In the meantime, see the [Check Type Descriptions](https://ohdsi.github.io/DataQualityDashboard/articles/CheckTypeDescriptions) page for a brief description of each check.* +*N.B. This section is currently under development. A documentation page is not yet available for all checks. The links below will be updated as more pages are added. In the meantime, see the [Check Type Descriptions](checks/https://ohdsi.github.io/DataQualityDashboard/articles/CheckTypeDescriptions) page for a brief description of each check.* -**General guidance**: +## General guidance - These documentation pages are intended to provide a detailed description of each check and guidance for users on how to interpret the results of each check - Guidance is provided for both *ETL developers* and *OMOP CDM users* (e.g. analysts, data managers, etc). CDM users are strongly encouraged to work with their ETL development team, if possible, to understand and address any check failures attributable to ETL design. However, guidance is also provided in case this is not possible -- In some cases, SQL snippets are provided to help investigate the cause of a check failure. These snippets are written in OHDSI SQL and can be rendered to run against your OMOP CDM using the [SQLRender](https://ohdsi.github.io/SqlRender/) package. As always, it is also recommended to utilize the "violated rows" SQL (indicated by the comment lines `/*violatedRowsBegin*/` and `/*violatedRowsEnd*/`) from the SQL query displayed in the DQD results viewer for a given check to inspect rows that failed the check +- In some cases, SQL snippets are provided to help investigate the cause of a check failure. These snippets are written in OHDSI SQL and can be rendered to run against your OMOP CDM using the [SQLRender](checks/https://ohdsi.github.io/SqlRender/) package. As always, it is also recommended to utilize the "violated rows" SQL (indicated by the comment lines `/*violatedRowsBegin*/` and `/*violatedRowsEnd*/`) from the SQL query displayed in the DQD results viewer for a given check to inspect rows that failed the check -**Checks**: +## Checks -- [cdmTable](cdmTable.html) -- [cdmField](cdmField.html) -- [cdmDatatype](cdmDatatype.html) -- [isPrimaryKey](isPrimaryKey.html) -- [isForeignKey](isForeignKey.html) -- [isRequired](isRequired.html) -- [fkDomain](fkDomain.html) -- [fkClass](fkClass.html) +- [cdmTable](checks/cdmTable.html) +- [cdmField](checks/cdmField.html) +- [cdmDatatype](checks/cdmDatatype.html) +- [isPrimaryKey](checks/isPrimaryKey.html) +- [isForeignKey](checks/isForeignKey.html) +- [isRequired](checks/isRequired.html) +- [fkDomain](checks/fkDomain.html) +- [fkClass](checks/fkClass.html) - measurePersonCompleteness (PAGE UNDER CONSTRUCTION) - measureConditionEraCompleteness (PAGE UNDER CONSTRUCTION) - isStandardValidConcept (PAGE UNDER CONSTRUCTION) diff --git a/vignettes/cdmDatatype.Rmd b/vignettes/checks/cdmDatatype.Rmd similarity index 100% rename from vignettes/cdmDatatype.Rmd rename to vignettes/checks/cdmDatatype.Rmd diff --git a/vignettes/cdmField.Rmd b/vignettes/checks/cdmField.Rmd similarity index 100% rename from vignettes/cdmField.Rmd rename to vignettes/checks/cdmField.Rmd diff --git a/vignettes/cdmTable.Rmd b/vignettes/checks/cdmTable.Rmd similarity index 100% rename from vignettes/cdmTable.Rmd rename to vignettes/checks/cdmTable.Rmd diff --git a/vignettes/fkClass.Rmd b/vignettes/checks/fkClass.Rmd similarity index 100% rename from vignettes/fkClass.Rmd rename to vignettes/checks/fkClass.Rmd diff --git a/vignettes/fkDomain.Rmd b/vignettes/checks/fkDomain.Rmd similarity index 100% rename from vignettes/fkDomain.Rmd rename to vignettes/checks/fkDomain.Rmd diff --git a/vignettes/isForeignKey.Rmd b/vignettes/checks/isForeignKey.Rmd similarity index 100% rename from vignettes/isForeignKey.Rmd rename to vignettes/checks/isForeignKey.Rmd diff --git a/vignettes/isPrimaryKey.Rmd b/vignettes/checks/isPrimaryKey.Rmd similarity index 100% rename from vignettes/isPrimaryKey.Rmd rename to vignettes/checks/isPrimaryKey.Rmd diff --git a/vignettes/isRequired.Rmd b/vignettes/checks/isRequired.Rmd similarity index 100% rename from vignettes/isRequired.Rmd rename to vignettes/checks/isRequired.Rmd diff --git a/vignettes/checks/isStandardValidConcept.Rmd b/vignettes/checks/isStandardValidConcept.Rmd new file mode 100644 index 00000000..f0a8682d --- /dev/null +++ b/vignettes/checks/isStandardValidConcept.Rmd @@ -0,0 +1,46 @@ +--- +title: "isStandardValidConcept" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Conformance\ +**Subcategory**: Value\ +**Severity**: + + +## Description +The number and percent of records that do not have a standard, valid concept in the @cdmFieldName field in the @cdmTableName table. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/measureConditionEraCompleteness.Rmd b/vignettes/checks/measureConditionEraCompleteness.Rmd new file mode 100644 index 00000000..1eaf2b86 --- /dev/null +++ b/vignettes/checks/measureConditionEraCompleteness.Rmd @@ -0,0 +1,47 @@ +--- +title: "measureConditionEraCompleteness" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: TABLE\ +**Context**: Validation\ +**Category**: Completeness\ +**Subcategory**: \ +**Severity**: + + +## Description +The number and Percent of persons that does not have condition_era built successfully, +for all persons in condition_occurrence + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/measurePersonCompleteness.Rmd b/vignettes/checks/measurePersonCompleteness.Rmd new file mode 100644 index 00000000..95b4a2cb --- /dev/null +++ b/vignettes/checks/measurePersonCompleteness.Rmd @@ -0,0 +1,46 @@ +--- +title: "measurePersonCompleteness" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: TABLE\ +**Context**: Validation\ +**Category**: Completeness\ +**Subcategory**: \ +**Severity**: + + +## Description +The number and percent of persons in the CDM that do not have at least one record in the @cdmTableName table + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/measureValueCompleteness.Rmd b/vignettes/checks/measureValueCompleteness.Rmd new file mode 100644 index 00000000..470e285f --- /dev/null +++ b/vignettes/checks/measureValueCompleteness.Rmd @@ -0,0 +1,46 @@ +--- +title: "measureValueCompleteness" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Completeness\ +**Subcategory**: \ +**Severity**: + + +## Description +The number and percent of records with a NULL value in the @cdmFieldName of the @cdmTableName. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/plausibleAfterBirth copy.Rmd b/vignettes/checks/plausibleAfterBirth copy.Rmd new file mode 100644 index 00000000..568cbffa --- /dev/null +++ b/vignettes/checks/plausibleAfterBirth copy.Rmd @@ -0,0 +1,46 @@ +--- +title: "plausibleAfterBirth" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Plausibility\ +**Subcategory**: Temporal\ +**Severity**: + + +## Description +The number and percent of records with a date value in the @cdmFieldName field of the @cdmTableName table that occurs prior to birth. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/plausibleAfterBirth.Rmd b/vignettes/checks/plausibleAfterBirth.Rmd similarity index 100% rename from vignettes/plausibleAfterBirth.Rmd rename to vignettes/checks/plausibleAfterBirth.Rmd diff --git a/vignettes/checks/plausibleBeforeDeath.Rmd b/vignettes/checks/plausibleBeforeDeath.Rmd new file mode 100644 index 00000000..91adf4c4 --- /dev/null +++ b/vignettes/checks/plausibleBeforeDeath.Rmd @@ -0,0 +1,46 @@ +--- +title: "plausibleBeforeDeath" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Plausibility\ +**Subcategory**: Temporal\ +**Severity**: + + +## Description +The number and percent of records with a date value in the @cdmFieldName field of the @cdmTableName table that occurs after death. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/plausibleDuringLife.Rmd b/vignettes/checks/plausibleDuringLife.Rmd new file mode 100644 index 00000000..40326cd8 --- /dev/null +++ b/vignettes/checks/plausibleDuringLife.Rmd @@ -0,0 +1,46 @@ +--- +title: "plausibleDuringLife" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Plausibility\ +**Subcategory**: Temporal\ +**Severity**: + + +## Description +If yes, the number and percent of records with a date value in the @cdmFieldName field of the @cdmTableName table that occurs after death. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/plausibleGender.Rmd b/vignettes/checks/plausibleGender.Rmd new file mode 100644 index 00000000..7fb6ca8b --- /dev/null +++ b/vignettes/checks/plausibleGender.Rmd @@ -0,0 +1,46 @@ +--- +title: "plausibleGender" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: CONCEPT\ +**Context**: Validation\ +**Category**: Plausibility\ +**Subcategory**: Atemporal\ +**Severity**: + + +## Description +For a CONCEPT_ID @conceptId (@conceptName), the number and percent of records associated with patients with an implausible gender (correct gender = @plausibleGender). + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/plausibleStartBeforeEnd.Rmd b/vignettes/checks/plausibleStartBeforeEnd.Rmd new file mode 100644 index 00000000..2d99c696 --- /dev/null +++ b/vignettes/checks/plausibleStartBeforeEnd.Rmd @@ -0,0 +1,46 @@ +--- +title: "plausibleStartBeforeEnd" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Plausibility\ +**Subcategory**: Temporal\ +**Severity**: + + +## Description +The number and percent of records with a value in the @cdmFieldName field of the @cdmTableName that occurs after the date in the @plausibleStartBeforeEndFieldName. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/plausibleTemporalAfter.Rmd b/vignettes/checks/plausibleTemporalAfter.Rmd new file mode 100644 index 00000000..729a2c5c --- /dev/null +++ b/vignettes/checks/plausibleTemporalAfter.Rmd @@ -0,0 +1,46 @@ +--- +title: "plausibleTemporalAfter" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Plausibility\ +**Subcategory**: Temporal\ +**Severity**: + + +## Description +The number and percent of records with a value in the @cdmFieldName field of the @cdmTableName that occurs prior to the date in the @plausibleTemporalAfterFieldName field of the @plausibleTemporalAfterTableName table. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/plausibleUnitConceptIds.Rmd b/vignettes/checks/plausibleUnitConceptIds.Rmd new file mode 100644 index 00000000..67f1a2bf --- /dev/null +++ b/vignettes/checks/plausibleUnitConceptIds.Rmd @@ -0,0 +1,46 @@ +--- +title: "plausibleUnitConceptIds" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: CONCEPT\ +**Context**: Verification\ +**Category**: Plausibility\ +**Subcategory**: Atemporal\ +**Severity**: + + +## Description +The number and percent of records for a given CONCEPT_ID @conceptId (@conceptName) with implausible units (i.e., UNIT_CONCEPT_ID NOT IN (@plausibleUnitConceptIds)). + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/plausibleValueHigh.Rmd b/vignettes/checks/plausibleValueHigh.Rmd new file mode 100644 index 00000000..cd5de2da --- /dev/null +++ b/vignettes/checks/plausibleValueHigh.Rmd @@ -0,0 +1,46 @@ +--- +title: "plausibleValueHigh" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Plausibility\ +**Subcategory**: Atemporal\ +**Severity**: + + +## Description +The number and percent of records with a value in the @cdmFieldName field of the @cdmTableName table greater than @plausibleValueHigh. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/plausibleValueLow.Rmd b/vignettes/checks/plausibleValueLow.Rmd new file mode 100644 index 00000000..712a6391 --- /dev/null +++ b/vignettes/checks/plausibleValueLow.Rmd @@ -0,0 +1,46 @@ +--- +title: "plausibleValueLow" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Plausibility\ +**Subcategory**: Atemporal\ +**Severity**: + + +## Description +The number and percent of records with a value in the @cdmFieldName field of the @cdmTableName table less than @plausibleValueLow. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/sourceConceptRecordCompleteness.Rmd b/vignettes/checks/sourceConceptRecordCompleteness.Rmd new file mode 100644 index 00000000..d5efc4bc --- /dev/null +++ b/vignettes/checks/sourceConceptRecordCompleteness.Rmd @@ -0,0 +1,46 @@ +--- +title: "sourceConceptRecordCompleteness" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Completeness\ +**Subcategory**: \ +**Severity**: + + +## Description +The number and percent of records with a value of 0 in the source concept field @cdmFieldName in the @cdmTableName table. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/sourceValueCompleteness.Rmd b/vignettes/checks/sourceValueCompleteness.Rmd new file mode 100644 index 00000000..20c6706f --- /dev/null +++ b/vignettes/checks/sourceValueCompleteness.Rmd @@ -0,0 +1,46 @@ +--- +title: "sourceValueCompleteness" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Completeness\ +**Subcategory**: \ +**Severity**: + + +## Description +The number and percent of distinct source values in the @cdmFieldName field of the @cdmTableName table mapped to 0. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/standardConceptRecordCompleteness.Rmd b/vignettes/checks/standardConceptRecordCompleteness.Rmd new file mode 100644 index 00000000..2aa27587 --- /dev/null +++ b/vignettes/checks/standardConceptRecordCompleteness.Rmd @@ -0,0 +1,46 @@ +--- +title: "standardConceptRecordCompleteness" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Completeness\ +**Subcategory**: \ +**Severity**: + + +## Description +The number and percent of records with a value of 0 in the standard concept field @cdmFieldName in the @cdmTableName table. + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users + diff --git a/vignettes/checks/withinVisitDates.Rmd b/vignettes/checks/withinVisitDates.Rmd new file mode 100644 index 00000000..b6c9ec1e --- /dev/null +++ b/vignettes/checks/withinVisitDates.Rmd @@ -0,0 +1,46 @@ +--- +title: "withinVisitDates" +author: "" +date: "`r Sys.Date()`" +output: + html_document: + number_sections: yes + toc: yes +--- + +## Summary + +**Level**: FIELD\ +**Context**: Verification\ +**Category**: Conformance\ +**Subcategory**: \ +**Severity**: + + +## Description +The number and percent of records not within one week on either side of the corresponding visit occurrence start and end date + + +## Definition + +- *Numerator*: +- *Denominator*: +- *Related CDM Convention(s)*: +- *CDM Fields/Tables*: +- *Default Threshold Value*: + + +## User Guidance + + +### Violated rows query +```sql + +``` + + +### ETL Developers + + +### Data Users +