| Title: | Regulatory Submission Profiles for Clinical Submission Readiness |
| Version: | 0.1.0 |
| Description: | Defines submission profiles per regulatory authority with authority-specific pillar weights, decision thresholds, indicator requirements, and risk configuration. Supports the U.S. Food and Drug Administration (FDA), European Medicines Agency (EMA), Pharmaceuticals and Medical Devices Agency (PMDA), Health Canada, Therapeutic Goods Administration (TGA), and Medicines and Healthcare products Regulatory Agency (MHRA). Integrates with 'r4subscore' and 'r4subrisk' configuration systems. |
| License: | MIT + file LICENSE |
| URL: | https://github.com/R4SUB/r4subprofile |
| BugReports: | https://github.com/R4SUB/r4subprofile/issues |
| Depends: | R (≥ 4.2) |
| Imports: | cli, r4subcore, rlang, tibble |
| Suggests: | r4subscore, r4subrisk, testthat (≥ 3.0.0) |
| Config/testthat/edition: | 3 |
| Encoding: | UTF-8 |
| RoxygenNote: | 7.3.3 |
| NeedsCompilation: | no |
| Packaged: | 2026-02-25 15:09:00 UTC; aeroe |
| Author: | Pawan Rama Mali [aut, cre, cph] |
| Maintainer: | Pawan Rama Mali <prm@outlook.in> |
| Repository: | CRAN |
| Date/Publication: | 2026-03-03 21:20:32 UTC |
r4subprofile: Regulatory Submission Profiles for Clinical Submission Readiness
Description
Defines submission profiles per regulatory authority with authority-specific pillar weights, decision thresholds, indicator requirements, and risk configuration. Supports the U.S. Food and Drug Administration (FDA), European Medicines Agency (EMA), Pharmaceuticals and Medical Devices Agency (PMDA), Health Canada, Therapeutic Goods Administration (TGA), and Medicines and Healthcare products Regulatory Agency (MHRA). Integrates with 'r4subscore' and 'r4subrisk' configuration systems.
Author(s)
Maintainer: Pawan Rama Mali prm@outlook.in [copyright holder]
See Also
Useful links:
List Supported Regulatory Authorities
Description
Returns a summary of all supported regulatory authorities with their full names, countries, and number of available submission types.
Usage
list_authorities()
Value
A tibble with columns: authority, full_name, country,
n_submission_types.
Examples
list_authorities()
List Submission Types for an Authority
Description
Returns the valid submission types for a given regulatory authority.
Usage
list_submission_types(authority)
Arguments
authority |
Character. A supported authority name. |
Value
A character vector of valid submission types.
Examples
list_submission_types("FDA")
list_submission_types("EMA")
Print Profile Validation Result
Description
Print Profile Validation Result
Usage
## S3 method for class 'profile_validation'
print(x, ...)
Arguments
x |
A |
... |
Ignored. |
Value
Invisibly returns x. Called for its side effect of printing the
compliance status, coverage percentage, and any missing indicators or
asset types to the console.
Print Submission Profile
Description
Print Submission Profile
Usage
## S3 method for class 'submission_profile'
print(x, ...)
Arguments
x |
A |
... |
Ignored. |
Value
Invisibly returns x. Called for its side effect of printing a
summary of the submission profile (authority, submission type, pillar
weights, ready band, required indicators, and minimum coverage) to the
console.
Get Required Indicators for a Profile
Description
Returns the list of indicator IDs that are mandatory for the given submission profile.
Usage
profile_required_indicators(profile)
Arguments
profile |
A |
Value
A character vector of required indicator_id values.
Examples
prof <- submission_profile("FDA", "NDA")
profile_required_indicators(prof)
prof_ind <- submission_profile("FDA", "IND")
profile_required_indicators(prof_ind)
Extract Risk Configuration from a Profile
Description
Returns a list with structure compatible with r4subrisk::risk_config_default().
Can be passed directly to risk assessment functions.
Usage
profile_risk_config(profile)
Arguments
profile |
A |
Value
A list of class "risk_config" with rpn_bands,
evidence_severity_to_probability, evidence_severity_to_impact,
and default_detectability.
Examples
prof <- submission_profile("FDA", "NDA")
cfg <- profile_risk_config(prof)
cfg$rpn_bands
Extract SCI Configuration from a Profile
Description
Returns a list with structure compatible with r4subscore::sci_config_default().
Can be passed directly to compute_pillar_scores() or compute_sci().
Usage
profile_sci_config(profile)
Arguments
profile |
A |
Value
A list of class "sci_config" with pillar_weights and bands.
Examples
prof <- submission_profile("FDA", "NDA")
cfg <- profile_sci_config(prof)
cfg$pillar_weights
cfg$bands
Summarize a Submission Profile
Description
Prints a formatted summary of a regulatory submission profile including authority details, pillar weights, decision bands, and requirements.
Usage
profile_summary(profile)
Arguments
profile |
A |
Value
The profile object, invisibly.
Examples
prof <- submission_profile("FDA", "NDA")
profile_summary(prof)
Create a Submission Profile
Description
Constructs a regulatory submission profile with authority-specific pillar weights, decision bands, required indicators, and risk configuration.
Usage
submission_profile(authority, submission_type, study_phase = NULL)
Arguments
authority |
Character. Regulatory authority name (e.g., |
submission_type |
Character. Submission type for the authority
(e.g., |
study_phase |
Character or |
Value
A list of class "submission_profile" with elements:
authority, full_name, country, submission_type, study_phase,
pillar_weights, bands, required_indicators, required_asset_types,
minimum_coverage, rpn_bands, default_detectability.
Examples
prof <- submission_profile("FDA", "NDA")
prof$pillar_weights
prof$required_indicators
prof_ema <- submission_profile("EMA", "MAA", study_phase = "Phase3")
prof_ema$bands
Validate Evidence Against a Submission Profile
Description
Checks whether an evidence table meets the requirements specified by a regulatory submission profile: required indicators present, required asset types covered, and minimum indicator coverage met.
Usage
validate_against_profile(evidence, profile)
Arguments
evidence |
A validated evidence data.frame conforming to the r4subcore evidence schema. |
profile |
A |
Value
A list of class "profile_validation" with elements:
-
is_compliant: logical;TRUEif all requirements are met -
missing_indicators: character vector of missing required indicator IDs -
missing_asset_types: character vector of missing required asset types -
coverage: numeric; fraction of required indicators present (0-1) -
coverage_met: logical; whether coverage meets the minimum threshold -
details: tibble with per-requirement status
Examples
ctx <- r4subcore::r4sub_run_context(study_id = "STUDY01")
ev <- r4subcore::as_evidence(
data.frame(
asset_type = "dataset", asset_id = "ADSL",
source_name = "test", source_version = "1.0",
indicator_id = "Q-001", indicator_name = "Test",
indicator_domain = "quality", severity = "high",
result = "fail", metric_value = 1, metric_unit = "n",
message = "Example finding", location = "ADSL",
evidence_payload = "{}", stringsAsFactors = FALSE
), ctx = ctx
)
prof <- submission_profile("FDA", "NDA")
result <- validate_against_profile(ev, prof)
result$is_compliant
result$missing_indicators