Luận văn ThS: Tích hợp CSDL quan hệ và XML - Đại học Công nghệ, ĐHQGHN

Luận văn thạc sĩ: Tích hợp hệ thống CSDL quan hệ và XML. Nghiên cứu chuyên sâu ngành Công nghệ Thông tin, mã số 1 01 10. Tải luận văn THS ngay!

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Luận văn thạc sĩ

2007

73
1
0

Phí lưu trữ

30 Point

Mục lục chi tiết

MỞ ĐẦU

1. CHƯƠNG 1: TỔNG QUAN VỀ XML VÀ CƠ SỞ DỮ LIỆU QUAN HỆ

1.1. Tổng quan về XML

1.1.1. Giới thiệu công nghệ XML

1.1.2. Cấu trúc tài liệu XML

1.1.2.1. Tài liệu XML
1.1.2.2. Cấu trúc của tài liệu XML
1.1.2.3. Các thành phần cơ bản trong tài liệu XML
1.1.2.4. Cấu trúc tài liệu hợp khuôn dạng
1.1.2.5. Định nghĩa kiểu tư liệu DTD
1.1.2.6. Bảng định kiểu CSS
1.1.2.7. Mô hình DOM
1.1.2.8. Phân tích tài liệu XML theo mô hình DOM
1.1.2.9. XLINK và XPOINTER

1.2. Cơ sở dữ liệu quan hệ

1.2.1. Cấu trúc cơ sở dữ liệu quan hệ

1.2.2. Ràng buộc toàn vẹn trên một CSDL quan hệ

1.2.2.1. Các yếu tố của ràng buộc toàn vẹn
1.2.2.2. Chuẩn hoá một CSDL quan hệ

2. CHƯƠNG 2: TÍCH HỢP CÁC HỆ THỐNG CSDL QUAN HỆ VÀ XML

2.1. Phương pháp luận

2.1.1. Đối sánh nội dung của một CSDL quan hệ và một tài liệu XML

2.1.2. Cấu trúc và kiểu cơ chế của một tài liệu XML và một lược đồ CSDL quan hệ

2.1.3. Tên duy nhất

2.1.4. Các giá trị rỗng và các giá trị mặc định

2.2. Chuyển một tài liệu XML sang một CSDL quan hệ

2.3. Chuyển một CSDL quan hệ sang một tài liệu XML

2.3.1. Phi chuẩn các lược đồ quan hệ

2.3.2. Kết nối các CSDL đã phi chuẩn

2.3.3. Ánh xạ CSDL quan hệ đã kết nối thành một DOM chính để chuyển thành tài liệu XML

3. CHƯƠNG 3: CÀI ĐẶT THUẬT TOÁN TÍCH HỢP CÁC HỆ THỐNG CSDL QUAN HỆ - VÀ XML

3.1. Đọc tài liệu XML dưới dạng sơ đồ hình cây

3.2. Hiển thị tài liệu XML dưới dạng bảng

3.3. Chuyển một CSDL quan hệ sang một tài liệu XML

3.3.1. Cài đặt thuật toán

3.3.2. Kết quả - đánh giá

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Về Tích Hợp CSDL Quan Hệ và XML Luận văn ThS CNTT

