2013-07-21 109 views
2

我有一個RDF文件像這樣的(test.rdf):的Java +耶拿+ RDF:需要幫助編寫正確的SPARQL查詢

<?xml version="1.0"?> 
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:vocab="http://www.datiopen.it/rdf/resource/vocab/" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:db="http://www.datiopen.it/rdf/resource/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:map="http://www.datiopen.it/rdf/resource/#" xmlns:dcterms="http://purl.org/dc/terms/" xml:base="http://www.datiopen.it/rdf/resource/" > 
<rdf:Description rdf:about="http://www.w3.org/2000/01/rdf-schema#label"> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici"> 
<rdfs:label>Trentino-Alto Adige - Beni architettonici ed artistici</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_do_serialuid"> 
<rdfs:label>Serial Id</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_gid"> 
<rdfs:label>gid</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_comune"> 
<rdfs:label>Comune</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_provincia"> 
<rdfs:label>Provincia</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_regione"> 
<rdfs:label>Regione</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_loc_no"> 
<rdfs:label>Localit&#224;</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_imm_no"> 
<rdfs:label>Nome</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_via_no"> 
<rdfs:label>Indirizzo</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_immuso_no"> 
<rdfs:label>Uso</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_immtpl_no"> 
<rdfs:label>Tipo</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_data_agg"> 
<rdfs:label>Data aggiornamento</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_tp_tutela"> 
<rdfs:label>Tipo tutela</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_imm_cd"> 
<rdfs:label>Codice immobile</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_prov_cd"> 
<rdfs:label>Codice provincia</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_cmp_cd"> 
<rdfs:label>Codice CMP</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_com_cd"> 
<rdfs:label>Codice comune</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_fraz_cd"> 
<rdfs:label>Codice Frazione</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_immtpl_cd"> 
<rdfs:label>Codice tipo immobile</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_immuso_cd"> 
<rdfs:label>Codice uso immobile</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_imm_prt_cd"> 
<rdfs:label>codice immobile PRT</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_prt"> 
<rdfs:label>PRT</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_cd_tutela"> 
<rdfs:label>Codice tutela</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_categoria"> 
<rdfs:label>Categoria</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_selez"> 
<rdfs:label>Selezione</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_label_2ad"> 
<rdfs:label>Etichetta_2AD</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_label"> 
<rdfs:label>Etichetta</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_glatitude"> 
<rdfs:label>DO_Y</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 
<rdf:Description rdf:about="vocab/view_tbeni_architettonici_glongitude"> 
<rdfs:label>DO_X</rdfs:label> 
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> 
</rdf:Description> 

<rdf:Description rdf:about="view_tbeni_architettonici/1"> 
<rdfs:label>view_tbeni_architettonici #1</rdfs:label> 
<vocab:view_tbeni_architettonici_do_serialuid rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">1</vocab:view_tbeni_architettonici_do_serialuid> 
<dcterms:coverage rdf:resource="http://spcdata.digitpa.gov.it/Comune/H517" /> 
<vocab:view_tbeni_architettonici_loc_no></vocab:view_tbeni_architettonici_loc_no> 
<vocab:view_tbeni_architettonici_imm_no>Chiesa di S. Antonio abate</vocab:view_tbeni_architettonici_imm_no> 
<vocab:view_tbeni_architettonici_via_no></vocab:view_tbeni_architettonici_via_no> 
<vocab:view_tbeni_architettonici_immuso_no>CHIESA</vocab:view_tbeni_architettonici_immuso_no> 
<vocab:view_tbeni_architettonici_immtpl_no>CHIESA</vocab:view_tbeni_architettonici_immtpl_no> 
<vocab:view_tbeni_architettonici_data_agg>10/04/2001</vocab:view_tbeni_architettonici_data_agg> 
<vocab:view_tbeni_architettonici_tp_tutela>DICHIARATO DI INTERESSE CULTURALE AI SENSI DEL D.LGS. 22/01/2004 N. 42</vocab:view_tbeni_architettonici_tp_tutela> 
<vocab:view_tbeni_architettonici_imm_cd>155.0004</vocab:view_tbeni_architettonici_imm_cd> 
<vocab:view_tbeni_architettonici_prov_cd>22</vocab:view_tbeni_architettonici_prov_cd> 
<vocab:view_tbeni_architettonici_cmp_cd>6</vocab:view_tbeni_architettonici_cmp_cd> 
<vocab:view_tbeni_architettonici_com_cd>155</vocab:view_tbeni_architettonici_com_cd> 
<vocab:view_tbeni_architettonici_fraz_cd>0</vocab:view_tbeni_architettonici_fraz_cd> 
<vocab:view_tbeni_architettonici_immtpl_cd>18</vocab:view_tbeni_architettonici_immtpl_cd> 
<vocab:view_tbeni_architettonici_immuso_cd>7</vocab:view_tbeni_architettonici_immuso_cd> 
<vocab:view_tbeni_architettonici_imm_prt_cd>2</vocab:view_tbeni_architettonici_imm_prt_cd> 
<vocab:view_tbeni_architettonici_prt>ECCLESIASTICA</vocab:view_tbeni_architettonici_prt> 
<vocab:view_tbeni_architettonici_cd_tutela>1.00000000000</vocab:view_tbeni_architettonici_cd_tutela> 
<vocab:view_tbeni_architettonici_categoria>Beni religiosi</vocab:view_tbeni_architettonici_categoria> 
<vocab:view_tbeni_architettonici_selez>1</vocab:view_tbeni_architettonici_selez> 
<vocab:view_tbeni_architettonici_label_2ad>T244</vocab:view_tbeni_architettonici_label_2ad> 
<vocab:view_tbeni_architettonici_label>T245</vocab:view_tbeni_architettonici_label> 
<vocab:view_tbeni_architettonici_glatitude>46.3958455087868</vocab:view_tbeni_architettonici_glatitude> 
<vocab:view_tbeni_architettonici_glongitude>11.1224323995498</vocab:view_tbeni_architettonici_glongitude> 
<rdf:type rdf:resource="vocab/view_tbeni_architettonici"/> 
</rdf:Description> 
<rdf:Description rdf:about="view_tbeni_architettonici/2"> 
<rdfs:label>view_tbeni_architettonici #2</rdfs:label> 
<vocab:view_tbeni_architettonici_do_serialuid rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">2</vocab:view_tbeni_architettonici_do_serialuid> 
<dcterms:coverage rdf:resource="http://spcdata.digitpa.gov.it/Comune/H517" /> 
<vocab:view_tbeni_architettonici_loc_no></vocab:view_tbeni_architettonici_loc_no> 
<vocab:view_tbeni_architettonici_imm_no>Maso S. Bartolomeo</vocab:view_tbeni_architettonici_imm_no> 
<vocab:view_tbeni_architettonici_via_no></vocab:view_tbeni_architettonici_via_no> 
<vocab:view_tbeni_architettonici_immuso_no>ABITAZIONE</vocab:view_tbeni_architettonici_immuso_no> 
<vocab:view_tbeni_architettonici_immtpl_no>MASO</vocab:view_tbeni_architettonici_immtpl_no> 
<vocab:view_tbeni_architettonici_data_agg>10/04/2001</vocab:view_tbeni_architettonici_data_agg> 
<vocab:view_tbeni_architettonici_tp_tutela>DICHIARATO DI INTERESSE CULTURALE AI SENSI DEL D.LGS. 22/01/2004 N. 42</vocab:view_tbeni_architettonici_tp_tutela> 
<vocab:view_tbeni_architettonici_imm_cd>155.0001</vocab:view_tbeni_architettonici_imm_cd> 
<vocab:view_tbeni_architettonici_prov_cd>22</vocab:view_tbeni_architettonici_prov_cd> 
<vocab:view_tbeni_architettonici_cmp_cd>6</vocab:view_tbeni_architettonici_cmp_cd> 
<vocab:view_tbeni_architettonici_com_cd>155</vocab:view_tbeni_architettonici_com_cd> 
<vocab:view_tbeni_architettonici_fraz_cd>0</vocab:view_tbeni_architettonici_fraz_cd> 
<vocab:view_tbeni_architettonici_immtpl_cd>26</vocab:view_tbeni_architettonici_immtpl_cd> 
<vocab:view_tbeni_architettonici_immuso_cd>1</vocab:view_tbeni_architettonici_immuso_cd> 
<vocab:view_tbeni_architettonici_imm_prt_cd>3</vocab:view_tbeni_architettonici_imm_prt_cd> 
<vocab:view_tbeni_architettonici_prt>PRIVATA</vocab:view_tbeni_architettonici_prt> 
<vocab:view_tbeni_architettonici_cd_tutela>1.00000000000</vocab:view_tbeni_architettonici_cd_tutela> 
<vocab:view_tbeni_architettonici_categoria>Manufatti insediativi</vocab:view_tbeni_architettonici_categoria> 
<vocab:view_tbeni_architettonici_selez>0</vocab:view_tbeni_architettonici_selez> 
<vocab:view_tbeni_architettonici_label_2ad></vocab:view_tbeni_architettonici_label_2ad> 
<vocab:view_tbeni_architettonici_label></vocab:view_tbeni_architettonici_label> 
<vocab:view_tbeni_architettonici_glatitude>46.39434215468</vocab:view_tbeni_architettonici_glatitude> 
<vocab:view_tbeni_architettonici_glongitude>11.1090853812521</vocab:view_tbeni_architettonici_glongitude> 
<rdf:type rdf:resource="vocab/view_tbeni_architettonici"/> 
</rdf:Description> 
..... 
..... 
..... 
<rdf:Description rdf:about="view_tbeni_architettonici/1835"> 
<rdfs:label>view_tbeni_architettonici #1835</rdfs:label> 
<vocab:view_tbeni_architettonici_do_serialuid rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">1835</vocab:view_tbeni_architettonici_do_serialuid> 
<dcterms:coverage rdf:resource="http://spcdata.digitpa.gov.it/Comune/H506" /> 
<vocab:view_tbeni_architettonici_loc_no></vocab:view_tbeni_architettonici_loc_no> 
<vocab:view_tbeni_architettonici_imm_no>Eremo e Chiesa di S. Biagio</vocab:view_tbeni_architettonici_imm_no> 
<vocab:view_tbeni_architettonici_via_no></vocab:view_tbeni_architettonici_via_no> 
<vocab:view_tbeni_architettonici_immuso_no></vocab:view_tbeni_architettonici_immuso_no> 
<vocab:view_tbeni_architettonici_immtpl_no>EREMO</vocab:view_tbeni_architettonici_immtpl_no> 
<vocab:view_tbeni_architettonici_data_agg>10/04/2001</vocab:view_tbeni_architettonici_data_agg> 
<vocab:view_tbeni_architettonici_tp_tutela>DICHIARATO DI INTERESSE CULTURALE AI SENSI DEL D.LGS. 22/01/2004 N. 42</vocab:view_tbeni_architettonici_tp_tutela> 
<vocab:view_tbeni_architettonici_imm_cd>154.0001</vocab:view_tbeni_architettonici_imm_cd> 
<vocab:view_tbeni_architettonici_prov_cd>22</vocab:view_tbeni_architettonici_prov_cd> 
<vocab:view_tbeni_architettonici_cmp_cd>6</vocab:view_tbeni_architettonici_cmp_cd> 
<vocab:view_tbeni_architettonici_com_cd>154</vocab:view_tbeni_architettonici_com_cd> 
<vocab:view_tbeni_architettonici_fraz_cd>0</vocab:view_tbeni_architettonici_fraz_cd> 
<vocab:view_tbeni_architettonici_immtpl_cd>68</vocab:view_tbeni_architettonici_immtpl_cd> 
<vocab:view_tbeni_architettonici_immuso_cd>0</vocab:view_tbeni_architettonici_immuso_cd> 
<vocab:view_tbeni_architettonici_imm_prt_cd>3</vocab:view_tbeni_architettonici_imm_prt_cd> 
<vocab:view_tbeni_architettonici_prt>PRIVATA</vocab:view_tbeni_architettonici_prt> 
<vocab:view_tbeni_architettonici_cd_tutela>1.00000000000</vocab:view_tbeni_architettonici_cd_tutela> 
<vocab:view_tbeni_architettonici_categoria>Beni religiosi</vocab:view_tbeni_architettonici_categoria> 
<vocab:view_tbeni_architettonici_selez>1</vocab:view_tbeni_architettonici_selez> 
<vocab:view_tbeni_architettonici_label_2ad>T243</vocab:view_tbeni_architettonici_label_2ad> 
<vocab:view_tbeni_architettonici_label>T244</vocab:view_tbeni_architettonici_label> 
<vocab:view_tbeni_architettonici_glatitude>46.3921621030441</vocab:view_tbeni_architettonici_glatitude> 
<vocab:view_tbeni_architettonici_glongitude>11.0775100584678</vocab:view_tbeni_architettonici_glongitude> 
<rdf:type rdf:resource="vocab/view_tbeni_architettonici"/> 
</rdf:Description> 

