背景:FDA Data Standard Catalog_6.22.2022 - V8.1 显示FDA于15Mar2021 开始支持IG 3.3,并于15Mar2023强制要求使用IG3.3;
PMDA datacatalog_20211215_ENG 显示PMDA只是的最新IG版本仍为3.2, 尚不支持3.3;
NMPA 没有关于IG版本的具体要求,CDISC China group已经发布了中文翻译版的IG3.2,但目前尚没有中文翻译版的IG3.3.
下文中总结IG3.3的新变化,全部基于IG 3.3文档"Section 1.3 Relationship to Prior CDISC Documents" 和 "Appendix E: Revision History"的内容进行翻译,一些关于之前版本的笔误或名词的修正或者格式上的更新说明会略过,只关注具体的技术性更新。
---------------------------------------------------------------------------------------------------------------------------------
Sectoin 1.3: 列举新的域,新增了Section 9 (译注: 具体的域会在之后单独介绍)
Section 1.4:列举其他的SDTM IG文档 SDTMIG-AP/MD/PGx (译注: 新版本纳入了之前独立与IG3.2的文档)
Section 1.4.1: 新增章节"如何阅读域说明书" (译注: 该新增章节是对域说明书的具体介绍,没有新的概念)
Section 2.5:
1/ 新增关于域版本的信息
从SDTM IG v3.3开始
新的域会被赋予版本1.0
已经存在的域,如果相比于上一版SDTMIG有更新,则其版本会更新
已经存在的域,如果相比于上一版SDTMIG没有更新,则其版本不会更新
为了决定域版本而构成更改的内容将进一步开发,但对于SDTMIG v3.3,如果规范和/或域中的假设相对于SDTMIG v3.2发生更改,则域被分配了v3.3版本。
2/ 更新了关于包含perm var的建议:
IG 3.2中的叙述如下:
只要perm var没有收集任何值,申办方可以自由决定移除define xml中的关于该变量的相关描述.
IG 3.3中更新为:
在适当的情况下,应在 SDTM 数据集中使用perm var
- 如果一项研究中的某个数据会由一个perm var表示,那么这个变量必须包含在SDTM数据集中,即使它是空值。并且在define xml中声明这一变量是空值
- 如果一项研究中不包括会由perm var表示的数据,那么这个变量不会被包含到SDTM数据集中,也不会再define xml中声明
(译注:没有理解上面这两种情况,是否有具体例子的说明?)
[译注] 3/ 下面这句话在IG3.3中被删除了,因为“CDISC Discussion Forum”已经退役失效,但是"Appendix E: Revision History"没有进行说明,可能因为是在Section1.5的变动描述中已经声明过。
Therefore, Sponsors wishing to nominate such variables for future consideration should provide a rationale and description of the proposed variable(s) along with representative examples to the CDISC Public Discussion Forum.
Section 2.6:
[译注] 原文说更新的是“移除域的列表,因为冗余", 但实际这处更新对应的是Section 2.5,不是2.6
实际上Section 2.6更新了一些细节的叙述。
Section 2.7: 纳入了一下SDTM中的新变量,它们不会用在人体临床试验,或者是使用时需要注意
Section 4.1.3.1: 新增章节EPOCH变量指导
对于Finding类域中的EPOCH, 它应当基于--DTC变量导出,因为--DTC是检验的日期时间,或者样本检测的日期时间,或者样本收集的日期时间。对于intervation或者events类域中的观测,EPOCH应当基于--STDTC变量导出,因为--STDTC是intervention或者event的开始。一个可能的但不常见的例外情况是,一个基于间隔收集的样本发现,它起始于一个epoch,但是结束于另一个epoch,这种情况下,可能比较适合使用--ENDTC来导出EPOCH。
申办方不应当估算(impute)EPOCH的值,但是在可能的情况下,应当基于CRF的说名和结构来对EPOCH赋值,即使EPOCH没有直接收集,或者日期时间数据没有以足够的精度收集来决定一个观测的EPOCH值。如果不可能决定一个观测的EPOCH值,那么EPOCH需要做空。导出EPOCH的规则(Method)可以在define xml中进行描述。
由于EPOCH的构成基于研究设计,因此不适用于受试者参与研究之前开始的intervention或events,也不适用于受试者参与研究之前进行的Finding检查,对于这样的记录,EPOCH应该赋空值。注意一个受试者参与的研究包括screening阶段,它一般发生在在DM.RFSTDTC之前
Section 4.1.5 更新了关于包含perm var的建议(于Section 2.5的变更同步)
[译注] 此处有一句话在Section 2.5中没有提及:
域假设中提到的perm var "一般不是用",不代表禁止使用该变量
Section 4.1.9: 原IG3.2中的Section 4.1.9更新为IG3.2中的Section 4.1.8.3
[译注]复习此处发现sort key可以使用SUPP--domain中的QNAM变量,应用SDTM PLUS很容易实现。但是如果main domain和SUPP domain是独立编程生成,往往会遇到无法用SUPP qnam var在main domain中用作排序变量的情况,过往一般的处理是把相关信息储存到--SPID中并用作排序,这样能避免这一问题。另外如果区分2个观测的变量存在于SUPP中,Pinnacle21会报dulicate warning,这种warning似乎无法避免,只能后期解释
Section 4.2.6: 修正了--LNKID 和 --LNKGRP 变量的信息
[译注]似乎是做了描述上的简化
[备忘] --LNKID one-to-many ; --LNKGRP many-to-one
Section 4.3.1: 对在域说明书中的CT做了更详细的展示来说明其关系
Section 4.3.3: 增加了关于CT子集的建议:
当一个域或者数据集的说明书包含一个变量的codelist时,并不是该codelist中所有的值都需要在计划收集的数据当中;只有计划收集数据涵盖的值才会被包括到define xml中(译注:此处的意思是比如CT文档中RACE codelist含有许多的值,像ASIAN, AMERICAN, AFRICA 等,但是试验的CRF中RACE设计的计划收集的值只有ASIAN,那么define xml中只展示ASIAN,不展示RACE codelist下的所有值)例如,--PRESP与CT=NY相关联,但是只有Y允许做到--PRESP中。未来版本的define xml 说明书会考虑包括如何表示CT子集的信息
Section 4.4.1: 关于ISO8601时间格式增加了[可选择的n分之一秒数部分 (.n+)?]以及[可选择的时区部分(((+|-)hh:mm)|Z)?]:
YYYY-MM-DDThh:mm:ss(.n+)?(((+|-)hh:mm)|Z)?
[译注]后续的Section 4.4.2提供了“n分之一秒数部分”的例子,如2003-12-15T13:14:17.123,其中.123表示千分之一百二十三秒
但是并没有给出具体时区的表示例子
Section 4.4.7: 解释CT=STENRF的值中,哪些可以用于相对时间变量--STRF/--ENRF:
--STRF允许用的值包括"BEFORE", "DURING", "DURING/AFTER", "AFTER", and "U" (for unknown) 虽然"COINCIDENT" and "ONGOING"在CT=STENRF中,但是它们描述的时相对于一个时间点的状态,而非相对于时间段,所以不适宜用在--STRF变量中。如果一个event或intervention被记作开始于study reference period"之后", 这看起来有些不寻常,但是是可能的,这取决于在某个项目中study reference是如何定义的。
--ENRF允许用的值包括"BEFORE", "DURING", "DURING/AFTER", "AFTER", and "U" (for unknown)。如果要使用--ENFT,那么--ENRF=“AFTER”表示事件没有结束于study reference period之前或期间。虽然"COINCIDENT" and "ONGOING"在CT=STENRF中,但是它们描述的时相对于一个时间点的状态,而非相对于时间段,所以不适宜用在--ENRF变量中。
[memo] --STRF表示观测的开始时间相对于研究时间段的状态,注意时间段或者说是时间范围,不是一个时间点。
Secton 4.4.10: LB例子中的一个时间错误被更正
Section 4.4.11: 新增章节 疾病里程碑和疾病里程碑时间变量
“疾病里程碑”是指在疾病过程中可以预期的事件或活动,但是其时间不由试验设计的日程所控制。一个疾病里程碑可能是发生在试验之前的事件,但是其包含了数据被收集的时间,比如在研究中关于疾病的诊断。一个疾病里程碑还可以是预期会在研究中发生,以及如果其发生,会触发相关的在计划外访视的数据收集,比如感兴趣的AE信息。一个研究的疾病里程碑的类型会在study level的TM数据集中定义(Section 7.3.3). 对于一个特定受试者的疾病里程碑发生时间信息会储存在special purpose域SM中(Section 5.4), 它是一个结构于SV和SE类似的域。
不是所有的研究都会有疾病里程碑。如果一个研究没有疾病里程碑,TM和SM域不需要生成,并且疾病里程碑时间变量不需要包括在其他域中。([译注]原文用词是may not be included)
疾病里程碑命名:
疾病里程碑的实例在受试者级别被命名。疾病里程碑的名称的组成是一个字符串,这个字符串取决于疾病里程碑的类型(MIDSTYPE in TM and SM); 如果疾病里程碑的类型重复出现多次,则由其他疾病里程碑的实例中具有相同类型的疾病里程碑按时间顺序排列组成([译注] 翻译的很绕,不是很理解这句话,后面有没有例子?)疾病里程碑名称中用到的字符串通常是疾病里程碑类型的缩写形式。比如,如估计哦疾病里程碑类型是“EPISODE OF DISEASE UNDER STUDY", 那么MIDS (即疾病里程碑名称)的值可以包含"EPISODE1", "EPISODE2", 等, 或者"EPISODE01", "EPISODE02", 等.长文本MIDSTYPE和短文本MIDS的关联在SM域中声明。
疾病里程碑名称(MIDS):
如果一个特定研究中特定受试者的事件被定义为疾病里程碑,那么它会像往常一样记录到finding,intervention或者events类别中。并且,这个记录会包含MIDS时间变量,伴随对应的疾病里程碑名称一起导出。疾病里程碑时间变量也在SM域中声明。
表示一个疾病里程碑的记录不包含时间变量RELMID和MIDSDTC的值,后者是用来表示域疾病里程碑相关的其他观测的时间变量。记录中通常的关于疾病里程碑的时间变量(--DTC, --STDTC, --ENDTC)提供里该观测所需的时间信息。
与疾病里程碑相关的时间变量(MIDS,RELMIDS,MIDSDTC)
对于一个由疾病里程碑发生而触发的观测,该观测和疾病里程碑的关系可以用疾病里程碑时间变量MIDS,RLEMIDS,和MIDSDTC表示。
- MIDS导出为该受试者的疾病里程碑的名称。MIDS是用来描述观测相对于疾病里程碑发生时间的”锚点“。在这个意义上,它的功能类似于--TPTREF关于时间点的作用
- RELMIDS通常导出为一个文本性的描述,这一描述是关于观测和MIDS定义的疾病里程碑之间的临时关系。关于RELMIDS的CT还没有开发,但是它可能包括例如"IMMEDIATELY BEFORE", "AT START OF", "DURING", "AT END OF", and "SHORTLY AFTER"这样的值。它与--ELTM类似,除非--ELTM表示的是ISO 8601格式的区间
- MIDSDTC导出为疾病里程碑的日期时间。对于finding 类是--DTC, 对于event和intervention类是--STDTC, 它是SM与中SMSTDTC记录的日期。它的功能类似于--RFTDTC。
在某些情况下,与疾病里程碑一起收集的数据不包括为相关观察收集单独的日期。这对于预研究疾病里程碑尤其常见,但也可能发生在研究疾病里程碑中。在这种情况下,MIDSDTC 在记录中提供相关的日期/时间,否则这些记录将不包含任何日期。在包含观察结果的日期/时间的记录中,MIDSDTC 允许将观察结果的日期与疾病里程碑的(开始)日期轻松进行比较。在这种情况下,它的功能很像时间点观测值中的参考时间点日期/时间(--RFTDTC)。
当一个疾病里程碑是event或intervention时,由疾病里程碑触发的一些数据可以建模为关于疾病里程碑的发现(即 FAOBJ表示疾病里程碑)在这种情况下,RELMIDS应该用于描述疾病里程碑与发现中被问到的问题的主题之间的时间关系,而不是描述何时提出问题。
- 当问题的主题是疾病里程碑本身时,RELMIDS可能会填充诸如“ENTIRE EVENT”或“ENTIRE TREATMENT”之类的值。
- 当问题的主题是关于与疾病里程碑相关的某些活动或事件的发生的问题时,RELMIDS就像一个评估间隔,描述问题所关注的时间段。
~ 对于有关事件的可能原因或治疗适应症的问题,RELMIDS将具有诸如“WEEK PRIOR”或“IMMEDIATELY BEFORE”之类的值,甚至只是“BEFORE”。
~ ELMIDS将是“DURING"”,用于询问在事件或干预疾病里程碑进行期间可能发生的事情。
~ 对于疾病里程碑的后遗症,RELMIDS将具有诸如“AT DISCHARGE”或“WEEK
AFTER”或简称为“AFTER”的值。
将疾病里程碑时间变量与其他时间变量结合使用:
疾病里程碑时间变量提供相对于已为特定研究确定为疾病里程碑的活动或事件的时间。它们的使用并不排除使用收集相对于研究计划的实际日期/时间或时间的变量。
- 实际日期/时间的使用不受影响。疾病里程碑时间变量可以在实际日期/时间不可用的情况下提供时间信息,特别是对于研究前的疾病里程碑。当观察结果的问题文本引用疾病里程碑,但未收集单独的观察日期时,应填充疾病里程碑时间变量,但不应通过用疾病里程碑的日期填充它们来推断实际日期。此类问题的例子:正在研究的疾病初始诊断的疾病阶段;治疗最近的疾病发作。
- 在填充完整的实际日期/时间的位置,应填充研究日变量。这包括研究前观察的值为负数的研究天数。
- 可以填充时间变量EPOCH和TAETORD(ARM内ELEMENT的计划顺序),以便与疾病里程碑相关的研究观察。然而,根据定义,在获得知情同意时,在研究参与开始之前发生的预研究疾病里程碑没有相关的EPOCH或TAETORD。
- 在许多finding域中,Visit相关的变量是exp的,但是由研究里程碑的发生触发的结果可能不会在计划内访视中发生。
~ 与研究前疾病里程碑相关的结果通常在screening 访视时收集,尽管在该访视中没有进行测试。
~ 对于与研究疾病里程碑相关但未在计划内访视中进行的结果,应遵循填充VISITNUM和计划外访视的做法。
- 在疾病里程碑触发治疗的情况下,可能会使用具有疾病里程碑变量的时间点变量,并且相对于治疗的时间点是研究计划的一部分。例如,偏头痛试验可能需要在偏头痛治疗后的规定时间评估症状严重程度。如果偏头痛发作被视为疾病里程碑,则疾病里程碑时间变量可能会填充在暴露和症状严重程度记录中。如果该研究计划治疗多次偏头痛发作,MIDS变量将提供一种方便的方法来确定与数据相关的发作。
- 评估间隔变量(--EVLINT或--EVLTXT)可以与疾病里程碑变量结合使用。例如,患者报告的结果仪器可能在疾病里程碑时施用,并且仪器中的问题可能包括评估间隔
- event或intervention对于研究参考期(--STRF和--ENRF)或相对于参考时间点(--STRTPT和--STTPT,--ENRTPT和--ENTPT)的开始和结束的时间变量可以与疾病里程碑变量结合使用。例如,可以收集与疾病里程碑相关的伴随药物,以便填充疾病里程碑时间变量,但相对时间变量可用于伴随药物的开始或结束。
- 如果适用,可以为由疾病里程碑触发的评估填充计划评估间隔的开始和结束的时间变量。例如,特定事件的发生可能会在治疗后24小时内触发治疗和动态心电图监测。
关联和疾病里程碑:
当为研究定义了疾病里程碑时,MIDS变量用于以类似于VISITNUM链接访问时收集的观察结果的方式链接与疾病里程碑相关的观察结果。如果没有为研究定义疾病里程碑,则可以使用RELREC链接与疾病里程碑相关的记录,但是使用疾病里程碑具有某些优势:
- RELREC 表示记录或数据集之间存在关系,但不是关系的性质。具有相同 MIDS 值的记录与同一疾病里程碑相关。
- 定义疾病里程碑时,无需创建 RELREC 记录即可在与疾病里程碑关联的观测值之间建立关系。
Section 4.5.1.3: 示例中加入了--LOBXFL,时间变量,删除了--DRVFL;删除了QS的示例,因为独立的QS补充文档中有更好的示例。
Section 4.5.3.2: 关于处理变量的值大于200的情况,重新组织了描述的架构,并且澄清了变量命名的规则:
对于主域中变量长度大于200的情况>> MH.MHTERM, SUPPMH.MHTERM1
对于SUPP域中非标准变量长度大约200的情况 >> SUPPPR.PRREAS, SUPPPR.PRREAS1 (注意第一个变量必须不能以序号数字结尾,后续的变量名使用自然数顺序递增)
对于SUPP中的QLABEL,需要保持与主域中相应变量的label一致(不能加后缀的序号),如MH.MHTERM的label=“Reported Term for the Medical History”, 那么SUPPMH.MHTERM1的QLABEL同样为“Reported Term for the Medical History”,不能写成“Reported Term for the Medical History 1”。需要注意这种处理与SUPPDM.RACEx/SUPPxx.XXLOCx有这本质概念上的不同。
Section 4.5.9: 新增关于基线值的章节,描述新变量--LOBXFL, 并将其与旧的--BLFL和ADaM变量ABLFL做对比。
新变量--LOBXFL是这次最新发布的变量,目的是为了解决对值的一致定义的需求,该值可以作为比较治疗后值的参考。这个通用定义近似于基线的概念,可用于计算治疗后的变化。在过去的--BLFL作为exp变量的域,它的core现在从exp变为perm, 新变量--LOBXFL的core为exp,新增该变量以包含一致性定义。在过去的--BLFL作为perm变量的域, 新变量--LOBXFL的core为perm。
变量 | 所在域的结构 | 是否必须 | 定义 | 预期用途 |
--LOBXFL | SDTM Findings | exp 或 perm | RFXSTDTC之前的最后一个不缺失的值(需要操作派生) | 在所有研究和所有申办方的关于治疗前参考基线值保持一致 |
ABLFL | ADaM BDS | Conditionally req | 对SAP中声明的参数的基线值进行标记(在不同的或相同的研究/数据集中可以不同) | SAP中声明的ADaM分析的基线 |
--BLFL | SDTM Findings | perm (以前在某些域中是exp) | 申办方定义的基线(可以与--LOBXFL或ABLFL的导出规则一致,但不是必须) | 任何申办方定义的基线 |
如上表所示,每个变量都有相应的用途。为了可追溯性和透明度,SDTM变量--LOBXFL(以及/或 --BLFL,如果使用)可以直接复制到ADaM中,但是只有ADaM变量ABLFL可以用来表示分析的基线。当SAP声明了用于分析的基线值是RFXSTDTC前最后一个非缺失值时,--LOBXFL和ABLFL的内容会是相同的。