用途:为 Power BI 与 Analysis Services 语义模型提供 TMDL(表格模型定义语言)参考,覆盖语法、文件夹结构、对象类型、表达式、序列化 API、CI/CD 与部署。TMDL 是兼容级别 1200+ 的可读、利于源码管理的格式,自 2024 年 8 月正式发布。
主要能力:说明 TMDL 与 TMSL/BIM 的差异(YAML 式文本、按表/角色/区域性/透视分文件、Git 友好);对象声明与属性语法(冒号用于属性、等号用于表达式、单引号转义、缩进嵌套);各对象类型的默认属性(measure/calculatedColumn/calculationItem 为 DAX,M 分区为 M 等);单行、多行与三反引号表达式;/// 描述注释;ref 关键字与集合排序;definition 目录结构;createOrReplace 脚本;缩进与大小写规则;.NET TmdlSerializer 序列化 API;Power BI Desktop 的 TMDL 视图(语义高亮、自动补全、格式化、差异预览、兼容级别升级提示);semantic-link-labs 的 Python TOM 脚本。
使用方式:在 PBIP 项目中使用 definition/*.tmdl;用 TmdlSerializer.SerializeDatabaseToFolder 与 DeserializeDatabaseFromFolder 读写;在 Desktop TMDL 视图中执行 createOrReplace;在 Fabric Notebook 中安装 semantic-link-labs 后通过 connect_semantic_model 操作模型。
适用场景:新建受源码管理的 Power BI/Fabric 语义模型、团队协作与 CI/CD、批量重命名、迁移 BIM。
限制:Report Server 不支持 TMDL;TMSL/BIM 未弃用,XMLA 脚本或仅接受 BIM 的工具仍需 TMSL;Desktop 不会热重载外部修改的 TMDL 文件,需重启;缩进错误会抛 TmdlFormatException;部分新属性需兼容级别 1601+。