TEI是人文研究领域基于XML的文本结构化编码标准,提供540多个语义元素(如<gap>、<stage>、<corr>)显性化标注古籍残卷、诗歌韵律、戏剧对白等复杂结构,并强制要求<teiHeader>与<text>两大部分以支持学术元数据与可计算分析。

TEI(Text Encoding Initiative,文本编码倡议)是人文研究领域广泛采用的、基于XML的文本结构化编码标准。它不是一种编程语言或软件,而是一套经过学界长期共识形成的规范体系,用于对文学、历史、语言学等学科的文本进行精细、可扩展、机器可读的标注。
TEI的核心定位:为人文文本提供“可计算的骨架”
人文文本常含复杂结构——比如古籍的残卷标记、诗歌的分行与韵律、戏剧的角色对白、手稿的修订痕迹、多语种混排等。TEI用540多个语义明确的XML元素(如<gap>标残缺、<stage>标舞台提示、<corr>标校勘修正),把这类隐性知识显性化、结构化。这种编码既保留学术判断,又支持检索、比对、可视化和长期归档。
一个典型TEI文档的基本组成
每份合规TEI文件都包含两大部分:
-
头部(
<teiHeader>):强制包含四大元数据区块——fileDesc(文献来源与物理描述)、encodingDesc(编码方法与依据)、profileDesc(内容特征,如语言、体裁、关键词)、revisionDesc(版本修订日志); -
正文(
<text>):按实际文本逻辑组织,支持嵌套层级(如<div type="act">套<sp>再套<speaker>和<p>),并可混合使用语义标签(<foreign>、<date>、<rs>等)与格式无关的描述性标注。
为什么人文学者要用TEI而不是普通XML或Markdown
因为TEI不只是“加标签”,而是承载学术惯例的编码语言:
- 它预置了200+文本类型模板(从词典、信札到碑刻、剧本),避免重复造轮子;
- 通过ODD(One Document Does it All)机制,项目可定制专属Schema,兼顾统一性与灵活性;
- 所有元素定义在公开XML Schema中,支持自动验证(如用Trafilatura或oXygen校验),确保数据可信、可交换;
- 与XSLT、Python(tei_reader)、LaTeX(ekdosis宏包)等工具链深度集成,能一键转HTML展示、PDF出版或DataFrame分析。
实际应用场景举例
不靠抽象概念,看几个真实落地方式:
- 秦汉简牍数字化:用
<gap reason="illegible">标模糊字迹,用<supplied reason="lost">补推测文字,同时保留原始图像链接; - 《莎士比亚全集》早期印刷本比对:用
<app>(校勘 apparatus)包裹异文,内嵌<rdg>(读法)与<wit>(见证手稿),支撑多版本动态对照; - 近代学者书信集:在
<correspAction>中结构化发信人、收信人、时间、地点,并关联CBDB人物数据库ID,实现人物关系网络自动构建。










