查詢擴展可以彌合這些差異,同時加標簽者不需要為 Steam 上的每款游戲都添加同義標簽,而玩家也不需要進行復雜的搜索查詢。

運行原理
讓我們更為直接地看看查詢擴展究竟會做什么、又不會做什么,而這兩點同樣重要——這樣一來,我們就能對標簽改動后顯示的搜索結果信心滿滿。
首先,也是最重要的一點,我們寧愿讓查詢擴展功能過于謹慎,也不想冒險犯錯。 比如,我們告知擴展查詢功能:
動作冒險嚴格來講暗含動作 + 冒險,而策略角色扮演嚴格來講暗含策略 + 角色扮演。
但是,我們并沒有貿然地認為僅是相似或推理而出的標簽具有同義關系。 又比如:
黑暗并不暗含洛夫克拉夫特式
奇幻并不暗含魔法
射擊并不暗含動作,還有
策略并不暗含回合制
誠然,黑暗和洛夫克拉夫特式經常在相同的游戲中一起出現,因此有所關聯,但這種相關性并不是對等性,因此在運用查詢擴展時這兩個標簽并不適合相互關聯。
在確立了這一點后,我們梳理了所有標簽,并整理出每個人都認為合理的標簽關系。 這包括可以分解為其他標簽的標簽(第一人稱射擊 → 第一人稱視角 + 射擊),還有從其他標簽構建而成的標簽(策略 + 角色扮演 → 策略角色扮演)。 大部分標簽關系兩個方向都適用,但也并非完全如此。
比如,一款含有刷寶射擊游戲標簽的游戲顯然也可以有尋寶和射擊的標簽。 然而,刷寶射擊游戲是一個具備自身慣例的特定游戲子類型。 盡管這些慣例不該由 Steam 來定義,但意識到并不是每款有尋寶和射擊標簽的游戲都一定是刷寶射擊游戲似乎是謹慎的做法。 因此目前,標簽之間的關系需要人為考量。
逐步擴展標簽查詢
以下舉個略為簡單的例子說明后臺運行原理。
用用戶的標簽列表開始進行搜索查詢:
動作 +
冒險 +
2D 平臺 +
解謎
我們對復雜標簽進行識別,并將其分解為簡單標簽:
2D 平臺 → 2D + 平臺游戲
現在來看是否所有簡單的標簽都可以組合形成復雜標簽:
動作 + 冒險 → 動作冒險
解謎 + 平臺游戲 → 平臺解謎
我們使用 OR 將以下這些標簽作為同義詞添加進每一個初始標簽:
?。▌幼?OR 動作冒險)+
?。半U OR 動作冒險)+
?。?D OR 2D 平臺)+
(平臺游戲 OR 2D 平臺)+
?。ń庵i OR 平臺解謎)
下面,我們針對每一個標簽來查找將其完全包含其中的復雜標簽:
動作 →(動作冒險 OR 動作角色扮演 OR 動作類 Rogue)
[i]冒險/i] →(動作冒險)
2D →(2D 平臺 OR 2D 格斗)
平臺游戲 →(2D 平臺 OR 3D 平臺 OR 精確平臺游戲 OR 平臺解謎)
解謎 →(平臺解謎)
我們用 OR 將以下這些標簽作為同義詞添加至每一個初始標簽(前提是我們沒有在前一步進行添加):
?。▌幼?OR 動作冒險 OR 動作角色扮演 OR 動作類 Rogue)+
?。半U OR 動作冒險)+
(2D OR 2D 平臺 OR 2D 格斗)+
(平臺游戲 OR 2D 平臺 OR 3D 平臺 OR 精確平臺游戲 OR 平臺解謎)+
?。ń庵i OR 平臺解謎)
現在,可能有些人會想:“動作角色扮演? 2D 格斗? 我以為我們要找的是動作 + 冒險 + 2D + 平臺游戲 + 解謎,其他的內容在這里有什么用? 這肯定會把搜索結果弄得亂七八糟!”
問得好! 不過別擔心,那些額外的術語并不會破壞搜索結果——恰好相反。 這種 OR 邏輯確保更復雜的標簽中只有與用戶請求中重復的部分才被搜索——在本例中也就是動作角色扮演中的動作。 別忘了,Steam 上有無數混合了多種類型的游戲;所以這些復雜的術語確保了大家想要花生醬口味的零食時,我們不會忘了把花生醬和巧克力餅干也納入其中(別擔心,我們不會返回任何沒有花生醬的巧克力零食)。
正如我們的首個例子所顯示,比起搜索 3D、平臺游戲以及 3D 平臺的綜合結果,這一方法讓我們能夠定位更多的游戲。 現在像是《biped / 只只大冒險》這樣的額外結果,會獲得醒目的展示。 此游戲附帶有 3D 和平臺解謎標簽。 正如大家所見,現在搜索 3D 平臺這樣復雜的標簽時,就會搜索到具備與其不同卻仍舊相關的標簽組合的游戲。