몇개월 전에 특정 사이트에 추가하기 위한 필요에 의해 작성하였던 SPARQL 사용설명을 공개합니다. SPARQL(SPARQL Protocol and RDF Query Language)은 W3C의 표준으로서 RDF 쿼리 언어입니다. 데이터베이스에서 정보를 찾거나 입력하고자 할 경우 Query를 사용하듯이 RDF로 표현된 데이터를 찾기 위해서 SPARQL 이라는 언어를 사용합니다.그럼 이 SPARQL을 하나씩 살펴보겠습니다. 1. SPARQL의 유형 데이터베이스에 질의하는 쿼리는 흔히들 사용하는 SELECT문 이외에도 UPDATE, INSERT, DELETE 문들이 있습니다. 마찬가지로 SPARQL에도 쓰임새는 약간 다르지만 이러한 유형들이 존재합니다. 이 유형들은 SELECT, ASK, CONSTRUCT,..
레이블에 따라서 가, 나, 다...등으로 구분하고자할 때 regex, if, bind를 통하여질의가 가능하다. 쿼리-----------------------------------------------------prefix rdfs: select * where { ?s rdfs:label ?o . filter(lang(?o)='ko')bind ( if( regex(str(?o), '^[가-깋]'),'가',if( regex(str(?o), '^[나-닣]'),'나',if( regex(str(?o), '^[다-딯]'),'다','none'))) as ?t )} limit 50 ----------------------------------------------------- 설명bind(xxx as 변수)if(조건,..
LARQ는 ARQ와 Lucene으로 이루어져 SPARQL 쿼리에 텍스트 검색을 위해 사용된다.사용패턴은 크게 문자열 인덱스 생성과 Subject 인덱스 생성이 있겠다.문자열 인덱스 생성은 트리플에 포함되어있는 string을 Lucene을 통해 인덱스를 생성하고 생성된 인덱스에 검색 문자열과 매칭이 되는 string을 반환해 준다.반면에 Subject 인덱스 생성은 문자열 인덱스 생성과 유사하나 반환하는 값이 그 문자열이 포함된 string이 아니라그 string의 Subject 자원이다. 실제 사용을 위해 인덱스를 생성하는 작업부터 테스트를 해보았다.인덱스의 생성은 Model 자체를 읽는 것과Model의 Statement를 읽어서 생성하는 방식이 있다. 1. 먼저 Jena Model을 로딩하여 인덱스를 ..
rdfs:label로 연결이 되었든skos:altLabel로 연결이 되었든두개 중에 한개라도 연결이 된 자원을 찾는 쿼리 -------------------------------------------PREFIX skos: SELECT *WHERE { ?uri a ?type. ?uri rdfs:label|skos:altLabel ?label .}-------------------------------------------- rdfs:label|skos:altLabel| 는 OR의 의미로 사용됨
- Total
- Today
- Yesterday
- django
- 트리플 변환
- LOD
- 트리플
- cypher
- RDF
- TopBraid Composer
- Neo4j
- pyvis
- sparql
- Thymeleaf
- Ontology
- 스프링부트
- 지식그래프
- TDB
- 그래프 데이터베이스
- 타임리프
- neosemantics
- TBC
- RDF 변환
- Knowledge Graph
- 지식 그래프
- property graph
- 장고
- networkx
- 사이퍼
- MeCab
- stardog
- Linked Data
- 온톨로지
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |