N_5. LOD 데이터 사용 for Developer
아래에서 설명하는 방법은
자바 개발자가 코딩하여 LOD 데이터를 사용하는 방법에 대해서 기술하였습니다.
아래의 3가지 방식은 간단하고 많이 사용할 수 있는 방식을 정리한 것이며
이외에도 다른 방식이 존재함을 알려드립니다.
LOD 데이터 획득 방법
BufferedReader를 활용한 LOD 데이터 획득
String uri = "http://lod.nature.go.kr/resource/Betula_schmidtii_Regel"; URL url = new URL(uri); URLConnection conn = url.openConnection(); BufferedReader br = new BufferedReader( new InputStreamReader(conn.getInputStream(), "UTF-8")); String line; while ((line = br.readLine()) != null) { System.out.println(line); } |
FileManager를 활용한 LOD 데이터 획득
String uri = "http://lod.nature.go.kr/resource/Betula_schmidtii_Regel"; Model model = FileManager.get().loadModel(uri); StmtIterator iter = model.listStatements(ResourceFactory.createResource(uri), null, (RDFNode)null); Statement stmt = null; String sub = null, prop = null, obj = null; while(iter.hasNext()){ stmt = iter.next(); sub = stmt.getSubject().toString(); prop = stmt.getPredicate().toString(); obj = stmt.getObject().toString(); } |
SPARQL Endpoint를 활용한 LOD 데이터 획득
String queryString = “select * where { ?s no:commonName ‘박달나무’@ko . ?s ?p ?o .}”; String service = “http://lod.nature.go.kr/sparql”; //생물정보LOD에서 //제공하는 SPARQL Endpoint Query query = QueryFactory.create(queryString) ; QueryExecution qexec = QueryExecutionFactory.sparqlService(service, query); ResultSet results = null; try { results = qexec.execSelect(); } catch (Exception e) { e.printStackTrace(); } |