SBML是一种基于XML的系统生物学建模语言,用于标准化描述生化反应网络结构与数学关系;它以为根元素,支持模块化扩展包(如FBC、Qual),强调跨工具互操作性而非仿真方法。

SBML(Systems Biology Markup Language)是一种专为系统生物学设计的、基于XML的机器可读建模语言,用于精确描述和交换生化反应网络模型,比如代谢通路、信号转导和基因调控网络。
SBML本质是结构化的XML格式
它不是独立的数据格式,而是严格遵循XML语法规则的一套规范:所有SBML文件都是有效的XML文档,以开头,根元素为
核心设计目标是标准化与互操作
不同建模工具(如COPASI、CellDesigner、COBRA Toolbox、iBioSim)使用各自内部格式,SBML充当“通用翻译器”——只要工具支持同一SBML级别(如Level 3 Version 2),就能无损导入导出模型。它不规定如何仿真,只规定如何**描述模型结构与数学关系**,把“是什么”和“怎么算”分开。
SBML Level 3采用模块化扩展机制
Level 3不再追求“大而全”,而是以核心规范为基础,通过可选扩展包(packages)支持特定功能:
- FBC(Flux Balance Constraints)包:支持约束型代谢模型,定义通量上下界、目标函数、基因-蛋白-反应(GPR)关联等;
- Qual(Qualitative Models)包:描述逻辑调控(如“若A激活且B抑制,则C表达”);
- Groups、Layout、Render等包:分别支持模型分组、通路图布局与可视化样式。
每个包有独立规范,工具按需实现,避免强制依赖未用功能。
实际使用中需注意命名与映射规则
例如在MATLAB的COBRA Toolbox中读取SBML时:
- 反应ID若为R_EX_glc__D_e,会被识别为胞外葡萄糖交换反应;
- 代谢物ID中M_glc__D_c对应MAT格式的glc__D[c],下划线替代方括号是为适配XML ID合法性要求;
- 注释字段(如EC编号、CHARGE、GENE_ASSOCIATION)优先从FBC包提取,而非旧版NOTE字段。










