我知道如何设置文字的语言:
"foo"@en
但是
?foo@en
(这不起作用)呢?
上下文:我想将一堆设置为
en-gb
的标签复制到 en
中,以便它们更好地与我正在使用的知识管理工具配合使用。所以像这样:
INSERT {
?subject skos:prefLabel ?object@en
}
WHERE {
?subject skos:prefLabel ?object .
FILTER (lang(?object) = "en-gb")
}
str
允许您获取语言标记文字的词汇形式,STRLANG
允许您指定文字的语言标签。
CONSTRUCT {
?subject skos:prefLabel ?label_en .
}
WHERE {
?subject skos:prefLabel ?label_enGB .
FILTER (lang(?label_enGB) = "en-gb") .
BIND( STRLANG(str(?label_enGB), "en") AS ?label_en ) .
}
示例:
?label_enGB
:"foo"@en-gb
str(?label_enGB)
:"foo"
STRLANG(str(?label_enGB), "en")
:"foo"@en