인터넷기술 강혜원 Java 를 이용한 RDF Process 인터넷기술 012ITI01 강혜원
인터넷기술 강혜원 Index RDF 란 Jena API Vcard 의 RDF 표현 Creating(Writing) RDF vCard database Reading RDF Querying a model – vcard database 에 질의 Jena 를 이용한 검색엔진 process
인터넷기술 강혜원 RDF 란 Resource Description Framework- 리소스를 묘사하기 위해 W3C 에서 제안한 표준 프로그램이 의도된 의미를 이해할 수 있게 하기 위해서 XML Syntax 로 정보를 나타냄 하나의 statement - a triple of the form {predicate, subject, object} has a property whose value is {numberOfHits, } {title, "The Connoisseur's Guide to the Mind"}
인터넷기술 강혜원 RDF 란 {dc:Publisher, "World Wide Web Consortium"} {dc:Title, "W3C Home Page"}
인터넷기술 강혜원 Jena API RDF 를 Processing 하기 위한 library RDF 를 parse, create 하거나 search 하기위 한 interface 제공
인터넷기술 강혜원 vCard 의 RDF 표현 vCard - profile defined by RFC 2426
인터넷기술 강혜원 Creating(Writing) RDF 성 : “ 강 ” 이름 : “ 혜원 ”
인터넷기술 강혜원 Creating RDF code String personURI = " 강혜원 "; String givenName = " 혜원 "; String familyName = " 강 "; String fullName = givenName + " " + familyName; …………… Model model = new ModelMem(); Resource johnSmith = model.createResource(personURI).addProperty(VCARD.FN, fullName).addProperty(VCARD.N, model.createResource().addProperty(VCARD.Given, givenName).addProperty(VCARD.Family,familyName))
인터넷기술 강혜원 vCard database <rdf:RDF xmlns:rdf=' xmlns:vCard=' > 강혜원 강 혜원 중간생략 권오연 권 오연
인터넷기술 강혜원 Reading RDF
인터넷기술 강혜원 Reading RDF code static final String inputFileName = "com/hp/hpl/mesa/rdf/jena/tutorial/vc-db1.rdf"; ………………… Model model = new ModelMem(); InputStream in = Tutorial05.class.getClassLoader().getResourceAsStream(inputFileName); ………………….. model.read(new InputStreamReader(in), "");
인터넷기술 강혜원 Querying a model – vcard database 에 질의 “ 강혜원 ” 의 nickname 검색 Database 에 있는 모든 사람의 이름 검색 이름이 “ 혜원 ” 으로 끝나는 사람의 이름 검색
인터넷기술 강혜원 Querying code StmtIterator iter = model.listStatements( new SelectorImpl(null, VCARD.FN, (RDFNode) null) { public boolean selects(Statement s) { try { return s.getString().endsWith(" 혜원 "); }
인터넷기술 강혜원 Jena 를 이용한 검색엔진 process A.html B.html C.html D.html 사이 에 RDF 가 있는 파일만 가져옴 RDF-aware search engine crawler <rdf:RDF … ……. ……. A.html parsing {title, "The Connoisseur's Guide to the Mind"} Triple model 생성 query
인터넷기술 강혜원 결론 효율적인 RDF interpretation 을 위한 tool 및 Library 필요 Jena API 는 자바의 객체지향적 성격과 RDF 의 결합을 통해 효율적 Processing 제공 향후 멀티미디어 데이터의 RDF 에 대한 효율 적 interface 제공 필요
인터넷기술 강혜원 참고 Paper&Site Jena: Implementing the RDF Model and Syntax Specification (Brian McBride,Hewlett Packard Laboratories Bristol, UK) ftp://ftp.isi.edu/in-notes/rfc2426.txt Jena-1.4.0\doc\tutorial\index.html