Giáo trình công nghệ xml và ứng dụng gồm các chương sau: Chương 1: Tổng quan về XML, Chương 2: DTD – Document Type Definition, Chương 3: XML Schema, Chương 4: XML DOM Document Object Model, Chương 5: XPath, Chương 6: Xquer.
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC LẠC HỒNG
GIÁO TRÌNH CÔNG NGHỆ XML VÀ ỨNG DỤNG
Trang 2MỤC LỤC
Chương 1: Tổng quan về XML 1
1.1 Giới thiệu về XML 1
1.2 Cấu trúc tài liệu XML 3
1.3 Cú pháp XML và Well – formed tài liệu XML 6
1.4 Các đối tượng trong XML 29
1.4.1 Element 29
1.4.2 Attribute 31
1.4.3 Khi nào sử dụng Elements và Attributes 32
1.4.4 Namespace 34
1.4.5 Encoding 38
1.5 Viewing 39
1.6 XML Và CSS 40
1.7 Những điều cần ghi nhớ 42
Chương 2: DTD – Document Type Definition 47
2.1 Giới thiệu về DTD 47
2.2 Cấu tr c DTD v các ước t o DTD 49
2.3 Khai báo DTD 49
2.4 Các thành phần trong DTD 51
2.4.1 Khai báo Element trong DTD 51
2.4.2 Khai báo Attributes trong DTD 53
2.4.3 Khai báo Entities trong DTD 57
Chương 3: XML Schema 59
3.1 Giới thiệu 59
3.2 Khai báo XML Schema 62
3.3 Simple Types 65
3.3.1 XSD Simple Elements 65
3.3.2 XSD Restrictions/Facets 67
3.4 Complex Types 73
Trang 33.4.1 XSD Complex Element 73
3.4.2 XSD Empty Elements 76
3.4.3 XSD Elements Only 77
3.4.4 XSD Text-Only 77
3.4.5 XSD Mixed Content 79
3.5 XSD Indicators 80
3.5.1 Order Indicators 80
3.5.2 Occurrence Indicators 81
3.5.3 Group Indicators 84
3.6 <any> element 85
3.7.<anyAttribute> Element 87
3.8 Substitution Element 89
3.9 Phân chia lược đồ, các phong cách thiết kế XML Schema 94
3.10 Data Types – Các kiểu dữ liệu 98
3.10.1 Kiểu chuỗi - String 98
3.10.2 Kiểu ngày tháng - Date and Time 100
3.10.3 Kiểu số - Numeric 104
3.10.4 Kiểu hỗn hợp - Miscellaneous 106
Chương 4: XML DOM - Document Object Model 108
4.1 Giới thiệu 108
4.2 Nodes 109
4.3 Node Tree 110
4.4 Properties and Methods 113
4.5 XML DOM: Node Information 119
4.6 Node List 122
4.7 Get Node Values 130
4.8 The XMLHttpRequest Object 149
Chương 5: XPath 163
5.1 Giới thiệu 163
5.2 Các thuật ngữ trong XPath 163
5.3 Cú pháp Xpath 164
Trang 45.4 Toán tử – Operators 171
5.5 XPath: Các ví dụ 172
Chương 6: Xquery 181
6.1 Giới thiệu 181
6.2 Duyệt các node 182
6.3 FLWOR 183
6.4 Hiển thị dữ liệu trong HTML List 184
6.5 XQuery: Các thuật ngữ và mối quan hệ 185
6.6 Syntax – Cú pháp 188
6.7 Các toán tử so sánh 189
6.8 Thêm các Elements và Attribute 189
6.9 Xây dựng hàm – functions 191
Trang 5DANH MỤC HÌNH ẢNH
Hình 1.1 Cấu trúc một tài liệu XML 8
Hình 1.2 Ví dụ về 1 tài liệu XML 9
Hình 2.1 Cấu trúc DTD 54
Hình 4.1 Node tree 115
Hình 4.2 Mối quan hệ trong cây 116
Hình 4.3 Danh sách node 127
Hình 4.4 Mối quan hệ node trong cây 131
DANH MỤC BẢNG BIỂU Bảng 1.1 Đặc điểm của HTML và XML 6
Bảng 1.2 Thực thể tham chiếu 14
Bảng 2 1 Các lo i thuộc tính 59
Bảng 2.2 Giá trị các thuộc tính 60
Bảng 3.1 Facets 72
Bảng 3 2 Các h n chế trên dữ liệu 77
Bảng 3 3 Các kiểu dữ liệu chuỗi 104
Bảng 3.4 Kiểu dữ liệu ngày tháng 108
Bảng 3.5 Bảng dữ liệu kiểu số 110
Bảng 4.1 Các lo i node 126
Bảng 5.1 Cú pháp node 170
Bảng 5.2 Ví dụ các biểu thức 170
Bảng 5.3 Biểu thức có Prediaces 171
Bảng 5.4 Wildcard 172
Bảng 5.5 Ví dụ wildcard 172
Bảng 5.6 Ví dụ chọn nhiều đường dẫn 173
Bảng 5.7 Axis 173
Bảng 5.8 Vị trí của biểu thức 175
Bảng 5.9 Toán tử Xpath 176
Trang 6Chương 1: Tổng quan về XML
1.1 Giới thiệu về XML
Trước khi XML ra đời đ c nhiều kiểu định ng v n ản điện tử
như GML G n raliz Markup Languag của IBM SGML Stan ar G n raliz Markup Languag của ANSI v o n m 1980 v HTML Hyp r T xt Markup
Languag Tuy nhi n các phư ng pháp n y c nhiều nhược điểm như GML v SGML
kh ng th ch hợp để truyền ữ liệu tr n W HTML chủ yếu ch trọng v o việc l m cách n o hiển thị th ng tin h n l ch trọng đến nội ung truyền tải Ch nh v vậy XML Xt nsi l Markup Languag được t o ra để giải quyết các nhược điểm tr n
HTML ng để hiển thị ữ liệu v ch
trọng v o việc ữ liệu được hiển thị như
thế n o
XML ng để m tả ữ liệu v ch trọng
v o nội ung của ữ liệu
Đặc trưng của XML:
Ng n ngữ đánh ấu markup tag ra đời nhằm hướng tới việc thể hiện ữ liệu
th o cách để n nhận v n giao tiếp đọc hiểu lẫn nhau v tổ chức ữ liệu để trao đổi
m kh ng ị lệ thuộc v o các chư ng tr nh ứng ụng v platform khi giao tiếp
Do vậy các ứng ụng v người l m ra phần mềm cần c một ng n ngữ hay cách thức để tổ chức ữ liệu ễ ng cho người ứng ụng v máy t nh đọc hiểu m
kh ng ị lệ thuộc ất kỳ v o tool hay platform cụ thề
XML – Extensible Markup Language
Trang 7o Cho phép tổ chức lưu trữ ữ liệu th o cấu tr c th o ngữ nghĩa ễ ng giao tiếp hay trao đổi B n c nh đ XML còn cho phép việc khai thác
ữ liệu một cách ễ ng th ng qua ất kỳ tr nh so n thảo đ n giản nhất
o Nội ung v tổ chức được lưu trữ trong fil c phần mở rộng l xml
o Các nội ung qui định cách viết nội ung viết xml tuân th o các qui định của W3C chi tiết t i trang www.w3c.org
Hỗ trợ kiểm tra x m XML c đ ng qui định định ng của quá
tr nh giao tiếp hay kh ng vali ation th ng qua các qui định thiết lập trong DTD hay Sch ma
Chỉ kiểm tra x m XML c viết đ ng qui luật qui định hay kh ng kiểm tra w ll-form kh ng kiểm tra vali ation
Các th tag của XML thường kh ng được định nghĩa trước m ch ng được
t o ra th o quy ước của người hoặc Chư ng tr nh t o ra XML th o những quy ước của ch nh họ
XML sử ụng các khai áo kiểu ữ liệu DTD Docum nt Typ D finition hay lược đồ Sch ma để m tả ữ liệu
Ưu điểm của XML:
Dữ liệu độc lập l ưu điểm ch nh của XML Do XML chỉ ng để m tả ữ liệu ằng ng t xt n n tất cả các chư ng tr nh đều c thể đọc được XML
Dễ ng đọc v phân t ch ữ liệu nhờ ưu điểm n y m XML thường được ng
để trao đổi ữ liệu giữa các hệ thống khác nhau
Dễ ng để t o 1 fil XML
Lưu trữ cấu h nh cho w sit
Trang 81.2 Cấu trúc tài liệu XML
Gồm có 02 phần
o Document prolog: Chứa đựng các th ng tin tổng quan về t i liệu –
m ta ata v ao ồm 02 phần
Khai báo: XML Declaration
Phần ổ trợ cung cấp th ng tin về t i liệu XML misc llan ous
ao gồm Document Type Declaration, comments, processing instructions, whitespace, …
To n ộ phần Docum nt prolog c hay kh ng c cũng được
nhưng khuyến cáo của W3C n n luôn có dòng XML
Declaration
o Root Element: đây l tag lớn uy nhất của t i liệu chứa tất cả tag con
n trong v nội ung của t i liệu XML
H nh 1.1 Cấu tr c một t i liệu XML
Một v ụ đ n giản về t i liệu XML
Trang 9H nh 1.2 V ụ về 1 t i liệu XML
Định nghĩa các thành phần trong cấu trúc XML
o T i liệu XML n n ắt đầu với XML claration ở òng đầu ti n
Cú pháp khai báo
<?xml version=”” encoding=”” standalone=”” ?>
Thuộc t nh v rsion trong c pháp xml tr n thể hiện các th nh phần XML được viết phải tuân th o qui định trong v rsion Thuộc
t nh n y ắt uộc phải sử ụng khi c khai áo xml ở tr n Hiện
t i c 2 v rsion của XML cái đầu ti n XML 1.0 được định nghĩa đầu ti n v o n m 1998 kể từ đ n trải qua nhiều lần sửa đổi nhỏ nhưng vẫn giữ nguy n v rsion t n l 1.0 v đến 2008 th
đ l phi n ản thứ 5 của XML 1.0 n được ng rộng r i v
lu n được khuy n l n n sử ụng Phi n ản thứ 2 l XML 1.1 được c ng ố ng y 4/2/2004 ản thứ 2 của XML 1.1 được c ng
ố ng y 16/8/2006 những thay đổi ch nh của ản 1.1 l cho phép
c khả n ng sử ụng các ký tự kết th c òng ựa tr n nền tảng EBCDIC và Unicode 3.2 nhưng n kh ng được ng rộng r i v chỉ ng khi ta muốn sử ụng các t nh n ng khác iệt đ Muốn
Trang 10iết nhiều h n về sự khác iệt của n th v o http:// n.wikip ia.org/wiki/XML để x m
Thuộc t nh nco ing thể hiện nội ung chuyển đổi ký tự trong t i liệu xml để pars r chuyển đổi nội ung v n ản đ ng định ng chữ để chuyển đến cli nt Thuộc t nh n y l c hay kh ng c cũng được Khi kh ng c mặc định l UTF-8
Thuộc t nh stan alon th ng áo cho pars r iết l t i liệu c tham chiếu hay kh ng tham chiếu đến các ntity được định nghĩa
ở n ngo i t i liệu hay mặc định được khai áo ởi pars r
Giá trị y s: t i liệu kh ng tham chiếu đến các xt rnal ntity
Giá trị no: giá trị mặc định nếu thuộc t nh nco ing kh ng được khai áo để thể hiện t i liệu sẽ tham chiếu đến xt rnal ntity
o Processing Instructions
Các lệnh thực thi được y u cầu đến ộ pars r
C pháp: ắt đầu với <? V kết th c với ?> nhưng kh ng phải l
<?xml ?>
o Whitespace
L các khoảng trắng – spac s ký tự xuống h ng – carriage
r turns ký tự ắt đầu h ng – linefeeds, và các tab – tabs
Document Type Declaration
Khai áo hay tham chiếu đến DTD hỗ trợ vali ation
Cho phép ghi ch giảng giải nội ung thực hiện v sẽ được pars r
ỏ qua khi parsing
Cú pháp: <!– nội ung ch th ch –>
Không được phép c comm nt lồng trong comm nt
Được xuất hiện ất kỳ trong đâu ngo i trừ trước XML claration kh ng được nằm trong phần t n tag
Kh ng được phép c ký tự “–” ở giữa comm nt
o Marked-up tag
Được ng trong phần thân của t i liệu
Bao gồm tag ắt đầu tag kết th c tag cho thân rỗng tham chiếu đến các ntity tham chiếu đến các ký tự comm nts …
Trang 11 L tất cả các chữ v ký tự kh ng nằm trong các tag markup Hay
l ký tự ất kỳ trong v n ản nằm trong thân tag hay ất kỳ đâu ngoài tag
C thể kết hợp với các whit spac
Được parsing ởi pars r PCDATA v c thể kh ng được pars
ởi pars r v để nguy n giá trị để gửi tới ứng ụng CDATA
C pháp để chữ kh ng được pars <![CDATA[…]]>
o Lưu ý: CDATA kh ng thể lồng th m CDATA v c pháp của
n phải ch nh xác giữa các ấu hiệu nghĩa l kh ng được c
th m ất kỳ khoảng trắng n o cả
1.3 Cú pháp XML và Well – formed tài liệu XML
Một t i liệu xml vali ation th phải l t i liệu viết đ ng c pháp – well-formed
Mặc định các ộ pars r chỉ kiểm tra w ll-form o vậy muốn kiểm tra vali ation th
ộ pars r phải được thiết lập để thực hiện nội ung n y
Well-formed: các qui định tổng quát về cách thức viết XML đúng cú pháp
Tài liệu XML chỉ có duy nhất một tag làm root duy nhất và sẽ chứa tất cả các node con bên trong
o Nội dung này thể hiện khái niệm tư ng tự như m h nh cây chỉ có một nốt root duy nhất và là cha duy nhất trong cây sau đ l các no con
n ưới
Các tag trong tài liệu xml phải tuân thủ qui luật là mở tag phải c đ ng tag
<a c>…</a c>
Nếu là tag rỗng thì phải dùng d ng cú pháp <abc/>
Ký tự đầu tiên của tên luôn bắt đầu với một chữ hay dấu g ch ưới (_)
Kế tiếp ký tự theo có thể là chữ, số, g ch ưới, g ch ngang, dấu chấm, và dấu chấm phẩy
Trong tên không cho phép bất kỳ ký tự khoảng trắng, enter, tab (whitespace) nào cả
T n n n đặt c ý nghĩa v ễ ng đọc hiểu
Các tên tag phải tuân theo qui luật đặt tên
Tên của các thuộc tính trong tag là duy nhất
Trang 12 Nếu tên thuộc tính có kết hợp với namespace (qualified name bao gồm
nam spac _pr fix:local_nam th cũng phải tuân theo qui luật nó là duy nhất
o Tên namespace là giống nhau
o Tên local name là khác nhau
Thuộc tính luôn xuất hiện một cặp bao gồm
o tên_thuộc_t nh = “giá trị của thuộc t nh” hay
o tên_thuộc_t nh = „giá trị của thuộc t nh‟
Tất cả các tag trong tài liệu phải được lồng nhau th o đ ng thứ tự, tag không được đ ng mở tùy ý
Tất cả khai báo namespace trong tài liệu XML phải có prefix khác nhau, duy nhất v tuân đ ng luật về đặt t n tư ng tự như tag
XML là một ngôn ngữ có phân biệt hoa thường – case sensitive, do vậy, chúng
ta cần lưu ý khi sử dụng ký tự trong quá tr nh đặt tên và truy xuất
XML Basic: Syntax Rules
Các luật c pháp của XML th rất đ n giản v logic các luật cũng ễ học v ễ
sử ụng
Tất cả các element đều phải có tag đóng
Trong HTML một v i l m nt kh ng cần phải c tag đ ng thật sự đ ng quy chuẩn th phải c nhưng ộ phân t ch c pháp của HTML vẫn chấp nhận mà không
áo lỗi nhưng sẽ ảnh hưởng đến phần nội ung kể từ đ trở đi)
Phân biệt chữ hoa chữ thường
Trong XML th <L tt r> khác <l tt r> Tag đ ng v tag mở phải giống nhau y hệt
<Message>This is incorrect</message>
<message>This is correct</message>
Trang 13 Lồng nhau thì phải đúng thứ tự
Trong HTML lồng kh ng th o thứ tự cũng kh ng áo lỗi:
<b><i>This text is bold and italic</b></i>
Còn trong XML th tuyệt đối phải đ ng thứ tự:
<b><i>This text is bold and italic</i></b>
Các giá trị của thuộc tính phải được bao lại bằng nháy kép
El m nt XML c thể c các thuộc t nh th o cặp như nam /valu như HTML Trong XML th các giá trị phải được nằm trong nháy kép X m thử 2 v ụ ưới v ụ đầu th sai v ụ sau th đ ng:
<message>if salary < 1000 then</message>
Để tránh điều n y thay thế “<” ằng 1 thực thể tham chiếu
Ví ụ:
Trang 14<message>if salary < 1000 then</message>
Dưới đây l ảng thực thể tham chiếu trong XML:
Bảng 1.2 Thực thể tham chiếu
Lưu ý: Chỉ c ấu < v & l kh ng hợp lệ trong XML mấy ký hiệu khác th cũng c
thể sử ụng được tuy nhiên tốt nhất l n n thay thế ch ng
Ghi chú trong XML
Cũng giống HTML đ l :
<! This is a comment >
Khoảng trắng được giữ nguyên trong XML
Trong HTML th các khoảng trắng ư thừa sẽ ị cắt đi hết chỉ giữ l i 1 cái khoảng trắng Còn trong XML th n kh ng ị cắt
XML lưu trữ dòng mới như là LF (line Feed)
Các ứng ụng win ows lưu trữ 1 òng mới: Ký tự ắt đầu òng v ký tự xuống dòng (CR + LF)
o Unix and Mac OSX uses LF
o Old Mac systems uses CR
o XML stores a new line as LF
Một số ví dụ về well formed tài liệu XML
o Ví dụ 1
Trang 15 T i liệu ho n to n w ll-form cho tag thứ 2 ook c thứ tự con
kh ng đ ng thứ tự trong DTD v các tag khác nhưng luật w form kh ng đề cập đến thứ tự
ll- Khi Vi w t i liệu n y tr n Brows r ch ng ta thấy
Trang 17o Ví dụ 3
T i liệu kh ng w ll-form v tag mở kh ng tr ng tag đ ng
Trang 18o Ví dụ 4
T i liệu kh ng w ll-formed vì các khai báo trong DTD không có chứa các khoảng trắng y u cầu
Trang 19o Ví dụ 5
T i liệu kh ng w ll-formed v c chứa khoảng trắng trong tag
Trang 20o Ví dụ 6
T i liệu kh ng w ll-form v c chứa nhiều h n 1 no root
Trang 21o Ví dụ 7
T i liệu kh ng w ll-form v lồng tag t y ý
Trang 22o Ví dụ 8
T i liệu kh ng w ll-form v mở tag v kh ng đ ng tag
Trang 23o Ví dụ 9
Tài liệu w ll-formed
Trang 24o Ví dụ 10
T i liệu kh ng w ll-form v giá trị attri ut thiếu ấu đ ng ”
Trang 25o Ví dụ 11
T i liệu w ll-form v comm nt được v ụ
Trang 26o Ví dụ 12
T i liệu kh ng w ll-form v comm nt lồng comm nt
Trang 29 Để tránh lỗi ch ng ta sẽ ng CDATA s ction để th ng áo pars r ỏ qua
không parse
Khi view
Trang 30o Ví dụ 17
T i liệu kh ng w ll-formed vì sai cú pháp CDATA
Trang 31o Ví dụ 18
T i liệu không well-form v trong ký tự parsing chứa ký tự kh ng cho
phép l ấu & thể hiện tham chiếu ntity
Thực hiện chỉnh sửa ằng cách ỏ ký tự & hay ao ằng CDATA như n ưới
Trang 32 View
Trang 33 Ví dụ 19: ví dụ về thuộc tính standalone
T i liệu stan alon t đặt c ng thư mục t i liệu xml
Thực hiện vali ation t i liệu v mặc định n đ w ll-formed
o Ta sẽ thấy th ng áo lỗi l kh ng t m thấy các khoảng trắng whit spac
v th o định nghĩa t i liệu XML chỉ viết thẳng tr n 1 h ng các ấu whit spac l ký tự đặt iệt được định nghĩa th ng qua các ntity o vậy khi parsing th pars r sẽ t m kiếm khi c tham chiếu đến DTD
o Nếu DTD được nh ng trực tiếp v o t i liệu như v ụ số 1 th pars r coi như các tham chiếu ntity được nh ng ngay v o trong t i liệu v sẽ
kh ng phát sinh lỗi whit spac như l v ụ tr n cho stan alon c giá trị y s hay no
o Nếu ch ng ta ỏ stan alon đi nghĩa l mặc định s t giá trị no th t i liệu hết lỗi
Trang 35Đặt t n El m nt XML phải th o các luật sau:
o Tên có thể chứa các chữ cái, số, và các ký tự khác
o Tên không thể bắt đầu bằng số và dấu chấm
o Tên không thể chứa từ “XML” hay l xml hay l Xml …
o Tên không thể chứa khoảng trắng Cách đặt tên tốt nhất
o Tên phải có tính mô tả : <first_name>, <last_name>
o Tên phải ngắn v đ n giản: như < ook_titl > chứ không nên dùng tên
<The_title_of_book>
o Tránh dùng dấu – (trừ) trong tên: first-name
o Tránh dùng dấu (chấm) trong tên: first.name
o Tránh dùng dấu : (hai chấm trong t n v n hay ng để gọi namespace
Naming style, Một số lời khuyên để cho 1 tài liệu XML trở nên chuyên nghiệp và dễ đọc:
o Viết chữ thường hết:<firstname>
o Viết chữ in hoa hết:<FIRSTNAME>
o G ch ưới phân cách cho từng từ:<first_name>
o Viết hoa ký tự đầu từ:<FirstName>
o Viết hoa ký tự đầu của từ thứ hai:<firstName>
Trang 36Một t i liệu XML thường đ i iện cho 1 CSDL tư ng ứng thế n n tốt nhất l lấy t n của các fi l column đặt t n cho l m nt
Các thuộc t nh thường cung cấp th m th ng tin m n kh ng phải 1 phần của
ữ liệu Trong v ụ ưới đây lo i fil kh ng quan trọng với ữ liệu nhưng c thể quan trọng với phần mềm m ta muốn nó thao tác với l m nt:
<file type="gif">computer.gif</file>
Thuộc tính XML phải bao lại bằng nháy kép
Giá trị của thuộc t nh phải lu n lu n được ao l i ằng nháy kép Cho giới t nh của 1 người l m nt p rson c thể được viết như sau:
<person sex="female">
or like this:
Trang 37<person sex='female'>
Nếu giá trị của thuộc t nh chứa nháy kép th ta c thể ng nháy đ n như sau:
<gangster name='George "Shotgun" Ziegler'>
or ta có thể sử dụng:
<gangster name="George "Shotgun" Ziegler">
1.4.3 Khi nào sử dụng Elements và Attributes
3 t i liệu XML chứa th ng tin giống nhau
Thuộc t nh Dat được sử ụng trong v ụ đầu ti n:
Trang 38<body>Don't forget me this weekend!</body>
o Thuộc tính không thể chứa nhiều giá trị 1 lúc(Element thì có thể)
o Thuộc tính không thể chứa cấu trúc cây (Element thì có thể)
o Thuộc tính thì không dễ mở rộng Các thuộc t nh nằm trong l m nt th kh đọc v ảo tr sử ụng l m nt cho
ữ liệu sử ụng thuộc t nh cho th ng tin m kh ng li n quan đến ữ liệu Đừng n n l m như thế n y:
<note day="10" month="01" year="2008"
to="Tove" from="Jani" heading="Reminder"
body="Don't forget me this weekend!">
</note>
Thuộc tính XML cho metadata
Thỉnh thoảng các ID tham chiếu được gán cho l m nt Những ID n y c thể được sử ụng để nhận ng l m nt XML V ụ:
Trang 39Nếu những đo n XML n y được th m v o kế n nhau sẽ xảy ra sự đụng độ về
t n Cả 2 đều chứa 1 l m nt l <ta l > nhưng các l m nt c sự khác iệt về nội ung v ngữ nghĩa
Một người ng hay một ứng ụng XML sẽ kh ng iết xử lý những sự khác iệt n y như thế n o
Trang 40 Giải quyết việc đụng tên bằng cách sử dụng tiền tố
Việc đụng độ t n trong XML c thể tránh 1 cách ễ ng ằng cách cho th m tiền tố trước t n X m v ụ sau:
Khi sử ụng tiền tố trong XML một nam spac t n gọi cho 1 tiền tố phải được
xác định Nam spac được định nghĩa ằng thuộc t nh xmlns trong tag mở của 1
element Khai báo namespace theo cú pháp sau: