2011-05-04 98 views
0

librdf_model_add是否將語句寫入哈希存儲?從redland哈希存儲獲取語句

我有問題來運行sparql查詢來檢索它們。數據庫文件可能會隨着文件大小不斷增加而被填充,但是當我嘗試對它們執行sparql查詢時,我似乎沒有得到任何結果。在發出查詢之前是否需要手動將存儲中的語句加載到模型中?

是發出查詢

$query = librdf_new_query(
    $world, 
    'sparql', 
    NULL, 
<<<SPARQL 
PREFIX sensei: <http://coolsilon.com/flickr_schema/> 
SELECT ?a ?c 
WHERE {?a ?b ?c} 
SPARQL 
    , 
    NULL 
); 
$result = librdf_query_execute($query, $model); 
var_dump(librdf_query_results_get_count($result)); // returns 0 

我使用PHP(5.3.5),語言綁定的聲明,我的雷德蘭的版本是1.0.12 Ubuntu下運行納蒂。

P/S:我在PostgreSQL存儲再次檢查,並在上面的代碼工作:/

回答

1

這是更好地問語義溢出或雷德蘭開發列表。

最有可能的是模型沒有數據。

使用一些librdf函數來打印出模型或使用序列化程序。

我必須從存儲顯式地加載數據發出查詢之前嘗試在https://github.com/dajobe/redland-bindings/tree/master/php

+0

test.php的指針? – Jeffrey04 2011-05-05 02:43:14

+0

只是再次檢查與postgresql存儲相同的代碼,並且該查詢正常工作:/ – Jeffrey04 2011-05-05 04:29:20

+0

是的,你必須加載數據到存儲(RDF數據集),然後才能查詢它。 – dajobe 2011-05-05 20:49:12