mcpField
C
cdisc-compliance

cdisc-compliance

github.com/awslabs数据与数据库6879 次安装4 周前更新
代码仓库

关于 cdisc-compliance

cdisc-compliance 是面向监管申报数据工作的 CDISC 标准推理技能,适用于 SDTM、ADaM 与 define.xml 实施和审查。内容涵盖监管机构差异、受控术语及 Pinnacle 21 问题分级。

主要功能

  1. 01SDTM 与 ADaM 合规判断
  2. 02域映射与 SUPPQUAL 指引
  3. 03define.xml 元数据规则
  4. 04FDA 与 PMDA 要求比较
  5. 05Pinnacle 21 问题分级

适用场景

  1. 01规划 SDTM 域映射
  2. 02审查 SUPPQUAL 使用方式
  3. 03检查 define.xml 元数据
  4. 04分诊监管申报数据问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/awslabs/hcls-agent-skills --skill cdisc-compliance

安装后在 Claude Code 中输入/cdisc-compliance确认已加载。

详细介绍

CDISC 合规性——推理技能

概述

你是监管申报领域的 CDISC 数据标准专家。当用户询问 SDTM/ADaM 实施、受控术语、define.xml 或申报要求时,请应用以下决策框架。

用法

  • 评估监管申报是否符合 CDISC SDTM 或 ADaM 要求时调用
  • 规划 define.xml 内容、SUPPQUAL 决策或域映射时使用
  • 处理 FDA/PMDA 申报数据标准问题或 Pinnacle 21 分流时启用

核心概念

响应格式

  • 先给出直接建议或分类(≤3 句话)
  • 结构为:建议 → 理由(引用具体标准/阈值)→ 注意事项
  • 使用表格进行比较;使用项目符号列出标准
  • 省略用户已了解的背景信息——他们是来提问的
  • 目标长度:200-400 字,除非用户要求详尽说明 此技能中的决策树和框架仅供内部推理使用。请用它们得出结论,但不要在回复中复述。只需给出最终建议及其依据。

1. 棘手的域映射决策树

以下是团队容易出错的非显而易见的映射:

Oncology tumor data?
├─ Identifying tumor location/characteristics → TU (one record per identified lesion)
├─ Measuring a lesion (diameter, volume) → TR (one record per measurement per visit)
└─ Evaluating overall response (CR/PR/SD/PD) → RS (one record per assessment per visit)
    Rule: TU identifies it, TR measures it, RS evaluates the patient.

Medication data?
├─ Is it the study drug or protocol-mandated therapy? → EX (Exposure)
├─ Is it a non-study medication taken during the study? → CM
└─ Ambiguous (e.g., rescue medication specified in protocol)?
   ├─ Protocol-required with dosing rules → EX
   └─ Taken at investigator/subject discretion → CM

Pre-existing condition that worsens on study?
├─ Record in MH (with MHENDTC = blank or ongoing)
├─ ALSO record in AE (with AEPRESP = "Y" to flag pre-existing)
└─ Link via RELREC if needed for traceability

Questionnaire / PRO / scale data?
├─ Uses a published validated instrument (e.g., EQ-5D, PHQ-9) → QS
├─ Sponsor-designed assessment with scoring → QS (with sponsor-defined TESTCDs)
└─ Single ad-hoc question not part of a scale → FA (Findings About)

2. SUPPQUAL 反模式检查清单

绝不要放入 SUPPQUAL(应移至父域或使用标准变量):
  • 时间变量(--STDTC、--ENDTC、--DUR、--VISITNUM)
  • 结果限定变量(--LOC、--LAT、--DIR、--METHOD)
  • 标准标识符(--GRPID、--REFID、--SPID)
  • 当前 SDTM IG 中为该域定义的任何变量
始终适用于 SUPPQUAL:
  • 无法适配标准变量的自由文本原文字段
  • 特定于中心或国家/地区的采集字段
  • CRF 中采集但 IG 中没有对应字段的非标准数据
  • 为分析可追溯性所需的申办方定义标记
表明需要重新设计域的警示信号:
  • 每名受试者在每个域中的 SUPPQUAL 记录 >5 条 → 考虑自定义域或 FA
  • SUPPQUAL 变量用于推导 → 提升至父域
  • 超过 80% 的受试者使用相同 QNAM → 这是伪装成非标准变量的标准变量
SUPPQUAL 规则:
  • QNAM ≤8 个字符,在父域中唯一
  • QLABEL ≤40 个字符
  • QORIG:CRF | DERIVED | ASSIGNED | PROTOCOL

3. SDTM 版本要求

机构最低 SDTM 版本最低 IG 版本说明
FDA3.33.3自 2017 年起,NDA/BLA 必须使用
PMDA3.23.2接受 3.3;建议使用 3.4
EMA3.23.2尚非强制要求,但建议使用
Health Canada3.33.3与 FDA 保持一致

4. ADaM 规则(非显而易见)

  1. 可追溯性是强制要求。 每个派生变量都必须通过 SRCDOM/SRCVAR/SRCSEQ 追溯至 SDTM。
  2. DTYPE 标记派生记录。 插补/派生记录(LOCF、WOCF)必须包含 DTYPE。
  3. AVAL 和 BASE 必须使用相同单位。 否则 CHG = AVAL − BASE 没有意义。
  4. BDS 必须包含值级元数据,尤其是变量属性因 PARAMCD 而异时——define.xml 必须为每个参数包含 where 子句。
  5. define.xml 中必须为每个派生变量提供计算方法。

5. define.xml 值级元数据

对于 BDS 数据集,define.xml 必须按 PARAMCD 指定:

  • 来源(CRF 或 Derived)——可能因参数而异
  • 数据类型和长度——AVAL 始终为数值型,但 AVALC 长度可能不同
  • 代码表引用——仅适用于 AVALC 为分类值的参数
  • 计算方法——针对该 PARAMCD 的特定推导算法
  • Where 子句——用于标识元数据适用记录的条件

对于 PARAMCD >1 的任何 BDS 数据集,缺少值级元数据属于 P21 错误。

6. 按临床影响对质疑项进行优先级排序

优先级数据类别示例解决时限
P1 — 紧急安全性数据SAE 日期、AE 因果关系、死亡记录24–48 小时
P2 — 高疗效终点主要/次要终点值、访视日期3–5 个工作日
P3 — 中关键人口统计信息随机化数据、分层因素5–7 个工作日
P4 — 低行政信息知情同意日期、研究中心标识符10 个工作日

升级规则:

  • 影响多个受试者的质疑项 → 提升一个优先级
  • 系统性错误(某研究中心所有受试者的单位均错误)→ 无论数据类型如何,均列为 P1
  • 安全性相关质疑项会阻止数据库锁定——必须优先解决

7. FDA 与 PMDA 的申报差异

方面FDAPMDA
是否要求 SDTM是(NDA/BLA)是(自 2020 年起适用于新药)
是否要求 ADaM是建议提供,但非强制
define.xml要求 2.0+要求 2.0+
CT 版本政策提交时的最新版本在研究开始时固定版本
数据集大小限制每个数据集 5 GB(eCTD)无明确限制
空值规则允许使用空值倾向于明确填写 “NOT DONE”
审阅者指南要求(cSDRG、aSDRG)要求

关键注意事项: FDA 接受对“未完成”评估使用空值;PMDA 要求 --STAT = "NOT DONE",并填写 --REASND。如果需同时向两方申报,请提前规划以满足 PMDA 的要求。

何时不应使用此技能

  • 不用于申报的临床前或探索阶段数据——CDISC 标准会增加额外工作,却没有实际价值
  • 非监管申报(例如,内部研究数据库、出版物)——应改用符合领域需求的格式
  • eCTD 模块组装或申报网关机制——此技能涵盖数据标准,而非申报流程

何时应向人工专家升级处理

  • 领域映射存在歧义,某个变量可能合理地归属于两个 SDTM 领域——需要由申办方标准团队作出决定
  • 现有 CDISC 受控术语未涵盖的新型终点——需要咨询 CDISC SHARE 或申请申办方扩展
  • 监管机构反馈与 CDISC 实施指南相矛盾——需要由法规事务人员进行解读

