"""Fictional name disambiguation with transparent hand-authored rules."""
import json
entities={'software':{'name':'Lantern','domain':'lantern-software.example','type':'developer-tool','repo':'org/lantern'},'travel':{'name':'Lantern','domain':'lantern-travel.example','type':'travel-service','repo':None}}
q={'name':'Lantern','type':'developer-tool','repo':'org/lantern'}
scored={k:1*(v['name']==q['name'])+2*(v['type']==q['type'])+4*(v['repo']==q['repo']) for k,v in entities.items()}
name_only={k:int(v['name']==q['name']) for k,v in entities.items()}
print(json.dumps({'label':'虚构实体与手写分数；非NER或平台身份置信度','name_only':name_only,'context_scores':scored,'selected':max(scored,key=scored.get),'rule':'真实身份仍需官方关系链接和时间范围核验'},ensure_ascii=False,indent=2))
