从每种语言中选择一种语言标记的最简单方法是什么。
例如,我的三元组看起来像这样:
102777157-n, wordnet-ontology:translation : "sac"@fra
102777157-n, wordnet-ontology:translation : "bossa"@cat
102777157-n, wordnet-ontology:translation : "taske"@dan
102777157-n, wordnet-ontology:translation : "käsilaukku"@fin
102777157-n, wordnet-ontology:translation : "kukkaro"@fin
102777157-n, wordnet-ontology:translation : "laukku"@fin
102777157-n, wordnet-ontology:translation : "lompakko"@fin
102777157-n, wordnet-ontology:translation : "porte-monnaie"@fra
102777157-n, wordnet-ontology:translation : "sac à main"@fra
102777157-n, wordnet-ontology:translation : "beg tangan"@ind
102777157-n, wordnet-ontology:translation : "dompet"@ind
102777157-n, wordnet-ontology:translation : "kantung"@ind
102777157-n, wordnet-ontology:translation : "karung"@ind
102777157-n, wordnet-ontology:translation : "tas tangan"@ind
102777157-n, wordnet-ontology:translation : "borsa"@ita
102777157-n, wordnet-ontology:translation : "borsetta"@ita
102777157-n, wordnet-ontology:translation : "borsetto"@ita
102777157-n, wordnet-ontology:translation : "ハンドバック"@jpn
102777157-n, wordnet-ontology:translation : "ハンドバッグ"@jpn
102777157-n, wordnet-ontology:translation : "bolsa"@por
102777157-n, wordnet-ontology:translation : "carteira"@por
102777157-n, wordnet-ontology:translation : "bolso"@spa
102777157-n, wordnet-ontology:translation : "กระเป๋า"@tha
102777157-n, wordnet-ontology:translation : "กระเป๋าถือ"@tha
102777157-n, wordnet-ontology:translation : "กระเป๋าถือสตรี"@tha
102777157-n, wordnet-ontology:translation : "dompet"@zsm
102777157-n, wordnet-ontology:translation : "kantung"@zsm
在我的结果集中,我想要使用每种语言的一种语言标记。
答案 0 :(得分:3)
如果我理解你想要的问题:
102777157-n, wordnet-ontology:translation : "sac"@fra
# or "porte-monnaie"@fra, "sac à main"@fra
102777157-n, wordnet-ontology:translation : "bossa"@cat
102777157-n, wordnet-ontology:translation : "taske"@dan
102777157-n, wordnet-ontology:translation : "käsilaukku"@fin
# or "kukkaro"@fin, "laukku"@fin", lompakko"@fin
...
从基础开始:
prefix wordnet-ontology: <...>
select ?word ?translation
{
?word wordnet-ontology:translation ?translation
}
我们想要每个单词一行,语言对,即
prefix wordnet-ontology: <...>
select ?word ?translation
{
?word wordnet-ontology:translation ?translation
}
group by ?word ?language
但这不起作用,因为:
?translation
。要解决1,我们使用lang()
函数:BIND(lang(?translation) as ?language)
。
至于2,因为我们不关心我们得到哪种翻译,我们可以使用样本选择其中任何一种:(SAMPLE(?translation) as ?onetranslation)
。
prefix wordnet-ontology: <...>
select ?word (SAMPLE(?translation) as ?onetranslation)
{
?word wordnet-ontology:translation ?translation
BIND(lang(?translation) as ?language)
}
group by ?word ?language
由于我们甚至不想要这种语言,我们可以进一步简化:
prefix wordnet-ontology: <...>
select ?word (SAMPLE(?translation) as ?onetranslation)
{
?word wordnet-ontology:translation ?translation
}
group by ?word lang(?translation)