用途:把自然语言材料科学描述(如“FCC copper”)或结构化样品数据转换为标准化本体注解,供已注册本体使用。
主要能力:concept_mapper.py 将术语映射到本体类,输出 results.matches、results.unmatched、results.suggestions;crystal_mapper.py 映射晶体系统、Bravais 点阵、空间群与晶格参数,输出 ontology_classes、ontology_properties、effective_system、bravais_lattice、validation_warnings;sample_annotator.py 对完整样品 JSON 生成注解,输出 annotations、sample_type、material_type、unmapped_fields、suggested_properties、validation_warnings。
使用方式:需 Python 3.10+,仅用标准库,依赖 ontology-explorer 的 summary JSON、ontology_registry.json 及各本体映射配置。示例:python3 skills/ontology/ontology-mapper/scripts/concept_mapper.py --ontology cmso --term "space group" --json;crystal_mapper.py --ontology cmso --bravais FCC --space-group 225 --a 3.615 --json;sample_annotator.py --ontology cmso --sample '{"material":"copper","structure":"FCC","space_group":225,"lattice_a":3.615}' --json。新增本体只需添加 <name>_mappings.json 并在注册表登记,无需改代码。
适用场景:材料模拟前的本体标注、晶体结构参数校验、样品描述补全。
限制:晶体/样品注解仅限 CMSO;ASMO 为模拟方法本体,仅支持概念映射。概念映射基于字符串与同义词表,不理解任意自然语言;晶体校验仅覆盖基本约束;元素与 Bravais 别名覆盖常见写法。输出中的 validation_warnings 表示术语未在所选本体定义,confidence 为 0.0,不应视为有效注解。脚本只读、无网络、无文件写入。