Ngày nay, với sự bùng nổ của thông tin, số lượng thông tin trên Internet ngày càng nhiều. Các Cơ sở dữ liệu quan hệ chiếm ưu thế trong việc lưu trữ nội dung của các website. Cùng lúc đó, ngôn ngữ Extensible Markup Language (XML) nhanh chóng chiếm ưu thế trong những website sử dụng văn bản siêu liên kết. Do đó, sự tích hợp CSDL quan hệXML là chủ đề quan trọng. Mục đích là mong muốn tất cả các dữ liệu cùng với các chương trình trong tương lai sẽ tích hợp và hiểu nhau hơn thông qua XML. Trong giai đoạn đầu, hầu hết các trang web đều được viết bằng ngôn ngữ định dạng dữ liệu thông qua các cặp thẻ đặc biệt trong tệp tin văn bản HTML. Với lượng thông tin khổng lồ và không ngừng tăng của Web, cùng với thị hiếu và nhu cầu sử dụng của người dùng ngày càng cao thì HTML không đủ để đáp ứng. Ngôn ngữ XML đã ra đời, với những tính năng nổi trội của mình, XML đã giúp cho việc quản lý, trình bày và tổ chức thông tin trên Web thông qua các cơ sở dữ liệu được dễ dàng. Trên thực tế, công nghệ XML đã và đang được người sử dụng ưa thích bởi sự tích hợp dễ dàng của nó với các cơ sở dữ liệu quan hệ. Để giải quyết vấn đề này, cần tìm hiểu rõ về XML và mô hình DOM. Luận văn này trình bày tổng quan về XMLcơ sở dữ liệu quan hệ, giới thiệu phương pháp luận chuyển đổi giữa XMLCSDL quan hệ, đồng thời đưa ra thuật toán tích hợp và cài đặt bằng ngôn ngữ lập trình Java.

1.1. Giới thiệu về XML và vai trò trong tích hợp dữ liệu

Ngôn ngữ XML (Extensible Markup Language) là ngôn ngữ được định nghĩa bởi tổ chức mạng toàn cầu (World Wide Web Consortium- W3C). XML cho phép ta tạo nội dung của các trang Web rất đẹp.Trong ngôn ngữ XML, các cặp thẻ được sử dụng để định nghĩa và khai báo cấu trúc dữ liệu và được định nghĩa bởi người dùng. Nhờ khả năng tự định nghĩa các thẻ cũng như khả năng cho phép định nghĩa và khai báo cấu trúc dữ liệu mà ngôn ngữ XML trở thành ngôn ngữ rất cần cho công nghệ Internet và các ứng dụng mạng ngày nay. Sự kết hợp giữa XML với định dạng CSS (Cascade Style Sheet) hay XSL (Extensible Style Language) giúp cho việc định dạng dữ liệu hiệu quả hơn rất nhiều so với định dạng nhị phân [1]. Ngoài ra, khả năng được coi là mạnh nhất của XML đó là khả năng có thể tạo ra các ngôn ngữ định dạng tuỳ biến. XML là một ngôn ngữ đòi hỏi tính chính xác cú pháp của ngôn ngữ rất cao. Trình duyệt không chấp nhận một tài liệu XML viết sai cú pháp.

1.2. Tổng quan về Cơ sở dữ liệu quan hệ và các khái niệm cơ bản

Một cơ sở dữ liệu quan hệ là một tập của một hoặc nhiều quan hệ, trong đó mỗi quan hệ là một bảng hai chiều bao gồm các cột và các hàng. Bảng dữ liệu chính là hình thức thể hiện cụ thể của kiểu thực thể khi chúng ta xây dựng cơ sở dữ liệu, bảng dữ liệu được sử dụng để lưu dữ liệu về các thực thể trong lớp thực thể đó. Như vậy, bảng dữ liệu là một tập các bộ dữ liệu, hay bản ghi dữ liệu, mỗi bộ có cùng một số lượng thuộc tính như nhau nhưng có thể khác nhau về giá trị. Một bảng dữ liệu được đặc trưng bởi một tên cụ thể, gọi là tên quan hệ. Mỗi cột trong bảng tương ứng với một thuộc tính trong quan hệ, được đặt tên duy nhất (gọi là tên trường). Mỗi dòng trong bảng tương ứng với một bộ của quan hệ, một bộ là một danh sách các giá trị có thứ tự (tương ứng thứ tự các cột trong bảng).

II. Thách Thức Trong Tích Hợp CSDL và XML Phân Tích Chi Tiết

Việc tích hợp cơ sở dữ liệuXML đặt ra nhiều thách thức, đặc biệt trong việc đảm bảo tính toàn vẹn và hiệu năng của hệ thống. Sự khác biệt về cấu trúc và kiểu dữ liệu giữa CSDL quan hệXML đòi hỏi các phương pháp chuyển đổi phức tạp. Bên cạnh đó, việc lưu trữ và truy vấn dữ liệu XML trong CSDL quan hệ cần phải được tối ưu hóa để đảm bảo hiệu năng. Các thách thức về bảo mật và quản lý phiên bản cũng cần được xem xét. Ngoài ra, cần có các công cụ và kỹ thuật hỗ trợ việc tích hợp một cách hiệu quả.

2.1. Vấn đề về chuyển đổi dữ liệu giữa XML và CSDL Quan hệ

Việc chuyển đổi dữ liệu giữa XMLCSDL quan hệ là một thách thức lớn do sự khác biệt về cấu trúc và kiểu dữ liệu. CSDL quan hệ sử dụng cấu trúc bảng với các hàng và cột, trong khi XML sử dụng cấu trúc cây phân cấp. Việc ánh xạ các phần tử và thuộc tính XML vào các bảng và cột trong CSDL quan hệ đòi hỏi các quy tắc ánh xạ phức tạp. Các kiểu dữ liệu trong XMLCSDL quan hệ cũng có thể khác nhau, đòi hỏi việc chuyển đổi và xử lý dữ liệu phù hợp. Quá trình chuyển đổi cần đảm bảo tính toàn vẹn và không mất mát dữ liệu.

2.2. Thách thức về Hiệu năng và Bảo mật trong Tích Hợp

Việc tích hợp CSDL quan hệXML có thể ảnh hưởng đến hiệu năng của hệ thống, đặc biệt khi truy vấn dữ liệu XML được lưu trữ trong CSDL quan hệ. Việc tối ưu hóa truy vấn và sử dụng các chỉ mục phù hợp là rất quan trọng để đảm bảo hiệu năng tốt. Các vấn đề về bảo mật cũng cần được xem xét, đặc biệt khi dữ liệu XML chứa thông tin nhạy cảm. Việc kiểm soát truy cập và mã hóa dữ liệu có thể được sử dụng để bảo vệ dữ liệu XML. Ngoài ra, cần có các biện pháp để ngăn chặn các tấn công XML, chẳng hạn như tấn công XML injection.

III. Phương Pháp Tích Hợp Chuyển Đổi XML Sang CSDL Quan Hệ

Có nhiều phương pháp tích hợp XMLCSDL quan hệ. Một phương pháp phổ biến là sử dụng mô hình đối tượng tài liệu DOM để phân tích tài liệu XMLchuyển đổi nó thành các bảng trong CSDL quan hệ. Phương pháp này cho phép ánh xạ trực tiếp các phần tử và thuộc tính XML vào các cột trong bảng. Một phương pháp khác là sử dụng XML Schema để định nghĩa cấu trúc của tài liệu XML và tự động tạo các bảng tương ứng trong CSDL quan hệ. Phương pháp này giúp đảm bảo tính nhất quán và toàn vẹn của dữ liệu. Ngoài ra, có thể sử dụng các công cụ và thư viện hỗ trợ việc tích hợp XMLCSDL quan hệ.

3.1. Sử dụng DOM để phân tích và chuyển đổi XML

Mô hình đối tượng tài liệu DOM là một giao diện lập trình ứng dụng (API) cho phép các chương trình truy cập và thao tác với nội dung, cấu trúc và kiểu dáng của các tài liệu XML. Với DOM, tài liệu XML được biểu diễn dưới dạng một cây phân cấp, trong đó mỗi nút đại diện cho một phần tử, thuộc tính hoặc văn bản. Các chương trình có thể sử dụng DOM để duyệt cây, truy cập và thay đổi các nút, và chuyển đổi dữ liệu XML thành các định dạng khác. Trong tích hợp XMLCSDL quan hệ, DOM có thể được sử dụng để phân tích tài liệu XML và trích xuất dữ liệu để lưu trữ trong CSDL quan hệ.

3.2. Ánh xạ XML Schema vào Lược đồ CSDL quan hệ

