用途:判断 IFC 文件是否有效、解读 buildingSMART 校验报告,并理解“符合 schema”与“规范性”的含义。它是所有 ifc-errors-* 技能与 ifc-agents-file-validator 之下的合规层。
有效性的三个规范层级(按顺序):STEP 语法(ISO 10303-21 格式良好);IFC Schema(类型、基数、WHERE 规则、全局规则、引用完整性、不得实例化抽象实体);规范性 IFC 规则(Implementer Agreement 与 Informal Proposition)。三层均为强制,仅通过前两层不算有效。
校验服务流程:validate.buildingsmart.org 分五阶段,前三阶段为规范性的(决定有效性):STEP 语法、IFC Schema(版本+合规)、规范性检查;后两阶段非规范性:行业实践(仅警告)、bSDD 合规(信息性,当前禁用)。
严重级别:pass(默认隐藏)、warning(非规范性偏差,不使文件无效)、error(规范性不符,文件无效)、not applicable、disabled。error 表示不符合规范,warning 表示有效但偏离常见实践。
规范性检查分两类:Implementer Agreement(已批准的正式协议)与 Informal Proposition(尚未批准但同样强制)。两者均使文件无效,“informal”仅指批准状态,不代表可选。
功能部件前缀:规则带三字母前缀标明 schema 区域,如 PJS(项目定义)、GRF(地理参照)、BLT(建筑构件)、GEM(几何表示)、OJP(对象放置)、SPS(空间分解)、MAT(材料)、PSE(对象属性)、QTY(对象数量)、CLS(分类引用)、POR(端口连接与嵌套)。完整 27 项见 references/methods.md。
用法:任何 IFC 审查的第一步都应先跑校验服务,再查几何或项目要求。查看器宽松,能打开不代表有效。schema 版本标识须为 IFC2X3、IFC4 或 IFC4X3_ADD2。
Gherkin 规则:无法用 EXPRESS 表达的规范性规则以 Gherkin 行为规范实现于 buildingSMART/ifc-gherkin-rules(Python,MIT),位于 features/rules/<PREFIX>/ 下的 .feature 文件。标签行给出子类别与前缀,Background 限定适用 MVD 或 schema,每个 Scenario 为一条可独立检查的命题。
与 IDS 的边界:校验服务只检查是否符合 IFC 标准,明确排除项目、国家与组织要求;项目信息要求应使用 IDS。
限制:仅适用于 IFC2x3、IFC4、IFC4.3;IFC5/IFCx 尚在开发,无可比校验流程。bSDD 合规当前禁用。具体错误目录见 ifc-errors-schema-validation。