-2
在我的工作中,我需要從dbpedia中找到貨幣,人口等鄰國的屬性。我該怎麼辦? 一個解決方案可能是這樣的.. 一個sparql查詢,它可以從dbpedia獲取所有國家的經度和緯度,並找到配套的國家離德國很近。那怎麼辦?但我是sparql新手?所以,我不確定,對此的查詢將如何?我怎樣才能得到一個國家的鄰居國家?
供參考:我不需要所有的鄰居。三個鄰居對我來說就夠了。
在我的工作中,我需要從dbpedia中找到貨幣,人口等鄰國的屬性。我該怎麼辦? 一個解決方案可能是這樣的.. 一個sparql查詢,它可以從dbpedia獲取所有國家的經度和緯度,並找到配套的國家離德國很近。那怎麼辦?但我是sparql新手?所以,我不確定,對此的查詢將如何?我怎樣才能得到一個國家的鄰居國家?
供參考:我不需要所有的鄰居。三個鄰居對我來說就夠了。
通過只查詢dbpedia,不可能得到鄰居國家。最簡單的方法可能是,通過一個數學方程得到經度和緯度的距離。以下是獲得的距離
private double getDistance(double submittedCountryLat,double submittedCountryLong,double countryLat,double countryLong){
double distance = 0;
double submittedCountryLatRadian=Math.toRadians(submittedCountryLat);
double submittedCountryLongRadian=Math.toRadians(submittedCountryLong);
double countryLatRadian=Math.toRadians(countryLat);
double countryLongRadian=Math.toRadians(countryLong);
double absoluteDistanceLat=submittedCountryLatRadian-countryLatRadian;
double absoluteDistanceLong=submittedCountryLongRadian-countryLongRadian;
distance=Math.sin(absoluteDistanceLat/2)*Math.sin(absoluteDistanceLat/2) +
Math.cos(submittedCountryLatRadian)*Math.cos(countryLatRadian)* Math.sin(absoluteDistanceLong/2)*Math.sin(absoluteDistanceLong/2);
distance=2* Math.asin(Math.sqrt(distance));
return distance*6371;
}
然後排序的所有距離,國名,並採取國家名稱距離最短的java的植入
你只有在德國的鄰國有興趣(在這種情況下,你不需要DBpedia,我現在可以告訴你)還是隻是一個隨機提到的例子? – stakx
這只是一個例子 –