</rdf:RDF> 

我怎麼能提取出具有經/緯度之間協調 行一個給定的範圍?我使用Java和Jena在此架構代碼之後構建查詢:

Model m = FileManager.get().loadModel(Config.OntoBasePath + "test.rdf"); 

String queryString =  
"PREFIX db: <http://www.datiopen.it/CatalogSparql/resource/>   " + 
"PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>     " + 
"PREFIX owl: <http://www.w3.org/2002/07/owl#>       " + 
"PREFIX map: <http://www.datiopen.it/CatalogSparql/resource/#>   " + 
"PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>      " + 
"PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>    " + 
"PREFIX vocab: <http://www.datiopen.it/CatalogSparql/resource/vocab/> " + 
"select ?subject ?lat ?lon           " + 
"where {                " + 
"?subject rdfs:label ?label .          " + 
"?subject vocab:view_tbeni_architettonici_glatitude ?lat .    " + 
"?subject vocab:view_tbeni_architettonici_glongitude ?lon .    " + 
"FILTER(xsd:float(?lat) - 46.39584550 <= 0.05 && 46.39584550 - xsd:float(?lat) <= 0.05  " + 
"  && xsd:float(?long) - 11.12243239 <= 0.05 && 11.12243239 - xsd:float(?long) <= 0.05 ) " + 
"} " ; 

