【发布时间】:2013-01-08 19:55:25
【问题描述】:
我正在构建一个对 dbPedia 的 prefixSearch Api 进行查询的集成系统
http://lookup.dbpedia.org/api/search.asmx/PrefixSearch?QueryClass=&MaxHits=1&QueryString=KEYWORD
由此我获取资源的 URI,并使用简单的 get 获取资源,然后使用 nokogiri 解析它
data = Net::HTTP.get(URI.parse(url.to_s+'.rdf'))
doc = Nokogiri::XML(data)
我需要从文档中找到摘要,所以使用 xpath 我成功找到了它。
entity = doc.root.xpath("/rdf:RDF/rdf:Description[@rdf:about=\""+@uri+"\"]").map do |node|
name = node.xpath("dbpedia-owl:abstract[@xml:lang=\"en\"]").first.content
end
问题在于,对于某些信息丰富的页面,例如涉及国家/地区的页面,执行此操作需要 15-16 秒。这在我的系统中是不可接受的。
所以我需要找到一种方法来更快地完成所有事情? 有什么解决办法吗?例如使用 SPARQL 谢谢大家
【问题讨论】:
标签: ruby-on-rails ruby sparql dbpedia