티스토리 뷰
SPARQL 에 FROM과 FROM NAMED 절이 존재한다.
SPARQL query는 Dataset에 동장하도록 되어 있다.
Dataset은 1개의 default graph와 n개의 named graph의 집합으로 구성되기 때문에
각각의 graph에 query를 할 수 있다.
#Example Dataset
<http://joyhong.tistory.com/a> = { <a1> <p> <a2> . }
<http://joyhong.tistory.com/b> = { <b1> <p> <b2> . }
<http://joyhong.tistory.com/c> = { <c1> <p> <c2> . }
<http://joyhong.tistory.com/d> = { <d1> <p> <d2> . }
일반적으로 SELECT 구문에서 FROM이나 FROM NAMED 절을 사용하지 않으면
default graph에 query가 동작한다.
이는 엔진이 자동적으로 FROM이나 FROM NAMED 절이 없을 경우
모든 graph를 default graph에 병합하도록 설정이 되어 있다면
Dataset 전체의 데이터에 대해 query를 실행하도록 된다.
#Query 1
SELECT ?s
WHERE { ?s <p> ?o }
#Result1
<a1>, <b1>, <c1>, <d1>
FROM 절을 사용하게 되면
FROM 절에 명시된 graph에 한하여 default graph에 병합하여 query를 수행한다.
#Query 2
SELECT ?s
FROM <http://joyhong.tistory.com/a>
WHERE { ?s <p> ?o }
#Result 2
<a1>
FROM NAMED 절을 사용할 경우에는
query 대상이 FROM NAMED 절에 명시된 named graph로 한정된다.
이 때는 GRAPH 절에 바운드 되는 그래프가 대상이 되어진다.
#Query 3
SELECT ?s
FROM NAMED <http://joyhong.tistory.com/a>
WHERE { ?s <p> ?o }
#Result 3
no results
#Query 4
SELECT ?s
FROM NAMED <http://joyhong.tistory.com/a>
FROM NAMED <http://joyhong.tistory.com/b>
WHERE { GRAPH ?g {?s <p> ?o }}
#Result 4
<a1>, <b1>
#Query 5
SELECT ?s
FROM <http://joyhong.tistory.com/a>
FROM <http://joyhong.tistory.com/b>
FROM NAMED <http://joyhong.tistory.com/c>
FROM NAMED <http://joyhong.tistory.com/d>
WHERE { ?s <p> ?o }
#Result 5
<a1>, <b1>
#Query 6
SELECT ?s
FROM <http://joyhong.tistory.com/a>
FROM <http://joyhong.tistory.com/b>
FROM NAMED <http://joyhong.tistory.com/c>
FROM NAMED <http://joyhong.tistory.com/d>
WHERE { GRAPH ?g {?s <p> ?o }}
#Result 6
<c1>, <d1>
<그림 출처 : http://yarcdata.com/blog/?p=201>
'H:::SPARQL' 카테고리의 다른 글
H_12. BIND와 BOUND (0) | 2014.08.01 |
---|---|
H_11. IF를 통한 분류 (0) | 2014.01.23 |
H_9. property 두개 중에 어떤 것이든 연결된 자원 찾기 (0) | 2012.12.07 |
H_8. KDATA 서울시에 속한 행정구 목록 (0) | 2012.12.06 |
H_7. 특정 클래스의 하위 클래스를 모두 검색 (0) | 2012.11.28 |
- Total
- Today
- Yesterday
- 사이퍼
- property graph
- sparql
- RDF 변환
- cypher
- 타임리프
- 지식 그래프
- 트리플
- neosemantics
- Knowledge Graph
- Neo4j
- networkx
- Ontology
- Linked Data
- 그래프 데이터베이스
- django
- 온톨로지
- TBC
- 트리플 변환
- LOD
- RDF
- stardog
- pyvis
- 지식그래프
- 스프링부트
- TDB
- TopBraid Composer
- rdfox
- Thymeleaf
- 장고
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |