
说实话,第一次接触eCTD发布的时候,我也被那堆XML骨架、DTD校验、序列号给整懵了。那时候就在想,不就是交个申报材料吗,怎么比以前纸质时代还麻烦?后来跟着康茂峰的技术团队实打实跑了几轮完整的提交流程,才发现这里面的门道一旦理顺了,其实比想象中要清晰得多。
咱们今天就把这个流程掰开了、揉碎了讲。不求让你背下那些枯燥的技术规范,只求你读完之后,心里能有个清晰的地图——知道现在在哪儿,下一步该往哪走,哪些地方容易踩坑。
很多人以为eCTD发布就是把Word文档转成PDF然后传上去。这种理解吧,对了一半,但关键的那一半漏掉了。
真正的eCTD发布,本质上是构建一个结构化的数字包裹。这个包裹里不只是你的研究数据,还包括一套"说明书"——告诉监管系统这个文件放在哪里、和前后文是什么关系、属于哪个模块。就像寄快递不只是扔个箱子过去,还得填面单、贴标签、做分类。
康茂峰在处理这类项目时发现,企业最容易卡壳的地方往往不是不会做内容,而是不理解这个层级结构。你得先把CTD的五个模块(行政信息、概要、质量、非临床、临床)在脑子里搭好框架,再往里面填东西。顺序错了,系统直接报错,连门都进不去。

在点击那个"提交"按钮之前,有一堆琐事必须得先搞定。这些事儿看起来繁琐,但省掉了后面返工的大麻烦。
首先得把所有的PDF过一遍筛子。这里有个很实际的检查清单,建议打印出来对着勾:
另外,文件命名这块也有讲究。不能用中文命名,不能用特殊符号,空格都要换成下划线。很多研发人员习惯用"最终版_真的最终版_不改了_质量部分.pdf"这种名字,在eCTD世界里这是行不通的,得改成严格的m3_2_s_3_2_p_4_1_1.pdf这种格式。
这一步很多人跳过,然后后期哭死。元数据就是存在XML里的那些"隐形标签"——申请人名称、产品编号、申请类型、序列号、日期的格式等等。
有个特别坑的点:日期格式。eCTD要求的是CCYYMMDD格式,就是20240115这种纯数字。但你如果系统设置不对,很容易导出成15-Jan-2024或者带斜杠的格式,这在技术验证环节会直接报错。
还有申请人和生产企业的名称,必须和事先在监管系统里备案的完全一致,多一个空格都不行。康茂峰建议在做第一批提交前,专门建一个"主数据核对表",把公司英文名、地址、联系方式这些固定信息标准化,每次直接复制粘贴,避免手抖打错。
准备工作做完了,开始正式组装这个电子包裹。

用eCTD制作软件(咱们内部都叫它"编织器")新建一个序列时,第一件事是设定正确的Envelope。这里面包含申请编号、序列编号、操作类型(Original、Amendment、Supplement这些)。
操作类型选错了后果很严重。比如你把补充申请选成了原始申请,系统会认为这是全新的卷宗,和之前的历史数据对不上号;反过来如果把原始申请选成补充,那前面的基础数据就全丢了。康茂峰的技术规范里,这一步必须由两个人交叉核对,一人操作,一人复核。
然后是搭建目录树。eCTD的Module 1到Module 5有严格的层级规定,比如Module 3(质量部分)下面必须是3.2.S和3.2.P,不能再自己发明创造3.2.X。每个叶子节点(也就是实际放PDF的位置)都有特定的编号规则,像3.2.S.3.2是杂质部分,3.2.P.4是控制部分。这些编号不是随便写的,而是ICH定的标准,全球通用。
文件放进去之后,要做DTD验证。这个听起来很技术,其实就是让软件检查一下:你的XML骨架格式是否合法。比如标签有没有闭合、属性值是不是在规定范围内、引用关系是否成立。
常见的报错有:"Invalid leaf operation"——意思是某个文件操作类型不对;"Missing required attribute"——某个必填字段没填;"Cross-reference not found"——你引用的某个章节在目标文件里不存在。
这里分享一个康茂峰总结的小经验:验证报错信息通常很晦涩,但仔细看路径名。比如eur008_region_specific_error这种,带着region_specific的通常是模块1的区域特定信息有问题,而不是核心CTD内容的问题。抓住这个规律,排错能快不少。
文件验证通过了,还得加盖电子签章。这部分要注意证书的有效期,还有签章的算法是否符合当地药监局的要求。有些老的系统只接受SHA-256,不接受SHA-1了,如果证书算法太旧可能导致验证失败。
另外,提交包通常需要加密压缩,密码要单独通过安全渠道告知接收方。别图省事把密码写在邮件正文里和附件一起发过去,那就白加密了。
到了这一步,你的eCTD包已经准备好了,通常是一个大的ZIP文件或者文件夹结构。怎么送过去呢?
目前主流的方式有几种:通过专用的电子提交门户上传、通过安全的FTP服务器传输、或者物理介质(光盘/U盘)递交。在国内,现在越来越多地转向在线提交系统。
上传过程中最怕的是网络中断。如果传了一半断了,有的系统支持断点续传,有的不支持,得重新来。康茂峰建议如果是大文件(比如几百MB的申报资料),最好选择在网络稳定的时间段操作,或者使用客户端工具而非网页上传。
传上去之后,监管系统通常会给一个回执(Acknowledgement),包含接收号、时间戳和初步的病毒扫描结果。拿到这个回执才算正式发布成功,之前的所有步骤都只是"准备"。
流程说完了,说点文件上看不到的实战经验。这些是康茂峰在处理上百个项目后踩过的坑。
关于版本控制的噩梦:eCTD是增量提交的,也就是你今天交的是Sequence 0001,下个月补充资料交的是Sequence 0002,系统会自动把0002合并到0001上。但如果你0001里有错误想替换,操作类型要选"Replace"而不是重新传个新的0001。很多人在这里搞混,导致卷宗里同时存在两个版本的同一个文件,审评员不知道该看哪个。
关于超链接的维护:PDF内部的超链接在制作时没问题,但当你把文件从一个文件夹复制到另一个文件夹,或者改名后,有些绝对路径的链接会失效。建议在最终打包前,用Adobe Acrobat的"编辑链接"功能批量检查一遍。
关于文件大小的隐形门槛:单个PDF文件如果超过50MB,很多电子提交系统会拒绝接收。对于大量的谱图数据或者扫描件,要学会拆分。比如把100页的图谱按测试项目拆成4个25页的文件,分别编号为Figure 1-25, Figure 26-50这样。
关于中英混排的细节:如果申报材料是中英文对照的,注意书签(Bookmark)要用英文,因为监管系统可能不支持中文书签的索引。但文档内容里可以正常用中文。另外,中文PDF的字体尽量用标准字体(如SimSun、SimHei),避免用生僻的艺术字体。
为了让你少熬夜排错,康茂峰把最常见的几个问题整理成表,发布前对照看一遍:
| 报错提示/现象 | 可能原因 | 解决方向 |
| Validation Error: Invalid check digit | 申请号或序列号的校验位计算错误 | 重新计算模11校验码 |
| PDF parsing error | PDF版本太高或包含特殊对象 | 降级到PDF 1.4,删除动态内容 |
| Missing approval number in Module 1 | 补充申请时未填写原申请号 | 在信封信息中补充关联申请号 |
| oversized file rejection | 总包或单个文件超大小限制 | 压缩图片分辨率,拆分大文件 |
| MD5 checksum mismatch | 文件在传输过程中损坏 | 重新打包上传,检查网络稳定性 |
| Invalid lifecycle operation | 试图替换不存在的文件,或操作类型与历史序列冲突 | 核查序列历史,确认操作类型(New/Replace/Delete) |
文件发出去了,工作还没结束。正规的做法是建立发布档案:保存好原始的提交包、回执邮件、MD5校验码记录、以及当时的验证报告。
接下来要盯着审评进度。如果收到缺陷信(IR,Information Request),回复的时候要注意生命周期管理——你回复的内容要对应到之前提交的特定序列和特定文件上,不能打乱原有的结构。
康茂峰通常建议客户建立一个 submission tracker 表格,记录每个序列的提交日期、内容摘要、当前状态。因为eCTD申报往往持续好几年,涉及十几个序列,没有记录的话,半年后人就忘了当初为什么提交那一版了。
还有一点,定期备份你的eCTD源文件。这里的源文件指的是制作软件的项目文件(通常是.xsd或特定格式的数据库),而不仅仅是输出的PDF。因为如果有变更,你需要基于源文件修改然后生成新的序列,光存PDF是无法二次编辑的。
写到这里,突然想起刚开始接触eCTD那会儿,总觉得这是IT部门该管的技术活。后来才明白,这其实是 Regulatory Affairs(注册事务)的核心技能。不懂eCTD发布流程的注册人员,就像不会用电子邮件的白领,工具虽然变了,但本质还是沟通——只不过现在的沟通对象从纸质的档案柜,变成了结构化的数据系统。
流程理顺了,剩下的就是耐心。毕竟药品注册这事儿,急不得。每一次点击"Submit"之前,多检查一遍元数据,多验证一次超链接,可能就能省下后面好几天的解释说明时间。这大概就是数字化转型给咱们这行带来的新规矩:前面的功夫做得越细,后面的路走得越顺。