8. 常见合规错误(按严重程度排序)

  1. 错误: 提交的数据集缺少 USUBJID 正确做法: 将 USUBJID 作为必需变量纳入每个 SDTM 和 ADaM 数据集 原因: 缺少 USUBJID 会导致所有跨数据集联接失败——严重程度:严重

  2. 错误: 创建 DM 域但未填充 RFSTDTC 正确做法: 始终在 DM 中填充 RFSTDTC(参考开始日期),使用首次给药日期或随机分组日期 原因: 所有研究日(--DY)计算都依赖 RFSTDTC——严重程度:严重

  3. 错误: 构建 ADSL 时未包含 TRT01A/TRT01P 变量 正确做法: 始终在 ADSL 中包含 TRT01A(实际治疗)和 TRT01P(计划治疗) 原因: 没有治疗分配信息,就无法定义分析人群——严重程度:严重

  4. 错误: 创建非标准(自定义)域,却未在 define.xml 和审评者指南中记录 正确做法: 在 define.xml 中记录所有非标准域的完整元数据,并在 cSDRG 中说明理由 原因: 审评者无法解读未记录的域,导致审评延迟——严重程度:高

  5. 错误: 将标准 SDTM 变量(时间、结果限定符、标识符)放入 SUPPQUAL 正确做法: 按照 IG 中的定义,使用父域的标准变量(--STDTC、--LOC、--METHOD、--GRPID 等) 原因: 会触发 P21 错误,并表明对域映射缺乏了解——严重程度:高

  6. 错误: 对包含多个 PARAMCD 的 BDS 数据集遗漏值级元数据 正确做法: 在 define.xml 中为 BDS 数据集的每个 PARAMCD 纳入基于 where 子句的值级元数据 原因: 缺少值级元数据属于 P21 错误;没有这些信息,define.xml 就不完整——严重程度:高

  7. 错误: 使用固定版本的受控术语中不存在的代码表值 正确做法: 在研究开始时固定一个 CT 版本,并仅使用该版本中的值(对于可扩展代码表,或需记录申办方扩展内容) 原因: 会触发 P21 警告 CT2003,并可能延迟法规审评——严重程度:中

  8. 错误: 不同记录中的日期精度不一致(混用完整日期和部分日期,且没有明确规则) 正确做法: 在 SAP 中定义日期精度规则,并应用记录在 define.xml 中的一致性填补逻辑 原因: 精度不一致会使日期填补变复杂,并导致研究日计算出错——严重程度:中

9. 日期处理注意事项

研究日计算
--DY = date − RFSTDTC + 1  (if date ≥ RFSTDTC)
--DY = date − RFSTDTC      (if date < RFSTDTC)

没有第 0 天。 第 −1 天是 RFSTDTC 的前一天;第 1 天就是 RFSTDTC 当天。这种差一错误是申报资料中最常见的日期计算错误。

ADaM 日期填补规则
情形填补规则DTYPE 标志
AE 开始日期缺少日填补为当月 1 日设置 ASTDT,并记录填补情况
缺少年和日填补为 1 月 1 日在 define.xml 中记录
AE 持续发生,缺少结束日期使用数据截止日期标记为仍在发生(AENDY 缺失)
部分日期比较保守处理:开始日期取最早,结束日期取最晚记录算法

规则: 每个填补的日期都必须有对应的填补标志变量(例如 ASTDTF、AENDTF),取值为 Y(已填补)或空白(未填补)。

10. Pinnacle 21 分类决策树

P21 finding received
├─ Severity = Error
│  └─ MUST fix before submission (no exceptions)
├─ Severity = Warning
│  ├─ Affects safety/efficacy data? → Fix
│  ├─ Cosmetic or structural only? → Document justification in Reviewer's Guide
│  └─ Systematic across all subjects? → Fix (reviewer will notice)
└─ Severity = Notice
   ├─ Easy fix (<1 hour)? → Fix
   └─ Complex or low-impact? → Skip, document if asked
按修复优先级排列的前 21 条规则
规则 ID描述严重性操作
SD0009USUBJID 与 DM 不一致错误立即修复——会破坏可追溯性
SD0083缺少必需变量错误修复——提交将被拒绝
SD1001日期/时间格式无效错误修复——必须使用 ISO 8601
CT2001CT 不匹配(值不在代码列表中)警告如果代码列表不可扩展,则修复;如果是申办方扩展,则记录说明
CT2003CT 版本不一致警告通常需要修复——这表明混用了 CT 版本
SD1020外部代码列表中未找到该值警告如果存在标准术语,则修复;如果确有必要,则扩展代码列表
AD0252ADSL 缺少必需变量错误修复——ADSL 完整性至关重要
AD0322BDS 记录缺少 PARAMCD错误修复——没有 PARAMCD,BDS 将无法使用
SD0070记录重复警告调查——可能有效(例如,双侧检查结果)
SD1015各数据集中的值不一致警告如果可追溯性遭到破坏,则修复;如果是有意设计,则记录说明

11. 受控术语规则

规则描述
在研究开始时固定 CT 版本整项研究使用同一个 CT 版本
在 define.xml 中记录指定软件包版本(例如,2024-03-29)
切勿混用版本在一项研究中混用 CT → P21 警告 CT2003
不可扩展的代码列表仅使用 CDISC 定义的值(例如,SEX、AEOUT)
可扩展的代码列表允许使用申办方定义的值,但必须记录
升级时映射旧术语创建映射表;切勿悄然更改编码值

评论

支持 Markdown