1 / 24

JENA – Java Framework for Building Semantic Web Applications

JENA – Java Framework for Building Semantic Web Applications. Hướng dẫn : TS Hoàng Hữu Hạnh Học viên : Nguyễn Mậu Quốc Hoàn Mai Văn Mười. CONTENTS. Giới thiệu Eclipse Java Editor Kiến trúc Eclipse Cài đặt Eclipse Viết chương trình Java bằng Eclipse

lena
Download Presentation

JENA – Java Framework for Building Semantic Web Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JENA – Java Framework for Building Semantic Web Applications Hướngdẫn: TS Hoàng HữuHạnh Họcviên : NguyễnMậuQuốcHoàn MaiVănMười

  2. CONTENTS • Giới thiệu Eclipse Java Editor • Kiến trúc Eclipse • Cài đặt Eclipse • Viết chương trình Java bằng Eclipse • Thêm các thư viện của Jena vào Eclipse • Tổng quan về Jena • Cấu trúc Jena 2 – Các lớp chính • Tạo một RDF Graph • Read/Write RDF File

  3. ECLIPSE? • Eclipse làphầnmềmmiễnphí, đượccácnhàpháttriểnsửdụngđểxâydựngnhữngứngdụng J2EE. • Eclipse SDK baogồm 3 phầnchính: Platform, Java Development Toolkit (JDT), Plug-in Development Environment (PDE) • Với JDT, Eclipse đượcxemnhưlàmộtmôitrườnghỗtrợpháttriển Java mạnhmẽ. • PDE hỗtrợviệcmởrộng Eclipse, tíchhợpcác Plug-in vào Eclipse Platform

  4. ECLIPSE? • Eclipse Platform là nền tảng của toàn bộ phần mềm Eclipse, mục đích của nó là cung cấp những dịch vụ cần thiết cho việc tích hợp những bộ công cụ phát triển phần mềm khách dưới dạng Plug-in . • JDT cũng có thể được coi như là một Plug-in làm cho Eclipse như là một Java IDE (Integrated Development Enviroment).

  5. KiẾN TRÚC ECLIPSE

  6. The Platform runtime • Công việc chính của Platform runtime là phát xem lug-in nào đang có trong thư mục plug-in của Eclipse. • Mỗi Plug-in đều có 1 tập tin Manifest liệt kê những kết nối mà plug-in cần. • Pug-in chỉ được tải vào Eclipse mỗi khi thực sự cần thiết để giảm lượng tài nguyên yêu cầu và thời gian khởi tạo.

  7. The Workspace • Workspace chịu trách nhiệm quản lý tài nguyên người dùng được tồ chức dưới dạng Project. Mỗi Project là một thư mục con trong thư mục Workspace. • Workspace bảo quản cấp thấp lịch sử những sự thay đổi tài nguyên, tránh thất thoát tài nguyên người dùng. • Workspace đồng thời chịu trách nhiệm thông bào những công cụ cấn thiết cho việc thay đổi tài nguyên.

  8. The Workbench • Workbench là giao diện đồ họa người dùng của Eclipse, gồm có Standard Widget Toolkit (SWT) và JFace. • Eclipse không hoàn toàn bắt buộc phải sử dụng SWT hay Jface để lập trình giao diện, có thể sử dụng AWT hay SWING của Java thông qua việc cài đặt các Plug-ins

  9. Team support • Trangbịhệthốngquảntrịđểquảnlýdựáncủangườidùng : Concurrent Versions System (CVS) Team support • Cungcấphệthốngtàiliệumởrộng, cóthểlàđịnhdạng HTML hay XML

  10. CÀI ĐẶT ECLIPSE • Trướchếtbạntải Eclipse (Classic) vềtừđịachỉ : http://www.eclipse.org/downloads/ • Giảinéntập tin Eclipse SDK vàothưmụcmàbạnmuốncàiđặt (Vídụ : C:\Eclipse). • Chépthưmục JRE của JDK vàothưmục con củathưmục Eclipse • Sauđó, chạytập tin eclipse.exe đểhoànthànhcàiđặt

  11. TỔNG QUAN VỀ JENA • LàmộtJava framework choviệcxâydựngcácứngdụng web ngữnghĩa • Website: http://jena.sf.net • CungcấpmộtmôitrườnglậptrìnhchoRDF, RDFS and OWL, SPARQL • Bao gồmcáccôngcụsuydiễntừcácluậtcơsở (rule-based inference engine) • Open source • Phiênbảnđầutiênrađời 2000 do HP Lab xâydựng • Jena 2 rađờivào 2003 – phiênbảnhiệntạilà Jena 2.5.6

  12. TỔNG QUAN VỀ JENA • Jena Framework baogồm: • RDF API: Giaodiệnlậptrìnhcho RDF • OWL API: Giaodiệnlậptrìnhcho OWL • Xuất và đọc các file RDF theo dạng RDF/XML, N3 và N-Triples • Cho phép lưu trữ trong bộ nhớ, lưu trữ cố định trong các tập tin đơn hay trong các hệ quản trị cơ sở dữ liệu (MySQL, HSQLDB, PostgreSQL, Oracle, Microsoft SQL Server) • Hệtruyvấn SPARQL

  13. KiẾN TRÚC JENA2 • RDF Graph được xem là trái tim của kiến trúc Jena 2 – tập các bộ ba các node • Kiến trúc của Jena đã được thiết kế để cho phép tích hợp một cách dễ dàng các thành phần xử lý có thể thay thế như bộ phân tích dữ liệu (parser), xuất bản (writer), lưu trữ và truy vấn • Jena API bao gồm một tập các giao diện Java mô tả các nguồn tài nguyên (resources), các thuộc tính (properties), các phát biểu (statements) và các mô hình (model) dưới dạng khung mô tả tài nguyên RDF (Resource Description Framework)

  14. KiẾN TRÚC JENA2 Các interfaces của Jena2

  15. KiẾN TRÚC JENA2 • RDFNode interface: Cungcấpcácthànhphầncủacácbộba RDF {predicate, subject, object} • Literal interface : Dùng để mô tả các chuỗi và chuyển đổi một số kiểu của Java như String, Int, và Double • Các đối tượng hiện thực giao diện Property có thể là một predicate trong bộ ba {predicate, subject, object} • Statement interface: mô tả bộ ba {predicate, subject, object}. Đồng thời nó cũng có thể được dùng như một đối tượng • Các đối tượng hiện thực các giao diện Container, Alt, Bag, hoặc Seq có thể là đối tượng

  16. TẠO RDF GRAPH • Kiến trúc Jena tập trung vào mô hình RDF (RDF model). Trong Jena một lược đồ RDF được gọi là một Model và được mô tả bởi giao diện Model. • ModelFactorycung cấp các method để tạo một dạng Model chuẩn • Ví dụ:

  17. TẠO RDF GRAPH • SửdụngcreateDefaultModel() đểtạomộtRDF Model Model model = ModelFactory.createDefaultModel(); • Đểtạomột Resource: Resource johnSmith = model.createResource(personURI); • Một RDF Model được xem như là một tập các phát biểu (statement). Mỗi phát biểu này được thêm vào RDF Model bằng phương thức addProperty: johnSmith.addProperty(VCARD.FN, fullName); • Xuất Model được tạo nhờ lớp PrinterWriter của Jena: model.write(new PrintWriter(System.out)); (xuấtra console)

  18. TẠO RDF GRAPH • Kếtquảxuấtra console: <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:vcard="http://www.w3.org/2001/vcard-rdf/3.0#" > <rdf:Descriptionrdf:about="http://somewhere/JohnSmith"> <vcard:FN>John Smith</vcard:FN> </rdf:Description> </rdf:RDF>

  19. TẠO RDF GRAPH Blank node • Ví dụ 2:

  20. TẠO RDF GRAPH • Kêt quả xuất ra dạng RDF/XML: <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:vcard="http://www.w3.org/2001/vcard-rdf/3.0#" > <rdf:Description rdf:about="http://somewhree/JohnSmith"> <vcard:N rdf:nodeID="A0"/> <vcard:FN>JohnSmith</vcard:FN> </rdf:Description> <rdf:Description rdf:nodeID="A0"> <vcard:Given>John</vcard:Given> <vcard:Family>Smith</vcard:Family> </rdf:Description> </rdf:RDF>

  21. TẠO RDF GRAPH • Statements • Một statement gồm 3 phần • Subject: resource • Predicate: property • Objects: resource hay literal • Thôngthườngmột statement đượcgọilà triple (bộba) • Một model làmộttậpcác statement • Jena model cungcấpphươngthứclistStatement() vớigiátrịtrảvềlàStmIterator ( mộtdanhsáchcác statement trong model )

  22. TẠO RDF GRAPH • Vídụ 3 • Kếtquả : http://somewhree/JohnSmith http://www.w3.org/2001/vcard-rdf/3.0#N -207df7e5:11d4b6fc7da:-8000 http://somewhree/JohnSmith http://www.w3.org/2001/vcard-rdf/3.0#FN JohnSmith -207df7e5:11d4b6fc7da:-8000 http://www.w3.org/2001/vcard-rdf/3.0#Given John -207df7e5:11d4b6fc7da:-8000 http://www.w3.org/2001/vcard-rdf/3.0#Family Smith

  23. READ/WRITE RDF FILE • Writing RDF model.write(System.out); • Reading RDF String inputFileName = "input.rdf"; InputStream in = FileManager.get().open(inputFileName); model.read(in,"");

  24. Thanks for your attention

More Related