Danh mục

Chuyển đổi hai mô hình dữ liệu XML và quan hệ bằng công cụ HDM

Số trang: 13      Loại file: pdf      Dung lượng: 238.07 KB      Lượt xem: 14      Lượt tải: 0    
Hoai.2512

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Internet ra đời đáp ứng việc trao đổi thông tin ngày càng cao của con người, thông tin không còn dừng lại ở các thông điệp đơn giản mà phải được trích xuất từ ngữ nghĩa của nó. Việc chuyển đổi các mô hình dữ liệu để sử dụng trên môi trường Internet ngày càng được quan tâm, đặc biệt trong các lĩnh vực thương mại điện tử và khai phá dữ liệu. Bài báo này trình bày một phương pháp chuyển đổi dữ liệu XML, một ngôn ngữ thường được sử dụng trong các ứng dụng web, sang dữ liệu quan hệ và ngược lại bằng công cụ HDM (Hypergraph Data Model).
Nội dung trích xuất từ tài liệu:
Chuyển đổi hai mô hình dữ liệu XML và quan hệ bằng công cụ HDM TẠP CHÍ KHOA HỌC, Đại học Huế, tập 73, số 4, năm 2012 CHUYỂN ĐỔI HAI MÔ HÌNH DỮ LIỆU XML VÀ QUAN HỆ BẰNG CÔNG CỤ HDM Nguyễn Mậu Hân1, Trần Đình Toàn2, 1 Khoa Công nghệ Thông tin, Đại học Khoa học-Đại học Huế 2 Trường Đại học Công nghiệp Thực phẩm TP HCM Tóm tắt. Internet ra đời đáp ứng việc trao đổi thông tin ngày càng cao của con người, thông tin không còn dừng lại ở các thông điệp đơn giản mà phải được trích xuất từ ngữ nghĩa của nó. Việc chuyển đổi các mô hình dữ liệu để sử dụng trên môi trường Internet ngày càng được quan tâm, đặc biệt trong các lĩnh vực thương mại điện tử và khai phá dữ liệu. Bài báo này trình bày một phương pháp chuyển đổi dữ liệu XML, một ngôn ngữ thường được sử dụng trong các ứng dụng web, sang dữ liệu quan hệ và ngược lại bằng công cụ HDM (Hypergraph Data Model). 1. Giới thiệu XML như một ngôn ngữ làm cầu nối chuyển đổi dữ liệu cho các mô hình dữ liệu khác nhau để phục vụ cho các ứng dụng trên môi trường Internet. Về cơ bản, cấu trúc của tài liệu XML và CSDL quan hệ là hoàn toàn khác nhau. Để xác định được sự tương quan giữa chúng là một công việc phức tạp, đòi hỏi phải qua nhiều bước phân tích, giữa một bên là dữ liệu lồng nhau và một bên là dữ liệu phẳng. Hiện nay, có một số phương pháp chuyển đổi dữ liệu từ XML sang quan hệ và ngược lại như phương pháp XML Schema, DOM,... Tuy nhiên, các phương pháp này còn hạn chế trong việc chuyển đổi các ràng buộc dữ liệu. Ở đây, chúng tôi lại sử dụng mô hình HDM trung gian để thực hiện việc chuyển đổi dữ liệu giữa hai mô hình XML và quan hệ nhằm đảm bảo sự toàn vẹn dữ liệu cũng như các ràng buộc dữ liệu vốn yêu cầu một cách nghiêm ngặt trong mô hình dữ liệu quan hệ. 2. Mô hình dữ liệu HDM HDM là một ngôn ngữ mô hình bậc thấp được sử dụng để tạo ra mô hình dữ liệu từ nhiều nguồn dữ liệu khác nhau trong đó bao gồm cả dữ liệu quan hệ và XML. HDM dựa vào một cấu trúc dữ liệu gồm những nút và cạnh của một đồ thị cùng với những ràng buộc tạo thành một mô hình dữ liệu. Một lược đồ HDM là bộ ba S = (Nodes, Edges, Constraints). Trong đó, Nodes, Edges định nghĩa một đồ thị có nhãn, lồng nhau, có hướng. Constraints là một tập hợp các ràng buộc, cụ thể là các truy vấn đại số Boolean qua S, Nodes được xác định bởi một tên duy nhất, Edges và Constraints thì có tên tùy chọn. 69 2.1. Ngôn ngữ bậc cao trong HDM Cũng như các mô hình dữ liệu khác, HDM được xây dựng từ hai cấu trúc: cấu trúc mở rộng (extensional constructs) và cấu trúc ràng buộc (constraint constructs) [3]. Cấu trúc mở rộng là một tập hợp những giá trị dữ liệu trong một miền đã cho. Cấu trúc này có ba lớp: - Nodal: Ánh xạ đến các nút trong HDM. - Linking: Phạm vi của một cấu trúc liên kết là một tập con của kết quả các thành phần mà nó liên kết. Cấu trúc liên kết không thể tồn tại độc lập, nó ánh xạ đến các cạnh trong HDM. - Nodal-Linking: Là cấu trúc Nodal và chỉ tồn tại khi có các thành phần khác nối đến nó. Ánh xạ vào HDM là các nút và cạnh. Cấu trúc ràng buộc là những hạn chế trên phạm vi của các cấu trúc mở rộng, chúng có thể được sử dụng để thể hiện cấu trúc lược đồ dữ liệu trong một mô hình dữ liệu. Đồng thời các ràng buộc trực tiếp sẽ được hỗ trợ trong HDM. Bảng dưới cho thấy cấu trúc quan hệ được thể hiện trong HDM. Bảng 1. Định nghĩa cấu trúc mô hình quan hệ trong HDM Cấu trúc quan hệ Construct relation (R) Class nodal Scheme Thể hiện trong HDM Node Construct attribute (A) Node Class Edge nodal-linking constraint Scheme Links Cons if (n=null) Then makeCard(,{0,1},{1..N }) else makeCard(,{1},{1..N }) Cons x   x  t Construct primary key(P) Links , ..., Class constraint Cons x   x = Scheme   ...   70 Construct foreign key(F) Links ,..., Class Cons   ... constraint Scheme    Để định nghĩa cấu trúc của một mô hình dữ liệu mới M trong HDM chúng ta cần định nghĩa các biến đổi sau cho M vào trong HDM: - Đối với mỗi cấu trúc trong M ta thực hiện một phép biến đổi add để thêm các nút, cạnh hoặc ràng buộc tương đương vào lược đồ HDM. Biến đổi này có 0 hoặc một biến đổi addNode HDM, toán hạng nhận từ trường Node trong định nghĩa cấu trúc sẽ đi theo bởi 0 hoặc một biến đổi addEdge lấy từ trường Edge. Cuối cùng, một dãy của 0 hoặc nhiều biến đổi addConstraint lấy từ trường Constraint được thực hiện. - Để đảo nghịch biến đổi add như đã nói ở trên chúng ta cần một biến đổi del cho mỗi cấu trúc bên trong M của nó. Như vậy, sẽ có một dãy những biến đổi HDM delConstraint đi theo có thể là delEdge hoặc delNode. - Đối với những cấu trúc có một tên là một xâu ký tự, chúng ta thực hiện biến đổi rename, là các biến đổi được định nghĩa dưới dạng của biến đổi HDM: renameNode và renameEdge. - Một thể hiện M trong HDM có thể tự động nhận dạng bằng cách thêm vào một hoặc nhiều biến đổi nguyên thủy như đã định nghĩa ở trên. 2.2. Cấu trúc XML Nodal trong HDM Trong lược đồ XML mỗi phần tử (element) đóng vai trò là một cấu trúc nodal. Cấu trúc Nodal sẽ ánh xạ trực tiếp vào các nút của HDM. Khi giải thuật tìm kiếm kiểu của element tìm thấy element đó thật sự chỉ là một tham chiếu tới element khác thì element tham chiếu sẽ được thay thế bởi element đã tham chiếu. Một khi các tham chiếu đã được thay thế thì có thể giao tiếp với định nghĩa kiểu của element đó. Định nghĩa kiểu có thể là không tên, trong trường hợp element không có thuộc tính type, lúc này kiểu của nó là phần nội dung khai báo của element. Lúc này giải thuật chia các element phù hợp với các simpleType (chẳng hạn kiểu cơ sở XSD), hoặc các simpleType được khai báo hoặc không tên, hoặc của complexType. Những element và attribute kiểu simpleType được thêm vào như những nút của HDM cũng như các ràng buộc tương ứng. 2.3. Cấu trúc XML Linking trong HDM Trong lược đồ XML, sự lồng nhau của các element đóng vai trò là quan hệ 71 linking. Cấu trúc linking ánh xạ trực tiếp đến cạnh của HDM. Sự lồng nhau này thể hiện trong các định nghĩa kiểu complexType đã thảo luận ở ...

Tài liệu được xem nhiều: