国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Javascript查詢DBpedia小應(yīng)用實(shí)例學(xué)習(xí)

2024-05-06 14:19:24
字體:
供稿:網(wǎng)友

Javascript查詢DBpedia小應(yīng)用
上一篇文章中,我們了解了SPARQL、SPARQL Endpoint,并簡單做了一個(gè)SPARQLWrapper.js,來從DBpedia中查詢了一些數(shù)據(jù)。
本文則嘗試?yán)肧PARQLWrapper.js來讀取DBpedia的數(shù)據(jù),并顯示出來。

目標(biāo)
通過輸入一個(gè)英文單詞,然后返回WIKI中相關(guān)的信息。
那么主要要解決的問題就是怎樣的SPARQL語句能夠查詢到我們需要的東西。

先看一段簡單的SPARQL查詢語句
代碼如下:
PREFIX : <http://aabs.purl.org/music#>
SELECT ?instrument
WHERE {
:andrew :playsInstrument ?instrument .
}

首先定義一個(gè)域名空間http://aabs.purl.org/music#。
然后選擇這樣子的instrument變量,他滿足:
主語是http://aabs.purl.org/music#andrew,謂語是http://aabs.purl.org/music#playsInstrument,賓語是該instrument。

bif:contains()
bif:contains()是contains()函數(shù)的變種函數(shù),顧名思義是判斷是否包含的函數(shù)。
利用這個(gè)我們能查詢到我們需要的數(shù)據(jù)了。
代碼如下:
prefix foaf: <http://xmlns.com/foaf/0.1/>
select distinct ?url ?alma ?comment
where {
?s foaf:name ?sname .
?sname bif:contains 'China'.
?s foaf:depiction ?url .
?s dbpedia-owl:wikiPageExternalLink ?alma .
?s rdfs:comment ?comment .
}
limit 10

這段SPARQL語句是查詢包含China的名字的詞條,然后將其圖片的url、homepage的url,以及簡介返回回來。
下面讓我們把整個(gè)程序?qū)懲辍?

完整代碼
代碼如下:
<html>
<head>
<meta charset="utf-8">
<title>SPARQL DEMO</title>
<script src="SPARQLWrapper.js"></script>
<script>
var $ = function(id){
return document.getElementById(id);
},
sparql = new SPARQLWrapper("http://dbpedia.org/sparql"),
results = [];
function getInfo(name){
name = name.replace(//s/g, "_");
var command = "prefix foaf: <http://xmlns.com/foaf/0.1/> "
+ "select distinct ?url ?alma ?comment "
+ "where { "
+ "?s foaf:name ?sname . "
+ "?sname bif:contains '" + name + "'. "
+ "?s foaf:depiction ?url . "
+ "?s dbpedia-owl:wikiPageExternalLink ?alma . "
+ "?s rdfs:comment ?comment . "
+ "} "
+ "limit 10";
sparql.setQuery(command);
sparql.query(function(json){
showInfo((eval("(" + json + ")")).results.bindings);
});
}
function showInfo(results){
var text = "";
if(results.length !== 0){
for(var i = 0; i < results.length; i++){
text += "<img src = '" + results[i].url.value + "' /><br />";
text += "homepage:" + "<a href = '" + results[i].alma.value + "' >" + results[i].alma.value + "</a><br />";
text += "<p>" + results[i].comment.value + "</p><br /><br /><br />";
$("result").innerHTML = text;
}
}else{
$("result").innerHTML = "沒有任何相關(guān)信息!";

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 武乡县| 孟津县| 宜宾市| 镇远县| 高州市| 民和| 余庆县| 宁安市| 保山市| 徐闻县| 田林县| 改则县| 甘孜县| 玉山县| 响水县| 宜川县| 临泽县| 玛沁县| 临海市| 合水县| SHOW| 成安县| 淮滨县| 桐庐县| 乌兰察布市| 千阳县| 九龙城区| 依安县| 嘉鱼县| 富顺县| 阜新| 东丽区| 麻栗坡县| 巴青县| 抚州市| 开封市| 星子县| 孟津县| 绍兴市| 宜君县| 慈利县|