似乎没有一致的方法来根据名称查询编程语言。例子:
http://dbpedia.org/page/D_(programming_language)
rdfs:label "D (programming language)"@en
dbpprop:name "D programming language"
owl:sameAs freebase:"D (programming language)"
foaf:name "D programming language"
对比
http://dbpedia.org/page/C++
rdfs:label "C++"@en
dbpprop:name "C++"
owl:samwAs freebase:"C++"
foaf:name "C++"
由于“编程语言”、“(编程语言)”、“编程语言”、“(编程语言”或“”是否是 dbpedia 中编程语言名称的一部分没有标准约定,我不知道如何一致按名称搜索。
我想创建某种 SPARQL 查询,为“D”返回http://dbpedia.org/page/D_(programming_language ),为“C++”返回 http://dbpedia.org/page/C++,但我不知道该怎么做。
除非编程语言的各种三元组中至少有一个使用一致的命名约定,否则我将不得不通过首先查询 name + " (programming_language)" 来破解它,然后回退到 name + "(programming language", name + “编程语言”找不到结果。但我想要一个更健壮的方法。