Việc ánh xạ XML Schema vào lược đồ CSDL quan hệ là một phương pháp hiệu quả để tự động tạo các bảng tương ứng trong CSDL quan hệ dựa trên cấu trúc của tài liệu XML. XML Schema định nghĩa các phần tử, thuộc tính và kiểu dữ liệu trong tài liệu XML, cung cấp thông tin cần thiết để tạo các bảng và cột phù hợp trong CSDL quan hệ. Việc ánh xạ có thể được thực hiện bằng các công cụ hoặc thư viện hỗ trợ, giúp giảm thiểu công sức và đảm bảo tính nhất quán của dữ liệu.

IV. Phương Pháp Tích Hợp Chuyển Đổi CSDL Quan Hệ Sang XML

Để chuyển đổi một CSDL quan hệ sang XML, cần xác định cấu trúc XML phù hợp để biểu diễn dữ liệu trong CSDL. Các bảng trong CSDL có thể được ánh xạ thành các phần tử XML, và các cột có thể được ánh xạ thành các thuộc tính hoặc phần tử con. Các mối quan hệ giữa các bảng có thể được biểu diễn bằng các phần tử lồng nhau hoặc các thuộc tính tham chiếu. Quá trình chuyển đổi cần đảm bảo rằng dữ liệu được biểu diễn một cách chính xác và đầy đủ trong XML. Có thể sử dụng các công cụ và thư viện để tự động hóa quá trình chuyển đổi.

4.1. Xác định cấu trúc XML phù hợp để biểu diễn dữ liệu

Để chuyển đổi CSDL quan hệ sang XML, bước đầu tiên là xác định cấu trúc XML phù hợp để biểu diễn dữ liệu trong CSDL. Cấu trúc XML cần phản ánh cấu trúc và mối quan hệ của các bảng và cột trong CSDL. Có thể sử dụng các phương pháp khác nhau để xác định cấu trúc XML, chẳng hạn như sử dụng XML Schema hoặc tạo cấu trúc XML thủ công. Quyết định lựa chọn cấu trúc XML phụ thuộc vào yêu cầu cụ thể của ứng dụng.

4.2. Ánh xạ Bảng và cột CSDL vào các thành phần XML

Sau khi xác định cấu trúc XML, cần ánh xạ các bảng và cột trong CSDL vào các thành phần XML. Các bảng có thể được ánh xạ thành các phần tử XML gốc, và các cột có thể được ánh xạ thành các thuộc tính hoặc phần tử con của các phần tử bảng. Các mối quan hệ giữa các bảng có thể được biểu diễn bằng các phần tử lồng nhau hoặc các thuộc tính tham chiếu. Việc ánh xạ cần đảm bảo rằng dữ liệu được biểu diễn một cách chính xác và đầy đủ trong XML.

V. Ứng Dụng Thực Tiễn Tích Hợp CSDL và XML Case Study

Việc tích hợp CSDLXML có nhiều ứng dụng thực tiễn. Ví dụ, có thể sử dụng XML để trao đổi dữ liệu giữa các hệ thống khác nhau, ngay cả khi chúng sử dụng các CSDL khác nhau. XML cũng có thể được sử dụng để lưu trữ dữ liệu phức tạp, chẳng hạn như tài liệu hoặc cấu hình. Ngoài ra, XML có thể được sử dụng để tạo các ứng dụng web động, trong đó dữ liệu từ CSDL được chuyển đổi thành XML và hiển thị trên trang web.

5.1. Trao đổi dữ liệu giữa các hệ thống sử dụng XML

Một ứng dụng quan trọng của việc tích hợp CSDLXML là trao đổi dữ liệu giữa các hệ thống khác nhau. XML cung cấp một định dạng dữ liệu chuẩn, cho phép các hệ thống khác nhau chia sẻ dữ liệu một cách dễ dàng, ngay cả khi chúng sử dụng các CSDL khác nhau. Việc sử dụng XML giúp giảm thiểu sự phụ thuộc vào các định dạng dữ liệu độc quyền và tăng tính tương tác giữa các hệ thống.

5.2. Lưu trữ cấu hình và tài liệu phức tạp với XML

XML là một định dạng dữ liệu linh hoạt, cho phép lưu trữ dữ liệu phức tạp, chẳng hạn như cấu hình hoặc tài liệu. Cấu trúc phân cấp của XML giúp dễ dàng biểu diễn các mối quan hệ giữa các thành phần dữ liệu. XML cũng hỗ trợ các kiểu dữ liệu khác nhau, cho phép lưu trữ dữ liệu một cách chính xác và đầy đủ.

VI. Kết Luận và Tương Lai của Tích Hợp CSDL và XML Xu Hướng Mới

Tích hợp CSDLXML là một lĩnh vực quan trọng trong công nghệ thông tin, với nhiều ứng dụng thực tiễn. Các phương pháp và công nghệ tích hợp ngày càng phát triển, giúp đơn giản hóa quá trình chuyển đổi dữ liệu và tăng hiệu năng của hệ thống. Trong tương lai, có thể thấy sự phát triển của các công cụ và thư viện tích hợp tự động, cũng như các phương pháp tích hợp dựa trên trí tuệ nhân tạo. Ngoài ra, việc tích hợp CSDLXML sẽ tiếp tục đóng vai trò quan trọng trong việc xây dựng các hệ thống thông tin phức tạp và phân tán.

6.1. Xu hướng phát triển của các công cụ tích hợp tự động

Trong tương lai, có thể thấy sự phát triển của các công cụ tích hợp tự động, giúp đơn giản hóa quá trình chuyển đổi dữ liệu và giảm thiểu công sức. Các công cụ này có thể tự động phân tích cấu trúc CSDLXML, xác định các quy tắc ánh xạ và tạo mã chuyển đổi tương ứng. Việc sử dụng các công cụ tích hợp tự động giúp tăng tốc quá trình phát triển và giảm thiểu rủi ro.

6.2. Tích hợp dựa trên trí tuệ nhân tạo AI Triển vọng

Việc tích hợp CSDLXML dựa trên trí tuệ nhân tạo (AI) có nhiều triển vọng. AI có thể được sử dụng để tự động học các quy tắc ánh xạ giữa CSDLXML, cũng như để tối ưu hóa quá trình chuyển đổi dữ liệu. AI cũng có thể được sử dụng để phát hiện và sửa lỗi trong quá trình tích hợp. Việc sử dụng AI giúp tăng cường tính linh hoạt và hiệu quả của quá trình tích hợp.

24/09/2025

Trích đoạn nội dung tài liệu

mở đầu bằng khai báo chuẩn XML, tiếp theo W3C sử dụng tiếp đầu ngữ xsd: để tham chiếu đến không gian tên của lược đồ, theo cú pháp sau: TIEU LUAN MOI download : skknchat@gmail.com 17 <?xml version =”1.0” ?> <xsd:schema xmlns:xsd = “http:// www. </xsd:schema> Tiếp theo là khai báo các phần tử và kiểu dữ liệu: Đối với kiểu phần tử phức hợp  sử dụng phần tử khai báo <xsd:complextType>, một phần tử phức hợp thường chứa các khai báo phần tử con, tham chiếu đến các phần tử khác và khai báo các thuộc tính. Phần tử được khai báo bằng chỉ thị <xsd:element>, khai báo thuộc tính bằng chỉ thị <xsd:attribute>. Đối với kiểu phần tử đơn giản được khai báo bằng chỉ thị <xsd:simpleType>.

