Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.
rdf:type이 b:Device이고 b:Device의 위치가 o:techno인 경우에 DeviceType을 여러개 가지는(hasDeviceType)는 경우는 아래와 같이 sparql을 만들어서 or 기능을 구현할 수도 있다.(DeviceType이 o:motion-sensor_33 이거나 o:motion-sensor_32 경우)
-------------union으로 or을 구현한 예제
select  distinct  ?uri  where { 
 ?uri rdf:type b:Device.
 ?uri dul:hasLocation o:techno.
  { ?uri o:hasDeviceType o:motion-sensor_33 .}
   union 
  { ?uri o:hasDeviceType o:motion-sensor_32 .}
}
*참고 : sparql에서는 아래와 같이 각 ?s ?p ?o중의 하나에 직접 ||, &&, or , and등을 이용한 형태를 지원하지 않지 않으므로 filter문을 이용하여 처리해야 함
----지원하지 않는 형태----
select * where {
?s ?p ('a' or 'b')
}
----filter문을 이용해서 or을 구현한 형태
select *
where {
  ?uri rdf:type b:Device.
  ?uri dul:hasLocation o:techno .  
  ?uri o:hasDeviceType ?devType .
  filter (?devType = o:/motion-sensor_32 || ?devType = o:/motion-sensor_33) .
}
댓글 0
| 번호 | 제목 | 날짜 | 조회 수 | 
|---|---|---|---|
| 15 | fuseki의 endpoint를 이용한 insert, delete하는 sparql예시 | 2018.02.14 | 2574 | 
| 14 | 전체 컨택스트 내용   | 2017.12.19 | 2735 | 
| » | DeviceType이 o:motion-sensor_33 이거나 o:motion-sensor_32 경우의 sparql문장은 다음과 같다. | 2017.08.16 | 3985 | 
| 12 | federated query 예제 | 2017.01.19 | 3973 | 
| 11 | 특정문자열이나 URI를 임의로 select 절에 지정하여 사용할때 사용하는 sparql 문장 | 2016.08.25 | 4006 | 
| 10 | SPARQL의 유형, SPARQL 만들기등에 대한 설명 | 2016.02.18 | 2880 | 
| 9 | ?a는 모두 표시하면서 ?b와 비교하여  ?a=?b는 표시하고 ?a!=?b 인경우는 ""로 구성된 결과 집합을 구하는 경우   | 2016.01.29 | 3798 | 
| 8 | null 혹은 ""를 체크하는 방법 | 2016.01.27 | 4203 | 
| 7 | sparql 1.1 BIND(if() as ?bind변수) 버그로 추정되는 문제점및 해결방안 -> select 문에 (if(,,) as ?bind변수)   | 2016.01.21 | 2678 | 
| 6 | 한번에 여러값 update하기 | 2016.01.13 | 3459 | 
| 5 | 문자열을 숫자(integer)로 casting하기 | 2016.01.13 | 3856 | 
| 4 | update(update와 delete->insert)사용시 주의/참고사항 | 2016.01.06 | 3916 | 
| 3 | fuseki에 update하는 방법(java api이용)및 주의 사항 | 2015.12.30 | 4358 | 
| 2 | sparql 문법구조 설명   | 2015.12.09 | 3522 | 
| 1 | sparql에서 concat에제 | 2015.11.27 | 3115 | 