Query query = QueryFactory.create(queryString); 
// Execute the query and obtain results 
QueryExecution qe = QueryExecutionFactory.create(query, m); 
try { 
    ResultSet results = qe.execSelect(); 
    while (results.hasNext()) { 
     QuerySolution qs = results.nextSolution(); 
     Literal name = qs.getLiteral("x"); 
     System.out.println(name); 
    } 
} catch (Exception e){ 
    e.printStackTrace(); 
} finally { 
    qe.close(); 
} 

但我無法獲得預期結果。我總是得到一個空的結果集。有人可以幫我寫出正確的查詢嗎?

+2

嘗試刪除部分查詢,直到生成一些結果加回你刪除的位然後你知道哪個部分導致缺少結果 – AndyS

回答

1

您的vocab前綴看起來應該與您的數據和查詢中的相同,但事實並非如此。在數據上,您有:

xmlns:vocab="http://www.datiopen.it/rdf/resource/vocab/" 

但在查詢你有

PREFIX vocab: <http://www.datiopen.it/CatalogSparql/resource/vocab/> 

其實有這樣幾個前綴。您的數據(換算成龜的

@prefix db:  <http://www.datiopen.it/rdf/resource/> . 
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . 
@prefix owl:  <http://www.w3.org/2002/07/owl#> . 
@prefix xsd:  <http://www.w3.org/2001/XMLSchema#> . 
@prefix map:  <http://www.datiopen.it/rdf/resource/#> . 
@prefix vocab: <http://www.datiopen.it/rdf/resource/vocab/> . 
@prefix rdf:  <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . 
@prefix dcterms: <http://purl.org/dc/terms/> . 

和您的查詢有以下:

PREFIX db: <http://www.datiopen.it/CatalogSparql/resource/>    
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>      
PREFIX owl: <http://www.w3.org/2002/07/owl#>        
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>       
PREFIX map: <http://www.datiopen.it/CatalogSparql/resource/#>   
PREFIX vocab: <http://www.datiopen.it/CatalogSparql/resource/vocab/> 
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>    

前綴dbmapvocab不匹配,那麼你實際上是在查詢完全不同的東西比你的數據中的數據要多

+0

太棒了!呃糾正標籤詞彙,確保事情能夠開始奏效!標記db:和:map我已經消除了,因爲沒有使用它們。 我沒有意識到錯誤。非常感謝你。 – dbrembilla