Sau khi định nghĩa kiểu phần tử, ta hoàn toàn có thể khai báo các phần tử sử dụng kiểu vừa tạo. Ví dụ: Ta có khai báo kiểu phức hợp cho phần tử address <xsd:complexType name = ”address”> <xsd:element name = ”name” type = “xsd:string” /> <xsd:element name = ”street” type = “xsd:string” /> <xsd:element name = ”city” type = “xsd:string” /> <xsd:element name = ”state” type = “xsd:string” /> <xsd:attribute name = ”phone” type = “xsd:string” use =”option”/> </xsd:complexType> Sau đó có thể sử dụng định nghĩa phần tử address cho phần tử <Lender> và <Borrower> để lưu thông tin cá nhân trong tài liệu như sau: <xsd:complexType name =”transactionType”> <xsd:element name=”Lender” type =”address”/> <xsd:element name=”Borrower” type =”address”/> <xsd:element ref=”note” minOccurs =”0”/> <xsd: attribute name =”borrowDate” type=”xsd:date”/> <xsd:complexType> TIEU LUAN MOI download : skknchat@gmail.com 18 Để khai báo kiểu dữ liệu cho các phần tử trong lược đồ ta sử dụng chỉ thị: <xsd:dataType>, trong đó dataType là một trong các kiểu dữ liệu được cho trong bảng sau [1]: Kiểu dữ liệu Ý nghĩa Binary Kiểu dữ liệu nhị phân boolean Kiểu logic byte Kiểu byte century Kiểu thế kỷ (ví dụ 20) date Kiểu ngày decimal Kiểu thập phân double Kiểu số thực 64 – bit ENTITY Kiểu thực thể ENTITIES Kiểu đa thực thể ID Kiểu định danh int, integer Kiểu số nguyên IDREF Kiểu tham chiếu định danh NOTATION Kiểu ghi chú NMTOKEN Kiểu token đơn NMTOKENS Kiểu đa token month Kiểu tháng (ví dụ 4, 6) string Kiểu chuỗi 1. Bảng định kiểu CSS (Cascading Stype Sheet) Bảng định kiểu CSS (Cascading Style Sheet) giống như một tập mẫu (template) quy định các kiểu định dạng cho các phần tử trong XML như các định dạng về font chữ, màu sắc, mầu nền,. TIEU LUAN MOI download : skknchat@gmail.com 19 Bảng định kiểu CSS cũng đã được áp dụng trong tài liệu HTML, tuy nhiên điểm khác biệt chủ yếu giữa việc áp dụng CSS vào HTML với việc áp dụng CSS vào XML là các thẻ trong HTML thì có sẵn thông tin định dạng còn XML thì không có.

Bản chất của CSS là tạo ra một tập mẫu quy định các kiểu định dạng cho các phần tử trong XML (hay các thẻ trong HTML) trong một file tách biệt với tài liệu. Sau đó tập mẫu này được áp dụng vào trong tài liệu XML thông qua chỉ thị xử lý: <?xml-stylesheet type=”text/css” href=”filename.css” ?> Trong đó filename là tên file chứa tập mẫu quy định các định dạng cho các phần tử trong tài liệu, file này có phần mở rộng bắt buộc là .css và có nội dung là các định dạng cho các phần tử trong tài liệu, nội dung định dạng của mỗi phần tử được định nghĩa theo cú pháp: elementName {display:block; attName1: attValue1;…;attNamen:attValuen} Trong đó elementName là tên phần tử cần định dạng, display:block hiển thị thành phần theo cấp khối (bắt đầu ở đầu dòng và thành phần theo sau nó sẽ bắt đầu ở dòng tiếp theo), hoặc display:line hiển thị thành phần theo nội dung. attName là tên thuộc tính, attValue là giá trị của thuộc tính. Nếu muốn gom các thuộc tính định kiểu lại một nhóm (gọi là lớp) thay vì định kiểu cho từng phần tử, ta sử dụng cú pháp sau: .className { attName1: attValue1;…;attNamen:attValuen} Trong đó className là tên lớp và lớp này được sử dụng bên trong phần tử cần định dạng thông qua thuộc tính theo cú pháp <elementName CLASS=”className”> Ví dụ: có tệp tin định dạng format.css sau: TAILIEU{display:block; font-size:24pt; font-weight:bold;color:red} TIEUDE {display: block; font-style:bold; color:blue} .F1{font:12pt/20pt "Arial Black"; color:black; font- style:italic} Và một tài liệu XML có nội dung sau: <?xml version="1.0" standalone="yes"?> TIEU LUAN MOI download : skknchat@gmail.com 20 <?xml-stylesheet type="text/css" href="format.css"?> <TAILIEU> <TIEUDE> Chao mung cac ban den voi XML </TIEUDE> <NOIDUNG class="F1"> Cac ban den voi XML la mot lua chon hoan toan dung dan </NOIDUNG> </TAILIEU> 1.

Mô hình DOM (Document Object Model) Để xử lý một tài liệu XML, W3C định nghĩa tài liệu theo mô hình đối tượng tài liệu DOM (Document Object Model). Theo mô hình này thì một tài liệu XML được tổ chức theo cấu trúc hình cây bao gồm các nút đối tượng, nội dung của mỗi nút (note) trên cây có thể chứa phần tử (element), dữ liệu (text), thuộc tính (attribute),…và các nút con khác. Cụ thể, trong mô hình DOM có các loại nút sau đây [1]: Nút Ý nghĩa Element Phần tử XML Attribute Thuộc tính XML Text Dữ liệu text CDATA section Phân đoạn CDATA Entity reference Tham chiếu thực thể Entity Thực thể Processing Instruction Chỉ thị xử lý Comment Chú thích Document Tài liệu Document Type Kiểu tư liệu Document fragment Đoạn tài liệu Notation Ghi chú TIEU LUAN MOI download : skknchat@gmail.com 21 Mô hình DOM được W3C định nghĩa theo nhiều cấp độ khác nhau. Cụ thể là các cấp độ [10]:  Level 0: Là đặc tả DOM không chính thức và được áp dụng cho các trình duyệt trước đây như Netscape navigator 3.

 Level 1: Tập trung vào sự kết hợp giữa tài liệu HTML và XML.  Level 2: Hỗ trợ không gian tên XML, khung nhìn có lọc (filtered views) và các sự kiện DOM.  Level 3: Nâng cao các khả năng của DOM với việc cho phép nạp, xử lý, lưu lại mô hình nội dung tài liệu. Ví dụ: Cho một tài liệu XML <?xml version="1.0" standalone="yes"?> <TAILIEU> <SACHKHTN> <TIEUDE1> Sach khoa hoc tu nhien </TIEUDE1> <NOIDUNG1> Chuc cac ban nghien cuu thanh cong linh vuc khoa hoc tu nhien </NOIDUNG1> </SACHKHTN> <SACHKHXH > <TIEUDE2> Sach khoa hoc xa hoi </TIEUDE2> <NOIDUNG2> Chuc cac ban nghien cuu thanh cong linh vuc khoa hoc xa hoi </NOIDUNG2> </SACHKHXH> </TAILIEU> TIEU LUAN MOI download : skknchat@gmail.com 22 Theo mô hình DOM, tài liêu XML trên được tổ chức theo cấu trúc hình cây như sau: TAILIEU SACHKHT SACHKHX N H TIEUDE1 NOIDUNG1 TIEUDE2 NOIDUNG2 Sach khoa Chuc cac ban Sach khoa Chuc cac ban hoc tu nhien nghien cuu thanh hoc xa hoi nghien cuu thanh cong linh vuc cong linh vuc khoa khoa hoc tu nhien hoc xa hoi Hình 1.2: Cấu trúc cây tài liệu XML 1.

