Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Ch��ng I: T�NG QUAN XML
���������� ��� � ��� ������ �������
������ �������������������� ���
!�"#�$�� �$$%�&&''' �������������� ���
������ ��� ��� � � �������� ������������������������
Ch��ng 1 - M�c tiêu
� T�ng quan XML.
� So sánh gi�a HTML & XML
� Mô t� c�u trúc 1 file xml
� Các �ng d�ng XML
� Son th�o và biên dch XML
� Vi�t m�t tài li u XML well-form
������ ��� ��� � � �������� ������������������������
T�ng quan XML
� XML- Extensible Markup Language - là ngôn ng� t�ngquát dùng �� l�u tr� d� li u thông qua các th� cóngh�a.
� XML ���c �nh ngh�a b�i t� ch�c mng toàn c�uWorld Wide Web Consortium (W3C).
� Là ngôn ng� �ánh d�u ��c l�p v�i ph�n m�m, ph�nc�ng và n�n (cross-platform).
� Cho phép các máy tính truy�n c�u trúc d� li u gi�ah th�ng không ��ng nh�t.
������ ��� ��� � � �������� ������������������������
XML ���c s� d�ng � �âu?
� Gi�m t�i server
� N�i dung web site
� Remote Procedure Calls
� E-Commerce
������ ��� ��� � � �������� ������������������������
SO SÁNH GI�A XML VÀ HTML [1]
� C� HTML và XML ��u d�a trên chu�n ngôn ng� �nh dng t�ngquát SGML
H�u nh� không b�t l�iKi�m tra tính h�p l
Các ph�n t� �ã ���c �nhngh�a s�n
Cho phép ng��i dùng �nh ngh�a cácph�n t�
Presenttation Markup LanguageContent Markup Language
HTMLXML
������ ��� ��� � � �������� ������������������������
SO SÁNH GI�A XML VÀ HTML [2]
HTMLXML
Các ph�n t� r�ng không c�nph�i �óng
Các ph�n t� ph�i ���c �óng
Không b�t bu�cC�n ph�i ���c �nh ngh�a m�t cáchch t ch!
Ch" ���c thi�t k� �� trình di#nCho phép trao ��i d� li u gi�a các�ng d�ng
������ ��� ��� � � �������� ������������������������
C$U TRÚC C%A XML
� C�u trúc
� Ví d�
� &u �i�m c'a XML.
������ ��� ��� � � �������� ������������������������
C�u trúc tài li u Xml
� M�t tài li u XML có 2 ph�n:
� C�u trúc logic: �nh ngh�a các ph�n t�, các thu�c tính, ki�u d� li u, vv…
� C�u trúc v�t lý: ch�a d� li u và các ph�n t� ch�a d�li u nh� text, hình �nh, media, vv…
� ->Chú ý: t�p tin Xml có ph�n m� r�ng: .xml
������ ��� ��� � � �������� ������������������������
Ví d�: - greating.xml
<?xml version=“1.0” encoding=“UTF-8”?>
<?xml-stylesheet type="text/css" href="greeting.css"?>
<document>
<greeting>
Hello
</greeting>
<message>
Welcome to my page
</message>
</document>
������ ��� ��� � � �������� ������������������������
Ví d� - greating.css
greeting
{
display: block; font-size: 30pt; color: blue
}
message
{
display: block; font-size: 15pt; color: green
}
������ ��� ��� � � �������� ������������������������
Gi�i thích
<?xml version=“1.0” encoding=“UTF-8”?>
� Th� khai báo ch" th x� lý.
� � t � ngay dòng ��u tiên.
� Trong �ó:
� <document> là ph�n t� g�c c�a tài li�u.
� <greeting>, <message> là các ph�n t� ��c �nhngh�a bên trong ph�n t� g�c, nó có th� ch�a d� li�uho c các ph�n t� khác.
������ ��� ��� � � �������� ������������������������
&u �i�m c'a XML
� D� dàng x� lý, chuy�n t�i và trao ��i d� li�u.
� Mô t� d� li�u và cách d� li�u mu�n th� hi�nthông qua tên các th�.
� T� ch�c d� li�u có c�u trúc và phân c�p.
������ ��� ��� � � �������� ������������������������
CÁC (NG D)NG TH*C T+ C%A XML
� CML - ngôn ng� �nh d�ng hoá h�c.
� MathML - ngôn ng� �nh d�ng toán h�c.
� SMIL (Synchronized Multimedia Integration Language).
� HTML+TIME
� XHTML: m� r�ng và �nh ngh�a l�i HTML.
� VML (Vector Markup Language) –
� WML – Wireless Markup Language.
������ ��� ��� � � �������� ������������������������
Son th�o và biên dch XML
� Môi tr��ng son th�o
� Biên dch XML
������ ��� ��� � � �������� ������������������������
Môi tr��ng son th�o XML
� XML Notepad
(www.microsoft.com/xml/notepad/intro.asp)
� XML Writer
(www.xmlwriter.net)
� XML Spy
(www.xmlspy.com)
� eNotePad
(www.edisys.com/products/enotepad)
������ ��� ��� � � �������� ������������������������
Biên dch và chy tài li u XML
� B� phân tích ( XML Parser)
� B� ki�m tra (XML validator)
� Trình biên dch
������ ��� ��� � � �������� ������������������������
B� phân tích XML (XML PARSER)
� Tách d� li�u XML thành t�ng m�u nh� và khi�n chúng cóth� truy xu�t ��c b�i mã l�nh c�a ch��ng trình.
� M�t s� trình phân tích kiêm luôn c� ch�c n�ng ki�m trakhuôn d�ng ho c tính hp l� c�a tài li�u XML.
� Các b� phân tích thông d�ng:
� XML for Java (XML4J), là th� vi�n phân tích tài li�uXML ��c phát tri�n b�i IBM AlphaWorks(www.alphaworks.ibm.com/tech/cml4j)
� Microsoft XML Parser, ��c kèm theo s�n trong trìnhduy�t Internet Explorer 5 tr� lên.
������ ��� ��� � � �������� ������������������������
B� ki�m tra (XML VALIDATOR)
� Dùng �� ki�m tra xem tài li�u XML vi�t ra có �úng khuônd�ng và hp l� hay không?
� Các b� ki�m tra th��ng dùng:
� XML Writer là trình so�n th�o và ki�m tra tính hp l�c�a tài li�u.
� Tidy: phân tích và ki�m tra tính hp l� c�a tài li�u. �ach�: www.w3.org/people/raggett/tidy
� Có th� ki�m tra tính hp l� c�a tài li�u ngay trênInternet qua �a ch�: www.stg.brown.edu/service/xmlvalid
������ ��� ��� � � �������� ������������������������
Trình duy t
� Internet Explorer
� Mozilla FireFox
� Netscape navigator
� …
������ ��� ��� � � �������� ������������������������
XÂY D*NG TÀI LI,U XML
� Ví d�: to m�t tài li u XML �� l�u thông tin v� ��n � t hàng c'acác khách hàng c� th�.
� Ch" th x� lý:
<?xml version=“1.0” standalone=“yes”?>
standalone=“yes”: cho bi�t tài li u là m�t th�c th� duy nh�t khôngtham chi�u ��n các th�c th� khác. �ây c�ng là giá tr m c �nh.
� To ph�n t� g�c:
<?xml version=“1.0” standalone=“yes”?>
<document>
…
</document>
������ ��� ��� � � �������� ������������������������
VÍ D) (tt)
� To các ph�n t� con
<?xml version=“1.0” standalone=“yes”?>
<document>
<customer>
…
</customer>
<customer>
…
</customer>
<document>
������ ��� ��� � � �������� ������������������������
VÍ D) (tt)
� ��i v�i m�i khách hàng ta thêm thông tin v� tên b-ng th�<name> cùng v�i thông tin chi ti�t <first_name> và <last_name>
<?xml version=“1.0” standalone=“yes”?>
<document>
<customer>
<last_name>Smith</last_name>
<first_name>Sam</first_name>
</customer>
<customer>
…
</customer>
<document>
������ ��� ��� � � �������� ������������������������
VÍ D) (tt)
� Thêm thông tin v� ��n � t hàng
<customer>
<last_name>Smith</last_name>
<first_name>Sam</first_name>
<date>October 15, 2001</date>
<orders>
…
</orders>
</customer>
������ ��� ��� � � �������� ������������������������
VÍ D) (tt)
<customer>
<last_name>Smith</last_name>
<first_name>Sam</first_name>
<date>October 15, 2001</date>
<orders>
<item>
<product>Tomatoes</product>
<number>8</number>
<price>$1.25</price>
</item>
</orders>
</customer>
������ ��� ��� � � �������� ������������������������
XML WELL - FORM
� XML phân bi t ch� hoa và ch� th��ng
� Các khai báo XML ph�i ���c � t ngay dòng ��u tiên c'a tài li u
� Tài li u ch" có 1 ph�n t� g�c, các ph�n t� khác n�u có ph�i làcon c'a ph�n t� g�c
� M.i ph�n t� XML khác r�ng ph�i bao gôm ��y �' th� �óng
� �óng ph�n t� r�ng v�i chu�i �óng />
� M.i ph�n t� trong tài li u khác ph�n t� g�c ��u ph�i n-m gi�ac p th� g�c
� Các giá tr c'a thu�c tính ph�i ���c � t trong d�u nháy �ôi (“”)
������ ��� ��� � � �������� ������������������������
M�t s� khái ni m khác
� T�p ký t� và mã hóa
� Không gian tên (Namespace)
������ ��� ��� � � �������� ������������������������
T/P KÝ T* VÀ MÃ HOÁ
� T�p ký t� m c �nh c'a XML là UTF-8 (8 bits). �ây làb� mã thu g.n c'aUTF-16 (16 bits), nó chính là b� mãASCII n-m trong ph�n ��u c'a b� mã Unicode.
������ ��� ��� � � �������� ������������������������
KHÔNG GIAN TÊN (NAMESPACES)
� Khi k�t h�p các tài li u XML v�i nhau có th� x�y ratr��ng h�p trùng tên th�, vì v�y c�n �nh ngh�akhông gian tên �� phân bi t chúng.
������ ��� ��� � � �������� ������������������������
T0O KHÔNG GIAN TÊN (tt)
� Ví d�:
�ây là m�t th� vi n sách có ph�n t� g�c là <library>
<library>
<book>
<title>XML</title>
</book>
</library>
������ ��� ��� � � �������� ������������������������
VÍ D) (tt)
Không gian tên dcs ���c to ra cho th� vi n nh� sau:
<library
xmlns:dcs=“http://www.incoll4.edu.vn/lib”>
<book>
<title>XML</title>
</book>
</library>
������ ��� ��� � � �������� ������������������������
VÍ D) (tt)
� Áp d�ng không gian tên dcs cho t�t c� các th� nàotrong tài li u mà ta mu�n chúng duy nh�t và ��cquy�n v� dcs
<dcs:library
xmlns:dcs=“http://www.incoll4.edu.vn/lib”>
<dcs:book>
<dcs:title>XML</dcs:title>
</dcs:book>
</dcs:library>
������ ��� ��� � � �������� ������������������������
VÍ D) (tt)
� N�u ta c�n tham kh�o ��n các t�a sách c'a Amazon, tài li u nàych�c ch�n s! có ph�n t� mang tên <book>. �� an toàn ta s! tom�t không gian tên cho Amozon nh� sau:
<dcs:library
xmlns:dcs=“http://www.incoll4.edu.vn/lib”
xmlns:amazon=“http://www.amazon.com/lib”
<dcs:book>
<dcs:title>XML</dcs:title>
</dcs:book>
</dcs:library>
������ ��� ��� � � �������� ������������������������
VÍ D) (tt)
� Bây gi� b�t k� t�a sách nào c'a Amazon ��u có th� ��a vào v�icùng �nh dng và c�u trúc c'a th� vi n dcs
<dcs:library
xmlns:dcs=“http://www.incoll4.edu.vn/lib”
xmlns:amazon=“http://www.amazon.com/lib”
<dcs:book>
<dcs:title>XML</title>
</dcs:book>
<amazon:book>
<amazon:title>XML</amazon:title>
</amazon:book>
</dcs:library>
������ ��� ��� � � �������� ������������������������
CDATA
� Th1a k� t1 SGML - Character DATA
� XML parser s! b2 qua vi c phân tích v�n b�n.
<tagname><![CDATA[text]]></tagname>