2017-05-24 10 views
1

OpenData에서 매우 새로워졌으며 SPARQL에서 쿼리를 작성하려고합니다. - 카테고리 :sparql을 사용하여 dbpedia.org를 쿼리하는 방법

내 목표는 기준의 설정을 다음과 같은 데이터를 얻을 수 있습니다 Home_automation - 유형에서 모든 항목을 선택 "것" - 사진을 - 적어도 하나 개의 항목으로는 "의 제품입니다"

PREFIX cat: <http://dbpedia.org/resource/Category:> 
PREFIX skos: <http://www.w3.org/2004/02/skos/core#> 

SELECT * 
WHERE { 
    cat:Home_automation skos:broader ?x 
} 

하지만 지금은 where 절에 다른 필터를 추가하는 방법을 모른다 : 독일 설명

와 -url 나는 다음을 시도했다. 나는 사용자를 더 넓게 보았습니다. ... ... 항목을 가져 오는 데는 잘못된 방향이라고 생각합니다. 해야 https://dbpedia.org/sparql

결과 :

내가 가진 쿼리를 테스트

|   (label)   | (url) 
|--------------------------|----------------------------------- 
|"Kurzzeitwecker"@de  | urls to the picture of the device 
|"Staubsauger"@de   | -||- 
|"Waschmaschine"@de  | -||- 
|"Geschirrspülmaschine"@de | -||- 

사람이 몇 가지 팁을하십시오 있습니까?

업데이트 : 새로운 쿼리 :

PREFIX cat: <http://dbpedia.org/resource/Category:> 
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 
PREFIX owl: <http://www.w3.org/2002/07/owl#> 
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 

SELECT ?s ?label WHERE { 
    ?s ?p cat:Home_automation . 
    ?s rdf:type owl:Thing . 
    ?s rdfs:label ?label 
    FILTER (LANG(?label)='de') 
} 
order by ?p 
+0

쿼리를 업데이트했습니다. 그게 해결책인가? – AKSW

+0

완전한 해결책은 아니지만 그것의 일부입니다. – kroissma

답변

1

당신이 원하는 것을 명확하지 않다. 먼저 dbpedia에 포함 된 정확한 정보와 구성 방법을 알아야합니다.

그러나 어떤 유형의 관계가 발견 되었습니까? cat:Home_automation이 포함되어 있으므로 원하는 것을 더 잘 알 수 있습니다.

dbpedia에서 cat:Home_automation이 발생하는 방법을 지정하려면 일반 쿼리로 시작하는 것이 좋습니다. 그런 다음 더 구체적으로 진행하고 추가 쿼리를 제기 할 수 있습니다.

cat:Home_automation가 될 경우 트리플 목록에 쿼리 cat:Home_automation 객체입니다

PREFIX cat: <http://dbpedia.org/resource/Category:> 
PREFIX skos: <http://www.w3.org/2004/02/skos/core#> 

SELECT ?p ?o WHERE { 
    cat:Home_automation ?p ?o 
} 
order by ?p 

트리플 목록에 쿼리

PREFIX cat: <http://dbpedia.org/resource/Category:> 
PREFIX skos: <http://www.w3.org/2004/02/skos/core#> 

SELECT ?s ?p WHERE { 
    ?s ?p cat:Home_automation 
} 
order by ?p 

검사 결과, 당신을 위해 흥미로운 무엇 참조 그런 다음 추가 쿼리를 계속 진행하십시오.

+0

네, 그건 내 문제입니다. 대학을위한 운동이고 우리 팀의 아무도 과제를 해결하는 방법을 모릅니다. 위에 필요한 결과를 추가했습니다. 두 번째 쿼리가 상당히 좋아 보이는 데 어떻게 필터링하여 "유형"유형의 항목 만 얻을 수 있습니까? 도움 주셔서 감사합니다. – kroissma

+0

몇 번의 시도 후에 올바른 결과가 나옵니다. 팁으로 "cat : Home_automation"을 객체로 사용해 주셔서 감사합니다. – kroissma