I. Xu hướng chung:
Ngày nay, thương mại điện tử đã trởnên rất phổbiến.Với ưu điểm là tiết kiệm
chi phí marketing cũng nhưtạo sựthuận lợi cho người dùng có nhu cầu trang
bị đồdùng cho mình. Thương mại điện tửhầu nhưhiện diện ởkhắp nơi trên
thếgiới đặc biệt là ởnhững quốc gia có nền kinh tếphát triển.
Tại Việt Nam những năm gần đây thì các doanh nghiệp vừa và nhỏhầu như
đều tiếp thịsản phẩm của mình cũng nhưbán hàng trực tuyến trên internet.
II. Hình thức thương mại điện tử:
1. Khách hàng từmột máy tính tại một nơi nào đó, điền những thông tin thanh
toán và địa chỉliên hệvào đơn đặt hàng (Order Form) của Website bán
hàng (còn gọi là Website thương mại điện tử). Doanh nghiệp nhận được
yêu cầu mua hàng hoá hay dịch vụcủa khách hàng và phản hồi xác nhận
tóm tắt lại những thông tin cần thiết những mặt hàng đã chọn, địa chỉgiao
nhận và sốphiếu đặt hàng.
2. Khách hàng kiểm tra lại các thông tin và kích (click) vào nút (button) "đặt
hàng", từbàn phím hay chuột (mouse) của máy tính, đểgởi thông tin trảvề
cho doanh nghiệp.
3. Doanh nghiệp nhận và lưu trữthông tin đặt hàng đồng thời chuyển tiếp
thông tin thanh toán (sốthẻtín dụng, ngày đáo hạn, chủthẻ.) đã được mã
hoá đến máy chủ(Server, thiết bịxửlý dữliệu) của Trung tâm cung cấp
dịch vụxửlý thẻtrên mạng Internet. Với quá trình mã hóa các thông tin
thanh toán của khách hàng được bảo mật an toàn nhằm chống gian lận
trong các giao dịch (chẳng hạn doanh nghiệp sẽkhông biết được thông tin
vềthẻtín dụng của khách hàng).
4. Khi Trung tâm Xửlý thẻtín dụng nhận được thông tin thanh toán, sẽgiải
mã thông tin và xửlý giao dịch đằng sau bức tường lửa (FireWall) và tách
- 2 -rời mạng Internet (off the Internet), nhằm mục đích bảo mật tuyệt đối cho
các giao dịch thương mại, định dạng lại giao dịch và chuyển tiếp thông tin
thanh toán đến ngân hàng của doanh nghiệp (Acquirer) theo một đường dây
thuê bao riêng (một đường truyền sốliệu riêng biệt).
5. Ngân hàng của doanh nghiệp gởi thông điệp điện tửyêu cầu thanh toán
(authorization request) đến Ngân hàng hoặc Công ty cung cấp thẻtín dụng
của khách hàng (Issuer). Và tổchức tài chính này sẽphản hồi là đồng ý
hoặc từchối thanh toán đến trung tâm xửlý thẻtín dụng trên mạng Internet.
6. Trung tâm xửlý thẻtín dụng trên Internet sẽtiếp tục chuyển tiếp những
thông tin phản hồi trên đến doanh nghiệp, và tùy theo đó doanh nghiệp
thông báo cho khách hàng được rõ là đơn đặt hàng sẽ được thực hiện hay
không.
7. Toàn bộthời gian thực hiện một giao dịch qua mạng từbước 1 -> bước 6
được xửlý trong khoảng 15 - 20 giây.
98 trang |
Chia sẻ: tuandn | Lượt xem: 4139 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Luận văn Tìm hiểu về XML và XSLT Web 2.0 ứng dụng trong thương mại điện tử, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
- 1 -
PHẦN I: TỔNG QUAN
I. Xu hướng chung:
Ngày nay, thương mại điện tử đã trở nên rất phổ biến.Với ưu điểm là tiết kiệm
chi phí marketing cũng như tạo sự thuận lợi cho người dùng có nhu cầu trang
bị đồ dùng cho mình. Thương mại điện tử hầu như hiện diện ở khắp nơi trên
thế giới đặc biệt là ở những quốc gia có nền kinh tế phát triển.
Tại Việt Nam những năm gần đây thì các doanh nghiệp vừa và nhỏ hầu như
đều tiếp thị sản phẩm của mình cũng như bán hàng trực tuyến trên internet.
II. Hình thức thương mại điện tử:
1. Khách hàng từ một máy tính tại một nơi nào đó, điền những thông tin thanh
toán và địa chỉ liên hệ vào đơn đặt hàng (Order Form) của Website bán
hàng (còn gọi là Website thương mại điện tử). Doanh nghiệp nhận được
yêu cầu mua hàng hoá hay dịch vụ của khách hàng và phản hồi xác nhận
tóm tắt lại những thông tin cần thiết những mặt hàng đã chọn, địa chỉ giao
nhận và số phiếu đặt hàng...
2. Khách hàng kiểm tra lại các thông tin và kích (click) vào nút (button) "đặt
hàng", từ bàn phím hay chuột (mouse) của máy tính, để gởi thông tin trả về
cho doanh nghiệp.
3. Doanh nghiệp nhận và lưu trữ thông tin đặt hàng đồng thời chuyển tiếp
thông tin thanh toán (số thẻ tín dụng, ngày đáo hạn, chủ thẻ ...) đã được mã
hoá đến máy chủ (Server, thiết bị xử lý dữ liệu) của Trung tâm cung cấp
dịch vụ xử lý thẻ trên mạng Internet. Với quá trình mã hóa các thông tin
thanh toán của khách hàng được bảo mật an toàn nhằm chống gian lận
trong các giao dịch (chẳng hạn doanh nghiệp sẽ không biết được thông tin
về thẻ tín dụng của khách hàng).
4. Khi Trung tâm Xử lý thẻ tín dụng nhận được thông tin thanh toán, sẽ giải
mã thông tin và xử lý giao dịch đằng sau bức tường lửa (FireWall) và tách
- 2 -
rời mạng Internet (off the Internet), nhằm mục đích bảo mật tuyệt đối cho
các giao dịch thương mại, định dạng lại giao dịch và chuyển tiếp thông tin
thanh toán đến ngân hàng của doanh nghiệp (Acquirer) theo một đường dây
thuê bao riêng (một đường truyền số liệu riêng biệt).
5. Ngân hàng của doanh nghiệp gởi thông điệp điện tử yêu cầu thanh toán
(authorization request) đến Ngân hàng hoặc Công ty cung cấp thẻ tín dụng
của khách hàng (Issuer). Và tổ chức tài chính này sẽ phản hồi là đồng ý
hoặc từ chối thanh toán đến trung tâm xử lý thẻ tín dụng trên mạng Internet.
6. Trung tâm xử lý thẻ tín dụng trên Internet sẽ tiếp tục chuyển tiếp những
thông tin phản hồi trên đến doanh nghiệp, và tùy theo đó doanh nghiệp
thông báo cho khách hàng được rõ là đơn đặt hàng sẽ được thực hiện hay
không.
7. Toàn bộ thời gian thực hiện một giao dịch qua mạng từ bước 1 -> bước 6
được xử lý trong khoảng 15 - 20 giây.
III. Lý do và mục tiêu của đề tài:
Như chúng ta thấy thương mại điện tử ngày trở nên phổ biến và cùng với
những lợi ích mà thương mại điện tử đem lại cho doanh nghiệp và người dùng
như :
1. Thương mại điện tử (TMĐT) giúp cho các doanh nghiệp nắm được thông
tin phong phú về thị trường và đối tác.
2. TMĐT giúp giảm chi phí sản xuất.
3. TMĐT giúp giảm chi phí bán hàng và tiếp thị.
4. TMĐT qua Internet giúp người tiêu dùng và các doanh nghiệp giảm đáng
kể thời gian và chi phí giao dịch.
5. Tạo điều kiện sớm tiếp cận nền kinh tế số hóa.
Nhận thức rõ về những lợi ích mà thương mại điện tử đem lại nên em quyết định tìm hiểu
và nghiên cứu xây dựng một website giơi thiệu và bán sản phẩm trực tuyến trên internet.
- 3 -
IV. Cấu trúc báo cáo:
Từ những mục tiêu và lợi ích trên em đã thực hiện các công việc và kết quả các
công việc được thể hiện trong báo cáo luận văn này theo cấu trúc sau:
Báo cáo luận văn gôm 3 phần:
Phần I .Tổng quan: Xu hướng thương mại điện tử hiện nay nêu lên nhu cầu
thực tế và lý do thực hiện đề tài .
Phần II. Tìm hiểu về XML và XSLT
Chương I. Tìm hiểu về XML và XSLT: Giới thiệu về ngôn ngữ XML đồng
thời cũng giới thiệu sơ lược về hợp khuôn dạng (Well-formed) và tính hợp lệ
(validation).
Chương II. Xây dựng tài liệu XML hợp khuôn dạng: Giới thiệu cụ thể cấu trúc
bên trong của một tài liệu XML.
Chương III. Định nghĩa kiểu tư liệu DTD và kiểm tra tính hợp lệ cảu tài liệu
XML:
Giới thiệu về cách định nghĩa và khai báo các phần tử (Element) được sử dụng
trong tài liệu XML để tạo nên một tài liệu có cấu trúc dạng cây.
Chương IV. Lược đồ XML (Schema XML) :
Giới thiệu về chức năng của lược đồ XML và sự cần thiết của lược đồ XML
Chương V: Sử dụng XSLT để transform dữ liệu XML: Giới thiệu về XSLT và
các lệnh cũng như cấu trúc của một file XSLT.
Chương VI. Chương trình ứng dụng: Xây dựng website giới thiệu và bán hàng
trực tuyến.
- 4 -
PHẦN II: TÌM HIỂU VỀ XML VÀ XSLT
Chương I: GIỚI THIỆU XML
I.Thế Giới XML
XML là ngôn ngữ được định nghĩa bởi tổ chức mạng toàn cầu (World Wide Web
Consortium). Tổ chức này thường được viết theo cách chơi chữ là W3C với địa chỉ
Internet đặt tại Đây là tổ chức quốc tế định ra các chuẩn của web
và internet. Chương này chúng ta sẽ xem qua mọi chức năng của ngôn ngữ XML ở mức
tổng quan.
II. Ngôn ngữ định dạng (Markup Language)
Ngôn ngữ định dạng là tất cả những gì dùng để mô tả nội dung một tài liệu.Đó là
cách nội dung của tài liệu được diễn dịch. HTML cũng là một ngôn ngữ định dạng.
Ví dụ:
Hello HTML
Thực sự thì HTML và XML quan hệ rất gần gũi với nhau cả hai đều dựa trên
chuẩn ngôn ngữ định dạng tổng quát SGML(Standard Generalized Markup Language).
Như tên gọi của nó, SGML là ngôn ngữ định dạng rất tổng quát, bao hàm nhiều khả năng
to lớn. Bởi vì ta có thể làm nhiều thứ với SGML, cho nên tuy tổng quát nhưng SGML rất
khó học và thực tế thì SGML ít được dùng cho mục đích chung nào cả. Trong khi đó
XML là tập con (subset) của SGML nhưng lại dễ dùng, dễ sử dụng ở mức độ tổng quát.
III. XML trông như thế nào?
Vậy thì XML trông hình dáng cụ thể ra sao? Cũng như HTML XML cũng có thể
tạo ra những trang web cực đẹp.
- 5 -
Ví dụ:
Hello XML
Welcome to XML
Chúng ta sẽ tìm hiểu cú pháp của XML ở những phần sau, tuy nhiên nhìn tổng quát, ví dụ
về XML như trên thực hiện công việc sau:
Chúng ta bắt đầu bằng thẻ khai báo chỉ thị xử lý XML(Processing Instruction)
Tất cả các chỉ thị xử lý XML bắt đầu bằng . Theo đó ta chỉ định
rằng ngôn ngữ XML sử dụng phiên bản 1.0 và mã hóa ký tự UTF-8.
Tiếp theo đó là ta tạo ra thẻ . Thẻ này là do chúng ta đặt tên do đó bạn có thể
đặt tên theo ý của mình nhưng nó phải bắt đầu bằng ký tự gạch chân (_), ký số (1,2,3) ký
tự (a,A,b), dấu chấm (.) , dấu gạch nối (-) nhưng không được khoảng trắng. Trong XML
thẻ luôn bắt đầu bắng ký tự .
Tài liệu XML được hình thành từ các phần tử (element) XML. Tương tự HTML bạn tạo
phần tử XML khởi đầu bằng một thẻ mở, ví dụ như tiếp đến là dữ liệu của
phần tử (nếu có) như dữ liệu text hay các phần tử XML con khác. Cuối cùng ta có thẻ
đóng trùng với tên thẻ mở. Tuy nhiên thẻ đóng phải bắt đầu bằng chuỗi </ tương tự
HTML thí dụ như . Tương tự ví dụ này thì phần tử được gọi
là phần tử gốc (element root).
- 6 -
Bên trong phần tử gốc ta thêm vào thành phần thẻ khác mang tên Thẻ này có
dữ liệu là Hello XML.
Hello XML
Kế tiếp là ta thêm vào một phần tử khác vào phần tử gốc. Thẻ mới này mang tên
cũng do ta tự đặt và thẻ này có dữ liệu là Hello XML.
Hello XML
Welcome to XML
Cuối cùng phần tử gốc chứa hai phần tử con là và .
Mỗi phần từ thể hiện dữ liệu riêng của nó. Bằng cách này chúng ta tạo ra tài liệu XML
hoàn chỉnh.
IV.Tài liệu XML hiển thị như thế nào trong trình duyệt?
Nếu ta lưu ví dụ trên với tập tin Hello.xml và sử dụng Internet Explore (5.0 trở
lên) bạn sẽ thấy nội dung file Hello.xml thể hiện như hình 1-1.
- 7 -
Hình 1-1 Tài liệu XML hiển thị trong trình duyệt IE
Vậy thì XML có gì hữu ích hơn HTML. Trong khi HTML có thể yêu cầu trình
duyệt hiển thị dữ liệu văn bản được định dạng rất đẹp thì XML tự định nghĩa những thẻ
của riêng mình để rồi trình duyệt không hiểu gì cả? Thực sự thì không đúng như vậy
XML cũng có thể hiển thị lên trình duyệt rất đẹp nó phụ thuộc vào chúng ta làm cách nào
để trình duyệt hiểu được thẻ HTML do ta đặt ra. Thay vì đưa toàn bộ nội dung file xml ra
thì chúng ta chỉ cần rút trích dữ liệu bên trong thẻ và là đủ rồi.
Nào bây giờ chúng ta muốn trình duyệt hiểu những thẻ do ta định nghĩa và hiển thị
chúng bạn có hai cách: sử dụng bảng định kiểu (style sheet) và XSL để chỉ định cho trình
duyệt những thẻ dữ liệu nào mà bạn muốn lấy trong tài liệu hello.xml và hiển thị chúng
với các định dạng tương tự HTML.
Ở đây ta sử dụng cách thứ hai sử dụng file xsl để chỉ cho trình duyệt hiểu những
thẻ ta đặt ra.
Đây là toàn bộ nội dung file hello.xslt.
- 8 -
<xsl:stylesheet version="1.0"
xmlns:xsl=""
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-
prefixes="msxsl"
>
Cũng như CSS chúng ta cũng cho file xml tham chiếu tới file xsl
Hello XML
Welcome to XML
Chúng ta sẽ tìm hiểu về XSLT ở những phần sau.
Sau khi đưa file xslt vào thì file xml được hiển thị trên trình duyệt như hình 1-2:
- 9 -
Hình 1-2 Tài liệu XML được hiển thị kết với XSLT trong IE 7.0
V. Điều tuyệt diệu về XML
XML trở nên phổ biến có rất nhiều nguyên do và chúng ta sẽ xem xét các nguyên
do này trong phần tổng quát dưới đây.
Điểm quan trọng nhất là XML cho phép dễ dàng xử lý chuyển tải và trao đổi dữ
liệu rất nhiều ứng dụng và tài liệu người dùng với các định dạng khác nhau.
1. Dễ dàng trao đổi dữ liệu
Nếu ta làm việc với máy tính trong một thời gian dài chúng ta sẽ thấy xung quanh
ta có rất nhiều loại file. Chuyển đổi dữ liệu giữa chúng là một vấn đề nan giải mặc dù đã
có không ít trình ứng dụng hỗ trợ. Ví dụ .doc, .xsl,.mdb vv.vv
Trong XML dữ liệu và định dạng được lưu ở dạng text và chúng ta có thể dễ dàng
cấu hình cũng như thay đổi chúng bằng các trình soạn thảo XML chuyên nghiệp để soạn
thảo nội dung XML. Tuy nhiên thì trường hợp đơn giản bạn có thể dùng trình soạn thảo
- 10 -
Notepad trong window để chỉnh sữa file xml. Dữ liệu và các thẻ trong XML cũng không
mã hóa theo một thuật giải đòi hỏi bản quyền nào cả.
2. Tùy biến ngôn ngữ định dạng
Ta có thể tạo ra các ngôn ngữ định dạng tùy biến dựa trên XML, đây là một trong
những khả năng mạnh nhất của XML. Hàng trăm ngôn ngữ định dạng chuyên dụng dựa
trên XML ra đời như:
Ngôn ngữ văn phòng về kỹ thuật nghiệp vụ ngân hàng (BITS Banking Industry
Technology Secretariat)
Trao đổi dữ liệu tài chính (IFX Financial Exchange)
Hệ thống thanh toán qua Internet của nghiệp vụ ngân hàng (BIPS Banking Internet
Payment System).
Định dạng trao đổi viễn thông (TIM Telecommunication Interchanged Markup).
Thư viện kinh doanh thông dụng (CBL Common Business Library).
Khởi đầu XML kinh doanh điện tử (ebXML).
Ngôn ngữ định dạng dữ liệu sản phẩm (PDML Product Data Markup Language)
Giao thức trao đổi thông tin tài chính (FIX Financial Information eXchange
protocol).
Một vài ngôn ngữ định dạng tùy biến như ngôn ngữ định dạng trong lĩnh vực hóa
học (CML Chemical Markup Language) cho phép bạn biểu diễn các công thức hóa hóa
và hóa trị của phân tử ở dạng đồ họa. Tương tự hãy tưởng tượng thật tiện lợi nếu XML có
thể diễn đạt được thông tin các ảnh đồ họa của những thiết kế mô hình nhà và trình duyệt
sẽ hiển thị lên toàn bộ ngôi nhà của bạn dựa vào XML.
- 11 -
Chúng ta không chỉ có thể tạo ra một tập ngôn ngữ con dựa vào XML mà còn có
thể mở rộng chúng. Thí dụ như nếu một người hay một nhóm nào đó đã tạo ra ngôn ngữ
định dạng con của XML ta sử dụng và cảm thấy thiếu một số thẻ. Ta có thể thêm vào các
thẻ khác, mà theo đó giúp ta thực hiện diễn đạt cũng như lưu trữ dễ dàng hơn. Thực tế thì
điều đó đang diễn ra với XHTML.
3. Dữ liệu có cấu trúc và tích hợp:
Một khía cạnh mạnh mẽ khác của XML là không chỉ cho phép bạn lưu dữ liệu vào
file XML dựa trên thẻ con mà còn tổ chức dữ liệu theo cấu trúc. XML cho phép các phần
tử thẻ tích hợp với nhau tạo nên một cấu trúc dữ liệu phân cấp hoàn chỉnh. Điều này cực
kỳ quan trọng khi bạn cần đến khả năng định nghĩa dữ liệu có cấu trúc. Ví dụ ta muốn mô
ta một cấu trúc lớp học ta có thể định nghĩa lớp học theo XML như sau:
XML in the real world!
XML
29/12/2008
Như Ý
Lý
- 12 -
Thạnh Trung
Hồ
Ta vừa thiết lập thông tin về một lớp hội thảo bằng XML. Có hai sinh viên đưa
vào buổi hội thảo này. Với mỗi phần tử sinh viên cần kèm theo thông tin về họ
và tên bằng thẻ và . được xem là một bảng dữ liệu
đồng nhất không thể chen ngang thẻ vào bên trong nội dung thẻ
được. Điều này sẽ làm cho tài liệu không có ý nghĩa. Chúng ta sẽ tìm hiểu về “Tìm hiểu
tài liệu XML hợp khuôn dạng” ở phần sau.
Tuy nhiên trong chương đầu tiên chúng ta sẽ được thấy cái tổng quát của tài XML
có hợp khuôn dạng (well-formed) và kiểm tra tài liệu có hợp lệ (valid) hay không.
4. Tài liệu XML hợp khuôn dạng (Well-formed)
Tài liệu hợp khuôn dạng là gì? Để hợp khuôn dạng, một tài liệu XML cần phải
tuân theo quy tắc cú pháp thiết lập cho XML bởi tổ chức quốc tế W3C. Các quy tắc này
được nêu ra trong đặc tả XML 1.0. Trước hết để hiểu được tài liệu khuôn dạng hợp lệ
chúng ta hay nhìn vào những tài liệu không hợp khuôn dạng. Đây là tài liệu mà có các thẻ
được đặt không sắp xếp theo một trật tự nào cả lồng và đan chéo lẫn nhau. Bao gồm
nhiều phần tử cùng làm thẻ gốc. Tài liệu có thẻ mở mà không có thẻ đóng…
Ví dụ:
- 13 -
Hello XML
Welcome to XML
Nếu là các thẻ HTML thì không có vấn đề gì cả. Trình duyệt vẫn hiểu và hiển thị
đúng nhưng đối với XML thì bạn sẽ bị trình duyệt bắt lỗi chỉ ra đúng vị trí không hợp
khuôn dạng của tài liệu.
5. Tài liệu XML hợp lệ (Valid document)
Hầu hết các trình duyệt trước hết kiểm tra xem tài liệu XML của bạn có hợp
khuông dạng không đã. Tiếp theo một vài trình duyệt có thể kiểm tra thêm tính hớp lệ của
tài liệu. Một tài liệu XML được gọi là hợp lệ khi nó là tài liệu được kết hợp với định
nghĩa kiểu tư liệu (Document Type Definition DTD) và tuân theo chuẩn DTD.
Các định nghĩa DTD nhằm xác định cú pháp đúng đắn cho tài liệu. DTD có thể
được chứa trong một file tách biệt hoặc chứa ngay trong chính tài liệu. DTD sử dụng
phần tử hay thẻ . Dưới đây là một ví dụ về định nghĩa kiểu tư liệu DTD
được chúng ta thêm vào file tài liệu XML hello.xml.
<!DOCTYPE Document [
- 14 -
]>
Hello XML
Welcome to XML
Chúng ta sẽ tìm hiểu chi tiết về DTD ở phẩn sau. Nhưng ở đây ta có thể thấy DTD
chỉ định rằng bạn có thể có hai thẻ Greeting và Message được định nghĩa là các thẻ có thể
mạng theo dữ liệu văn bản.
Chúng ta đã có cái nhìn tổng quan về tài liệu XML như: làm thế nào để hiển thị
nội dung XML với bảng định kiểu CSS,XSLT. Tài liệu XML hợp khuôn dạng và hợp lệ
là gì. Tại sao phải kiểm tra cú pháp của XML nghiêm ngặt. Mặc dù vậy, đó chỉ là một
phần mà bạn thấy qua về XML. Rất nhiều tài liệu XML được dùng cho mục đích không
phải hiển thị trên trình duyệt, XML được dùng để chứa dữ liệu, phục vụ mọi nhu cầu của
chương trình ứng dụng. Tuy không cần hiển thị nội dung XML dựa vào CSS hay XSL
nhưng chúng ta phải biết cách phân tích (Parse) nội dung tài liệu XML rút trích ra nội
dung trong thẻ. Xml có thể dùng để mô tả và biểu diên một cơ sở dữ liệu hoàn chỉnh.
Chương II: I. XÂY DỰNG TÀI LIỆU XML HỢP KHUÔN DẠNG
Trong HTML có khoảng 100 thẻ (tag) đã được định nghĩa. Trình duyệt có thể
kiểm tra các thẻ này và hiển thị nội dung tài liệu trong khuôn khổ các thẻ quy định trước.
Trái lại, với XML bạn hoàn toàn tự do định nghĩa các thẻ nên bạn phải có trách nhiệm
với chúng. Với XML bạn tự định nghĩa thẻ và tùy ý quyết định mục đích sử dụng của thẻ.
Mặc dù được tự do định nghĩa nhưng các thẻ XML phải tuân theo một quy tắc định nghĩa
bắt buộc. Nếu ta không theo những quy tắc này khi định nghĩa thẻ các bộ phân tích cú
pháp XML sẽ không chịu làm việc với tài liệu của chúng ta. Như đề cập ở trên tài liệu
XML của chúng ta phải thỏa mãn hai điều kiện đó là hợp khuôn dạng và hợp lệ. Tài liệu
được coi là hợp khuôn dạng khi theo đúng các bước thiết kế và xây dựng XML do W3C
- 15 -
đưa ra. Nói chung ta phải theo cú pháp khi khai báo thẻ XML và tuân theo cách đặt các
thẻ XML theo một trật tự có thể phân tích được bởi các bộ phân tích (Parse).
Chúng ta băt đầu xây dựng một tài liệu XML hợp khuôn dạng
Hide your heart
Bonnie Tyler
UK
CBS Records
9.90
1988
Lưu tài liệu XML này với tập tin catalog.xml. như bạn thấy đó tập tin catalog.xml ngày
càng phát triển kích thước dữ liệu sẽ phình to ra. Mặc dù vậy, cho dù có phình to ra đến
đâu nhưng nếu bạn tiếp tục tao ra thẻ và thêm dữ liệu vào theo đúng cách trên thì tất cả
các trình phân tích đều đọc được nội dung tài liệu của ta. Tài liệu XML thiết kế theo cách
trên được gọi là một tài liệu hợp khuôn dạng.
Tóm lại cấu trúc hình thành nên một tài liệu XML thường bạn tuân theo đó là: tạo
chỉ thị xử lý XML, xây dựng phần tử hoặc thẻ gốc, tạo các phần tử con lồng trong các
phần tử gốc.
Các phần tử bên trong thẻ gốc có thể chứa các thẻ con khác lông sâu nhau nhiều
cấp.
- 16 -
Ở mức cơ bản nhất, tài liệu XML được kết hợp bởi thành phần định dạng
(markup) và dữ liệu ký tự (charater data).
I. Định dạng và dữ liệu ký tự:
Định dạng tài liệu giúp ta tạo nên một cấu trúc. Định dạng bao gồm thẻ bắt đầu, thẻ kết
thúc, các phần tử thẻ rỗng các tham chiếu thực thể, tham chiếu ký tự lời chú thích, phân
đoạn CDATA khai báo kiểu tài liệu và chỉ thị xử lý. Tất cả các dữ liệu còn lại trong tài
liệu XML không phải là định dạng đều được xem là dữ liệu ký tự.
Dưới đây là diễn giải về các định dạng và kiểu dữ liệu ký tự dựa trên nội dung file
hello.xml đã được tạo ra ở trên.
Hello XML
Welcome to XML
Thẻ hay phần tử bắt đầu bắt đầu bằng ký tự bằng quy
tắc này ta có thể thấy trong tài liệu XML trên chúng ta có các phần tử gọi là định dạng
như , , .
Còn lại chuổi văn bản “Hello XML” hay “Welcome to XML” được xem là dữ liệu ký
tự.
Tuy nhiên phần định dạng không cần phải luôn bắt đầu bằng .
Trong trường hợp ta tham chiếu đến một thực thể thì phần định dạng có thể bắt đầu bằng
& và kết thúc bởi ; hoặc trong trường hợp bạn tham chiếu đến một thực thể tham số
- 17 -
(parameter entitis reference) phần định dạng có thể bắt đầu bằng % và kết thúc bởi ;. Một
vài tham chiếu thực thể có thể chuyển sang ký tự định dạng khi trình phân tích diễn dịch.
Ví dụ (< được dịch thành ). Chúng ta sẽ xem xét ví dụ sau
và kết quả như hình 2-1:
Hello <XML>
Welcome to XML
Hình 2-1 Sử dụng thẻ định dạng trong XML
Hình 2-1 thể hiện nội dung của tài liệu XML sử dụng các tham chiếu thực thể đặc biệt.
Các ký tự tham chiếu giúp ta hiển thị và đưa vào dữ liệu ký tự những dấu hiệu đã sử dụng
trong phần định dạng. Ở ví dụ trên nếu ta viết trực tiếp thẻ thì tài liệu của ta rõ
ràng là không hợp khuôn dạng vì không có thẻ đóng tương ứng.
Các ký tự như spacebar, backspace,Tab, ký tự xuống dòng, ký tự thụt dòng đều được xem
là khoảng trắng đối với các trình phân tích XML, ví dụ nội dung tài liệu sau:
- 18 -
Hello XML
Welcome to XML
Bộ phân tích không cần quan tâm đến khoảng trắng hay dấu canh lề định sẵn. Thực sự
nội dung tài liệu trên hoàn toàn tương đương với nội tài liệu dưới đây.
Hello XML
Welcome to XML
II. Phần khởi đầu (Prolog) của tài liệu XML
Phần prolog bắt đầu ngày từ những dòng đầu tiên của tài liệu XML. Chuẩn XML không
yêu cầu phải khai báo phần mở đầu XML. Tuy nhiên ,W3C khuyến khích bạn nên dùng ít
nhất cũng là dòng khai báo phiên bản sử dụng của XML. Nói chung phần khởi đầu của
XML thường chứa các khai báo XML, lời chú thích về tài liệu, chỉ thị xử lý khoảng trắng
và kiểu tư liệu DTD.
<!DOCTYPE Document [
- 19 -
]>
Như Ý
Lý
29/12/2008
Dell
1
15000000
- 20 -
III. Chú thích
Chú thích trong XML tương tự như chú thích trong HTML. Các chú thích để cho
ta hiểu rõ hơn một phần nào đó trong cấu trúc của tài liệu XML. Khi diễn