Phân tích tài liệu XML theo mô hình DOM W3C định nghĩa tài liệu XML theo mô hình DOM (Document Object Model). Về cơ bản DOM là một giao diện trình ứng dụng API (Application Program Interface) không phụ thuộc ngôn ngữ và chương trình, cho phép các chương trình và các kịch bản truy cập và cập nhật động nội dung, cấu trúc và kiểu của các tài liệu XML cũng như HTML. Với mô hình DOM, một tài liệu XML có thể được phân tích: tạo, duyệt, thêm, loại bỏ, thay đổi các phần tử thông qua các ngôn ngữ như: Java, JavaScript, Visual Studio. Song dù sử dụng ngôn ngữ nào để phân tích thì ta cũng phải sử dụng tới các phương thức mà DOM cung cấp được liệt kê trong bảng sau [11]: TIEU LUAN MOI download : skknchat@gmail.com 23 Phương thức Ý nghĩa documentElement Lấy về nút gốc của tài liệu DOM parentNode Lấy nút cha của nút hiện tại firstChild Lấy nút con đầu tiên previousChild Lấy nút con trước đó nextChild Lấy nút con kế tiếp lastChild Lấy nút con cuối cùng firstSibling Lấy nút cùng cấp đầu tiên nextSibling Lấy nút cùng cấp kế tiếp previousSibling Lấy nút cùng cấp trước đó lastSibling Lấy nút cùng cấp cuối cùng getElementsByTagName Lấy về danh sách các nút Item(i) Truy cập nút thứ i trong danh sách (i=0,1,.) childNodes Trả về danh sách các nút trong tài liệu docType Trả về kiểu của nút gốc length Trả về các nút trong danh sách các nút nodeName Trả về tên của một nút noteValue Trả về giá trị của một nút noteType Xác định kiểu dữ liệu của một nút createElement() Khởi tạo một thành phần mới trong tài liệu createTextNode() Khởi tạo dữ liệu text cho một nút Ví dụ: Phân tích tài liệu XML dựa vào mô hình DOM sử dụng Javascript <HTML> <HEAD> <TITLE> Doc gia tri cac phan tu XML </TITLE> <XML ID="viduXML" SRC="vidu.xml"></XML> TIEU LUAN MOI download : skknchat@gmail.com 24 <SCRIPT LANGUAGE="JavaScript"> function readXMLDocument() {var xmldoc,tailieuNode,tieudeNode, noidungNode, first_nameNode,last_nameNode var outputText tailieuNode=xmldoc.documentElement tieudeNode=tailieuNode.firstChild noidungNode=tailieuNode.lastChild first_nameNode=tailieuNode.nodeValue last_nameNode=noidungNode.nodeValue outputText="second name:" +last_nameNode messageDIV.innerHTML=outputText } </SCRIPT> </HEAD> <BODY> <CENTER> <H1> Read Value XML with elements </H1> <INPUT TYPE="BUTTON" VALUE="Get elements XML" ONCLICK="readXMLDocument()"> <P> <DIV ID="messageDIV"></DIV> </CENTER> </BODY> </HTML> Trong đó nội dung tài liệu XML là tệp vidu.xml như sau: <?xml version="1.0" standalone="yes"?> <?xml-stylesheet type="text/css" href="dinhdang.css"?> <TAILIEU> <TIEUDE> Sach khoa hoc </TIEUDE> <NOIDUNG> Khoa hoc cong nghe </NOIDUNG> </TAILIEU> TIEU LUAN MOI download : skknchat@gmail.

XPATH Như chúng ta biết, hệ điều hành tổ chức các thư mục và các file trên ổ đĩa cứng theo cấu trúc cây. Khi muốn truy xuất đến một thư mục hay một file nào đó ta thường sử dụng đường dẫn thư mục (theo dạng đường dẫn tuyệt đối hoặc đường dẫn tương đối). Trong một tài liệu XML (được tổ chức theo cấu trúc dạng cây), ta cũng có thể sử dụng khái niệm đường dẫn tương tự như trong hệ điều hành thông qua khái niệm XPATH. XPATH cung cấp một cơ chế tham chiếu đến một thư mục dữ liệu trong tài liệu XML thông qua đường dẫn, hay nó cung cấp một cơ chế tham chiếu đến các nút trong một tài liệu XML theo các dạng sau [1] XPATH Ý nghĩa Ví dụ Dấu chấm “.” Tham chiếu đến nút hiện hành <xsl:value-of select=”.”/> /rootName Là dạng đường dẫn tuyệt đối /AAA cho kết quả là (bắt đầu từ root), kết quả chọn là phần tử được chọn phần tử rootName AAA /rootName[/elementName]n/eN Chọn tất cả các phần tử eName /AAA/BBB/CCC ame cho kết quả là chọn tất cả các phần tử CCC là con của /AAA/BBB //elementName Dạng đường dẫn tương đối (tổng //BBB thể), cho kết quả là chọn tất cả Cho kết quả là chọn các phần tử elementName trong tất cả các phần tử tài liệu BBB //elementName/eName Chọn tất cả các phần tử eName //BBB/CCC trong tài liệu là con của Cho kết quả là chọn elementName tất cả các phần tử CCC là con của TIEU LUAN MOI download : skknchat@gmail.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