我要替一批外國山峰找中文通行名。做法很直覺:每座山都有一個資料庫項目,項目裡列著它在各語言維基百科的條目連結。有中文連結,就有中文名;沒有,就沒有。
跑完一批,報表寫著:26 座名山在中文世界沒有名字。
我差點就照著這個結果做下去。
懷俄明州的歐文山,一個項目、兩種問法
──────────────────────────────────────────────
問:有中文維基條目嗎 sitelinks 11 個
zhwiki 0 個
問:中文叫什麼 labels 只有 en
──────────────────────────────────────────────
中文維基全文搜 Mount Owen 命中 1 篇
→ 大提頓國家公園:
{{Internal link helper/en|歐文山|Mount Owen}}
──────────────────────────────────────────────
我以為發生了什麼
我以為「沒有條目連結」等於「沒有這個名字」。這兩件事聽起來一樣,寫成程式也只差一行:查 sitelinks 裡有沒有 zhwiki,沒有就標成查無。
我甚至覺得這樣很嚴謹。資料庫回的是空的,不是我猜的,我只是誠實地把空的寫成空的。
實際發生了什麼
2026-09-19 實測。懷俄明州的歐文山,Wikidata 項目 Q1754294,用 Action API 查 labels 與 sitelinks:sitelinks 共 11 個語言版本,zhwiki 0 個;labels 只有英文一個,連中文標籤都沒有。從這個項目的角度看,它在中文世界確實不存在。
換一條路。拿英文原名 Mount Owen 到中文維基百科全文搜尋,命中 1 篇:大提頓國家公園。抓那一篇的原始碼,裡面有一行 Internal link helper 模板,左邊寫「歐文山」、右邊寫 Mount Owen (Wyoming):條目編者自己寫下的中英對照,中文名在左、英文原名在右。同一篇裡這種對照有 105 組,光是我要找的山就有 5 座:歐文山、中提頓山、南提頓山、莫蘭山、提維諾山。
它們沒有自己的條目,但名字寫在所屬公園的條目裡。 26 座被判成查無的山,就是這樣漏掉的。
官方文件寫了嗎
有,而且寫得很清楚,只是回答的不是我的問題。官方文件對 sitelinks 的定義就是「這個項目連到各語言維基的哪個頁面」。它從來沒有說過這個欄位等於「這個東西有沒有該語言的名字」。
工具沒做錯。空的 sitelink 是正確答案,只是它回答的問題是「有沒有一篇專門講它的文章」,而我拿來當「有沒有人用中文叫過它」在用。欄位是對的,是我把它拿去回答一個它從沒承諾過的問題。
中文維基那一側也沒有寫「名字可能在上層條目裡」這種提醒。這不是它的責任,一篇公園條目本來就會提到園內的山。
你一定會踩的那個細節
真正會踩到的是第二步:你以為改用「中文標籤」(labels)就安全了。不是。這個項目連中文標籤都沒有,兩個欄位一起回空,而名字仍然在隔壁那一篇裡。任何「某個欄位為空」都只能證明那個欄位為空,不能證明世界上沒有這個東西。
要分辨這兩件事,今天就能自己跑一次:
分清楚「沒有條目」跟「沒有名字」:
1. 查項目本身
https://www.wikidata.org/w/api.php
?action=wbgetentities&ids=Q1754294
&props=labels|sitelinks&format=json
→ 看 sitelinks 有沒有 zhwiki、labels 有沒有 zh
2. 兩個都空,再拿英文原名到中文維基全文搜
https://zh.wikipedia.org/w/api.php?action=query
&list=search&srsearch="Mount Owen"&format=json
→ 命中的條目就是名字可能藏身的地方
3. 抓命中條目的原始碼,只認結構化寫法
{{Internal link helper/en|中文名|English Name}}
[[English Name|中文名]]
→ 中英兩側都是編者寫的,不是誰翻的
第 1 步空、第 2 步有命中,就不准標「查無」。
第 3 步的限制要守住:只抓模板與管道連結這兩種結構,不要用「中文名旁邊剛好有英文」這種鄰近規則,也不要叫模型讀條目替你列。前者會把別洲的同名山配進來,後者會自己翻譯而且看不出來。
站內延伸
- 想看這個資料庫還有哪個坑 → 我檢查每張照片都有網址,但沒檢查網址還活著
- 想看這個服務用在哪 → 稜線自己在用的
來源: Wikidata Action API(wbgetentities,Q1754294)、中文維基百科 API(list=search 與 prop=revisions,條目「大提頓國家公園」2026-05-07 版),皆為 2026-09-19 當日實測。
一個欄位為空,證明的只有那個欄位為空。把它拿去回答另一個問題,答案會很整齊、很像真的,而且一路綠燈到你把 26 座山的名字一起丟掉為止。