Tích hợp dữ liệu trong Semantic Web

28 363 0
Tích hợp dữ liệu trong Semantic Web

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tích hợp dữ liệu trong Semantic Web

ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KHOA HỌC TIỂU LUẬN MÔN HỌC SEMANTIC WEB Đề tài: TÍCH HP DỮ LIỆU TRONG SEMANTIC WEB Giáo viên hướng dẫn : TS. Hoàng Hữu Hạnh Học viên thực hiện: Nhóm 7 Nguyễn Trí Nhân Trần Thái Sơn Trần Kiên Nguyễn Thò Trúc Quỳnh Lớp Cao học Khoa học máy tính – Khoá 2008 - 2010 Hueá, thaùng 12/2009 2 MỤC LỤC MỤC LỤC .1 MỞ ĐẦU .1 B. NỘI DUNG .3 1. Tổng quan về AutoMed .3 2. Lược đồ biểu diễn các nguồn dữ liệu XML .5 3. Chuyển đổi và tích hợp các nguồn dữ liệu XML trong AutoMed 10 3.1 Thuật toán chuyển đổi lược đồ 10 3.2 Phép tương đương lược đồ .16 3.3. Tích hợp lược đồ .20 3.4. Truy vấn các file XML .20 3.5. Xử lý nhiều Ontologies 24 C. KẾT LUẬN .25 D. TÀI LIỆU THAM KHẢO 26 MỞ ĐẦU Mục tiêu ban đầu của Semantic Web là để hỗ trợ người dùng tìm kiếm thông tin trên mạng một cách nhanh chóng, chuẩn xác và thông minh hơn so với các công cụ tìm kiếm truyền thống. Kể từ đó đến nay, các kỹ thuật liên quan đến Semantic Web không ngừng được hoàn thiện, các ứng dụng liên quan đến Semantic Web cũng được mở rộng như: Phát triển các chuẩn công nghệ chung để biểu diễn thông tin và cho phép máy tính có thể hiểu được một số thông tin trên Web, hỗ trợ tìm kiếm thông minh hơn, hỗ trợ việc khám phá, tách chiết thông tin, tích hợp dữ liệu và tự động hóa một số công việc thay cho con người. Trong giới hạn của bài tiểu luận, nhóm chúng tôi tìm hiểu các phương pháp tích hợp các nguồn dữ liệu XML trong Semantic Web bằng hệ thống AutoMed. Nội dung của tiểu luận gồm có: Tổng quan về AutoMed Lược đồ chuyển đổi các nguồn dữ liệu XML Chuyển đổi và tích hợp các nguồn dữ liệu XML trong AutoMed Chúng tôi xin chân thành cảm ơn Thầy giáo Hoàng Hữu Hạnh đã tận tình giảng dạy. Mặc chúng tôi đã cố gắng nghiên cứu và tổng hợp các nguồn tài liệu để hoàn thành tiểu luận nhưng do thời gian có hạn nên chắc chắn sẽ có một số sai sót, chúng tôi mong nhận được những ý kiến đóng góp của Thầy giáo Hoàng Hữu Hạnh và các anh chị học viên lớp cao học Khoa học Máy tính khóa 2008. 1 Nhóm 7-KHMT08 Nguyễn Trí Nhân Trần Kiên Trần Thái Sơn Nguyễn Thị Trúc Quỳnh 2 B. NỘI DUNG 1. Tổng quan về AutoMed AutoMed là một hệ thống tích hợp dữ liệu không đồng nhất hỗ trợ chuyển đổi lược đồ để tích hợp dữ liệu. Hình 1: mô tả cách tiếp cận AutoMed để tích hợp dữ liệu XML. Mỗi nguồn dữ liệu được mô tả bởi một lược đồ nguồn dữ liệu, kí hiệu S i , nó được chuyển đổi thành 1 hợp lược đồ thích hợp US i bởi một tập các bước chuyển đổi nguyên thuỷ, do đó sẽ tạo ra một lộ trình chuyển đổi giữa lược đồ nguồn dữ liệu với hợp lược đồ tương ứng. Tất cả các hợp lược đồ đều đúng cú pháp và được xác định bởi các id chuyển đổi giữa mỗi cặp US i và US i+1 của các hợp lược đồ. ID là một loại đặc biệt của bước chuyển đổi nguyên thuỷ, nó nối hai cấu trúc đúng cú pháp trong hai lược đồ khác nhau biểu diễn tương đương về mặt ngữ nghĩa. Lộ trình chuyển đổi bao gồm các ID có thể được tự động sinh ra. Sau đó một lược đồ bất kỳ của các hợp lược đồ được chỉ định là một lược đồ tổng thể hoặc được lựa chọn để chuyển đổi thành một lược đồ mới có khả năng trở thành lược đồ tổng thể. Để hoàn thành việc chuyển đổi một lược đồ nguồn dữ liệu thành hợp lược đồ phải áp dụng các bước chuyển đổi nguyên thuỷ như: Add, Delete hoặc Rename cấu trúc lược đồ. Mỗi thao tác Add, Delete được đi kèm bởi một truy vấn chỉ rõ việc mở rộng của một cấu trúc mới được thêm vào hoặc bị xoá trong giới hạn của các cấu trúc lược đồ khác. Truy vấn này được biểu diễn bởi ngôn ngữ IQL(Intermediate Query Language) của AutoMed. Truy vấn được hỗ trợ bởi một thao tác chuyển đổi nguyên thuỷ nhằm cung cấp thông tin cần thiết để tự động nghịch đảo chuyển đổi nguyên thuỷ. Điều này có nghĩa: AutoMed là một hệ thống tích hợp dữ liệu both-as-view(BAV) [15], trong đó thao tác Add/Extend trong lược đồ chuyển đổi tương ứng với các luật Global-As-View (GAV), ngược lại thao tác Delete/Contract tương ứng với luật Local-As-View(LAV). Nó có thể trích lọc một định nghĩa của lược đồ tổng thể như một view qua các lược đồ nguồn dữ liệu và cũng có thể trích lọc các định nghĩa của các lược đồ nguồn dữ liệu như các view qua lược đồ tổng thể. 3 Trong Hình 1 mỗi US i có thể chứa thông tin từ các nguồn S i tương ứng. các cấu trúc này không được chèn vào US i thông qua thao tác Add, ngược lại thông qua thao tác Extend. Cần hai truy vấn để xác định ranh giới mức thấp hơn và cao hơn khi mở rộng cấu trúc mới. Ranh giới thấp hơn có thể là Void và ranh giới cao hơn có thể là Any, chúng xác định tách biệt mà không biết thông tin về ranh giới thấp hơn và cao hơn của sự mở rộng một cấu trúc mới. Có thể có những thông tin có trong một lược đồ nguồn dữ liệu S i nhưng không có trong US i tương ứng, và thông tin này bị gỡ bỏ bởi thao tác Contract mà không phải bởi thao tác Delete. Giống như Extend, Contract cần hai truy vấn để xác định ranh giới mức thấp hơn và cao hơn khi mở rộng cấu trúc bị xoá. Khi thiết lập tích hợp dữ liệu XML, mỗi nguồn dữ liệu XML được mô tả bởi một lược đồ XML DataSource kí hiệu S i , chuyển đổi thành một lược đồ trung gian I i , bởi các thao tác chuyển đổi nguyên thuỷ như Insert, Remove, Rename các cấu trúc lược đồ. Sau đó hợp các lược đồ sinh ra tự động và chúng mở rộng mỗi I i với các cấu trúc còn của các lược đồ trung gian. Sau đó các lộ trình chuyển đổi giữa US i và US i+1 của các hợp lược đồ cũng được tự động sinh ra. Framework tích hợp XML hỗ trợ hai phương pháp tích hợp lược đồ Top-Down và Bottom-Up. Với phương pháp Top-Down, lược đồ tổng thể được định nghĩa trước và cấu trúc lược đồ dữ liệu được cấu trúc lại để nối với cấu trúc của nó. Với phương pháp Bottom-Up lược đồ tổng thể không được định nghĩa trước nhưng được tự động sinh ra. 4 Hình 1: Tích hợp XML trong AutoMed 2. Lược đồ biểu diễn các nguồn dữ liệu XML Khi mã hoá dữ liệu trong XML, có hai cách thức bắt buộc các kiểu và cấu trúc dự định qua các file XML: lược đồ XML và DTD. Tuy nhiên, những kĩ thuật này cung cấp một cú pháp phức tạp của một file, chúng mô tả một cấu trúc có thể có của một file, không phải một cấu trúc thực tế. Cấu trúc của một file XML rất quan trọng trong tích hợp dữ liệu, tích hợp lược đồ và trong tối ưu hoá truy vấn. Có thể nói rằng một file XML có thể không có lược đồ XML hoặc DTD tham chiếu. Vì những lý do này, giới thiệu lược đồ XML DataSource (XML DataSource Schema), tóm tắt cấu trúc của một file XML, lược bỏ bớt thông tin chẳng hạn thông tin về các kiểu dữ liệu. Khái niệm lược đồ XML DataSource 5 tương tự với DataGuide. Tuy nhiên, lược đồ XML DataSource là các cây XML trong khi đó DataGuide là các đồ thị OEM. Để có được lược đồ XML DataSource, đầu tiên sao chép file XML vào bộ nhớ, trong miền biểu diễn của nó. Thuật toán xây dựng lược đồ XML sau khi sao chép file XML. 1. Gọi R là gốc. Nếu R có các nút con, gọi danh sách các nút con là L. a. Xét nút con đầu tiên trong L là nút N. For N’ ∈ {L\N} có cùng đích với N - sao chép các thuộc tính của N’ mà không xuất hiện trong N qua nút N. - sao chép và gắn danh sách chứa các nút con của N’ vào danh sách chứa các nút con của N. - Xoá nút N’ và cây con của nó. b. Xét nút con tiếp theo của L và thực hiện như (a). 2. Xét mỗi nút trong danh sách chứa nút con mới của R. AutoMed có một mô hình dữ liệu phổ biến thường dùng là Hypergraph Data Model (HDM). Đây là mô hình dữ liệu mức thấp có thể biểu diễn các ngôn ngữ mô hình hoá mức cao như mô hình quan hệ ER, mô hình hướng đối tượng và mô hình XML. Lược đồ HDM bao gồm các nút, các cạnh và các ràng buộc. Lựa chọn một mô hình dữ liệu phổ biến mức thấp cho hệ thống AutoMed là có chủ ý trước, cũng có thể biểu diễn các ngôn ngữ mô hình hoá mức cao tốt hơn mà không bị nối ghép sai và tối nghĩa. Bảng 1 mô tả cách biểu diễn cấu trúc lược đồ XML DataSource trong HDM. Lược đồ này gồm 4 cấu trúc như sau: 1. Element: Một element e có thể chính nó tồn tại và là cấu trúc một nút. Nó được biểu diễn bởi lược đồ 〉〉〈〈 e 2. Attribute: Một thuộc tính a của e là một cấu trúc liên kết nút và được biểu diễn bởi lược đồ 〉〉〈〈 ae, . Trong HDM chúng được biểu diễn bởi một nút mô tả thuộc tính và một cạnh nối nút này với nút mô tả e, có ràng buộc một thực thể của e có nhiều nhất 6 một thực thể kết hợp với nó và thực thể này có thể kết hợp với một hoặc nhiều thực thể với e. 3. NestList: Mối quan hệ cha-con giữa 2 element e p và e c là một cấu trúc liên kết với lược đồ 〉〉〈〈 iee cp ,, , trong đó i là thứ tự của e c trong danh sách các nút con của e p . Trong HDM, mối quan hệ này được biểu diễn một cạnh nối e p và e c và một ràng buộc mỗi thực thể của e p được kết hợp với 0 hoặc nhiều thực thể của e c và mỗi thực thể của e c chỉ kết hợp với một thực thể của e p . 4. PCDATA: văn bản trong XML được biểu diễn bới cấu trúc PCDATA. Đây là một cấu trúc nút với lược đồ 〉〉〈〈 PCDATA . Trong một lược đồ bất kì, chỉ có một cấu trúc PCDATA biểu tất cả các thực thể của PCDATA trong một tài liệu XML. Để liên kết cấu trúc PCDATA với một Element, xem nó như một Element và sử dụng cấu trúc NestList. Ở đây IQL là ngôn ngữ truy vấn dựa trên danh sách đã có, do đó chỉ sử dụng một cấu trúc NestList. Nút con thứ n của nút cha có thể được xác định bởi một truy vấn định rõ NestList tương ứng, và nút được yêu cầu sẽ là mục thứ n trong danh sách kết quả IQL. Một vấn đề trong lược đồ XML DataSource là các Element XML trùng tên tại các vị trí khác nhau. Vấn đề này được mở rộng khi gặp nhiều file. Trong lược đồ XML DataSource, sử dụng đinh danh: ,count:eelementNam:schemaName 〉〈〉〈〉〈 trong đó SchemaName là tên lược đồ được định nghĩa trong AutoMed, và Count là một biến đếm được tăng lên mỗi lần gặp elementName cùng tên khi duyệt sâu đầu tiên(Depth-first) lược đồ. Đối với tài liệu XML, wrapper XML tạo ra một định danh duy nhất có dạng 〉〈〉〈〉〈〉〈 instance,count:eelementNam:schemaName trong đó instance là một biến đếm được tăng lên mỗi lần gặp instance mới của element lược đồ tương ứng trong tài liệu. 7 Bảng 1 Biểu diễn lược đồ nguồn dữ liệu XML theo HDM Higher Level Construct Equivalent HDM Representation Construct: Element Class nodal Scheme 〉〉〈〈 e Node: 〉〉〈〈 exml : Construct: Attribute Class: nodal-linking, constraint Schema: 〉〉〈〈 ae, Node: 〉〉〈〈 aexml :: Edge 〉〉〈〈 aexmlexml ::,:_, Links 〉〉〈〈 exml : Cons makeCard ):1,1:0,::_,( Naexml 〉〉〈〈 Construct NestList Class linking, constraint Scheme 〉〈 〈 iee cp ,, Node: 〉〉〈〈 aexml :: Edge 〉〉〈〈 aexmlexml ::,:_, Links 〉〉〈〈 exml : Cons makeCard ):1,1:0,:,:,( Nexmlexmli cp 〉〉〈〈 Construct: PCDATA Class nodal Scheme 〉〉〈〈 PCDATA Node 〉〉〈〈 PCDATAxml : Ví dụ: Minh họa lược đồ XML DataSource Schemas, xét tài liệu XML sau: <university> <school name="School of Law"> <academic> <name>Dr. G. Grigoriadis</name> <office>123</office> </academic> <academic> <name>Prof. A. Karakassis</name> <office>111</office> </academic> </school> <school name="School of Medicine"> 8 [...]... cùng tự động sinh ra các hợp lược đồ USi thông qua các id và lược đồ tổng thể (bằng cách thêm các ngữ nghĩa) Hình 4: Tích hợp các lược đồ XML DataSource Schema 3.2 Phép tương đương lược đồ Các cách tiếp cận khác để chuyển đổi hay tích hợp dữ liệu XML không sử dụng RDF/S hoặc OWL có trong [16,18-20,23] Trong [24, 25] cũng thảo luận về sự chuyển đổi và tích hợp các nguồn dữ liệu XML Tuy nhiên, các bài... nguồn dữ liệu XML tương ứng với S1 có thể được sử dụng để lấy dữ liệu cần thiết cho trả lời câu truy vấn 20 ii) Khi tích hợp đa lược đồ nguồn dữ liệu với các lược đồ S1, , Sn theo lược đồ GS tổng thể ảo, bộ xử lý câu truy vấn của AutoMed có thể xử lý một câu truy vấn IQL được biểu diễn trên GS kết hợp với các wrapper XML cho các nguồn dữ liệu tương đương với Si (iii) Khi thiết lập chuyển đổi dữ liệu. .. đương với Si (iii) Khi thiết lập chuyển đổi dữ liệu hay thiết lập tích hợp dữ liệu cụ thể, trong đó các XML wrapper của các nguồn dữ liệu (s) lấy dữ liệu và XML wrapper của lược đồ đích cụ thể hoá dữ liệu đưa vào định dạng lược đồ đích Hai lớp AutoMedWrapperFactory và AutoMedWrapper là lớp trừu tượng thực thi một vài phương thức trừu tượng, trong khi đó các lớp XMLWrapperFactory và XMLWrapper sẽ thực thi... element/attribute trong một nguồn dữ liệu tương đương với một lớp cha (supperclass) hoặc một lớp con (subclass) của một element/attribute trong một nguồn dữ liệu khác Thông tin này được tạo ra từ các phép tương đương giữa các nguồn dữ liệu và các ontologies Điều này cho phép các mối quan hệ có ngữ nghĩa hơn được suy ra giữa các nguồn dữ liệu và do đó có nhiều thông tin hơn được giữ lại từ một nguồn dữ liệu khi... đương trong bảng 2 và 3 3.3 Tích hợp lược đồ Xét sự tích hợp của một tập các lược đồ XML DataSource Schema S 1 , , Sn tất cả đều phù hợp với một ontology R vào một lược đồ XML DataSource tổng thể Thuật toán đổi tên trong phần 2.2 đầu tiên được sử dụng để tạo ra các lược đồ XML DataSource Schema trung gian IS1 , , ISn Lược đồ tổng thể ban đầu GS1 là IS1 Sau đó IS2 tích hợp với GS1 để tạo ra GS2 Sự tích hợp. .. trích lọc từ tài liệu này là S1 trong hình 2 Hình 2: Các lược đồ XMLDSS S1 và S2, lược đồ RDFS R1 và các lược đồ XMLDSS tương đương IS1 và IS2 9 3 Chuyển đổi và tích hợp các nguồn dữ liệu XML trong AutoMed 3.1 Thuật toán chuyển đổi lược đồ Thuật toán chuyển đổi lược đồ có thể được áp dụng theo hai cách: top-down, trong đó lược đồ tổng thể được định nghĩa trước và các lược đồ nguồn dữ liệu được chuyển... thể sử dụng các phép tương giữa các nguồn dữ liệu và các ontologies Cách tiếp cận ở đây có thể sử dụng thông tin để xác định một element/attribute trong một nguồn dữ liệu tương đương với một lớp cha (supperclass) hoặc một lớp con (subclass) của một element/attribute trong một nguồn dữ liệu khác Thông tin này được tạo ra từ các phép tương đương giữa các nguồn dữ liệu và các ontologies Điều này cho phép... mục 3 trong đó thực hiện câu truy vấn sử dụng các bước xóa, rút gọn và đổi tên trong R1 → R2 24 C KẾT LUẬN - Thuật toán chuyển đổi lược đồ cho phép sử dụng các phương pháp kết nối nhiều loại lược đồ(sử dụng ontologies, semantic được cung cấp trong RDF, data-mining), có thể xem chúng là đầu vào của thuật toán tích hợp lược đồ Đóng góp chính của công việc được trình bày ở đây là tích hợp tự động dữ liệu. .. thiết lập, trong đó một lược đồ tổng thể GS được cho trước và các lược đồ nguồn dữ liệu phải phù hợp với nó, không cần thiết phải duy trì lượng thông tin của chúng Thuật toán làm việc theo hai phase, trong growing phase, GS được duyệt và mỗi cấu trúc không hiển thị trong lược đồ nguồn dữ liệu Si được chèn vào Trong shringking phase mỗi lược đồ Si được duyệt và và bất kỳ một cấu trúc không có trong lược... ở trên giả sử các element trong S 1 và S2 có tên duy nhất Tổng quát chúng ta có thể gặp các trường hợp sau: 12 a) Một element trong S1 có nhiều elementname nhưng trong S2 có một elementname b) Một element trong S2 có nhiều elementname nhưng trong S1 có một elementname c) Một element trong S1 có nhiều elementname và một element trong S2 có nhiều elenmentname  Đối với trường hợp a: Thuật toán cần đưa

Ngày đăng: 26/04/2013, 10:40

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan