1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI GIẢNG Giới thiệu XML

65 167 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 65
Dung lượng 787 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

trường web. cần một ngôn ngữ tương tự nhưng đơn giản hơn này chỉ để mô tả cách hiển thị, không mô tả ý nghĩa của dữ liệu.. ĐHKHTN-CNTT-Lương Hán Cơ 23 End-of-Line Whitespace hành Windo

Trang 1

ĐHKHTN-CNTT-Lương Hán Cơ 1

Giới thiệu XML

GV Lương Hán Cơ Khoa CNTT – ĐH KHTN

Trang 3

ĐHKHTN-CNTT-Lương Há

n Cơ

3

Binary files

nó mới hiểu tất cả ý nghĩa của tất cả các bit.

binary file với định dạng riêng Người lập trình viết ct này quyết định mã nhị phân bao nhiêu sẽ tương ứng với bold text, break …

Và chỉ có MS Word thể hiện và in tài liệu đúng định dạng như lúc soạn thảo.

Trang 4

sang định dạng của hãng.

Trang 5

ĐHKHTN-CNTT-Lương Há

n Cơ

5

Text files

thành một mã số Và mã số này được ánh xạ thành một chữ cái.

đổi thành kí tự ‘a’.

bản đơn giản nhất.

Trang 6

ĐHKHTN-CNTT-Lương Há

n Cơ

6

Text files

Trang 7

ĐHKHTN-CNTT-Lương Há

n Cơ

7

SGML

máy tính, lưu trữ được meta data và dễ dàng được sử dụng bởi

nhiều chương trình.

Trang 9

ĐHKHTN-CNTT-Lương Há

n Cơ

9

XML ?

trường web. cần một ngôn ngữ tương tự nhưng đơn giản hơn

này chỉ để mô tả cách hiển thị, không mô tả ý nghĩa của dữ liệu.

giản lược hóa.

Trang 10

root element

Trang 11

ĐHKHTN-CNTT-Lương Há

n Cơ

11

Khái niệm cơ bản

self-closing tag: <middle/>

– Sai : <P> Some <STRONG> <STRONG> formatted

<EM> text</STRONG> </STRONG> , but</EM> </EM>

no grammar no good!</P> </P>

Đúng : <P> <P> Some <STRONG> <STRONG> formatted

<EM> text</EM> </EM> </STRONG><EM> ,

Trang 12

của dữ liệu họ tên gồm 3 thành phần trong đó: họ, tên lót, tên.

type Trong đó có những luật mà các element phải tuân thủ.

Trang 13

– Element gốc phải là <name>

– <first>, <middle>, <last> phải là con của <name>

element.

– <first>, <middle>, <last> tuân theo thứ tự xác định.

– Phải có thông tin trong 2 element <first>, <last>.

– Không nhất thiết phải có thông tin trong <middle>

element.

không đủ để mô tả toàn bộ ý nghĩa trong thế giới thực.

sao cho phù hợp với ứng dụng chúng ta nhất và rồi sử dụng nó.

Trang 14

đổi và hiện thị trang web.

tượng ở máy khác Sử dụng XML và HTTP.

phép thông qua firewall.

Trang 15

khoảng trắng trước kí tự “>”

Trang 16

trường hợp.

Trang 22

This is a paragraph It has a whole bunch of space.

whitespace bị loại bỏ Lý do bởi vì IE không hiển thị trực tiếp nội dung XML mà sử dụng kỹ thuật XSL để chuyển đổi tài liệu XML

sang HTML, và hiển thị nó dưới dạng HTML Và HTML thì sẽ loại bỏ whitespace.

Trang 23

ĐHKHTN-CNTT-Lương Há

n Cơ

23

End-of-Line Whitespace

hành Windows Windows đều sử dụng 2 kí tự line feed line feed (10) và carriage carriage return (13).

Trên hệ điều hành UNIX UNIX chỉ sử dụng một kí tự line feed line feed làm kí tự

xuống dòng.

parser sẽ chuyển tất cả kí tự xuống dòng thành kí tự line feed line feed

trước khi xử lý.

Trang 24

ĐHKHTN-CNTT-Lương Há

n Cơ

24

Whitespace in Markup

không có ý nghĩa Nói cách khác có thể loại bỏ mà không ảnh

hưởng đến tài liệu.

<anotherTag> Những whitespace chỉ có tác dụng để tài liệu dễ đọc hơn, và thực sự không phải là một phần nội

dung của tài liệu Những whitespace được gọi là

extraneous white space

Trang 25

ĐHKHTN-CNTT-Lương Há

n Cơ

25

Attributes

<tên thuộc tính>=“<giá trị>”

– Sai : <INPUT checked>

– Sai : <INPUT checked=true>

– Đúng : <INPUT checked='true'>

– Đúng : <INPUT checked="true">

– Sai : <INPUT checked="true'>

– Đúng : <info attr=“John's nickname”>

– Sai : <info attr=‘John's nickname’>

– Đúng : <info attr=‘I said “hi” to him’>

– Sai : <bad att="1" att="2"></bad>

Trang 26

ĐHKHTN-CNTT-Lương Há

n Cơ

26

Attributes

case-sensitive, không bắt đầu bằng từ “xml”, …

trong element.

– <name first="John" middle="Fitzgerald Johansen"

last="Doe"></name>

thông tin vào trong element hơn là attribute.

Trang 27

– sử dụng attribute vì không phải quan tâm nhiều đến việc

lồng những tag với nhau, cũng như giải quyết hiện tượng chồng chéo.

Trang 28

ĐHKHTN-CNTT-Lương Há

n Cơ

28

Why Use Attributes?

– <name nickname='Shiny John' first='John'

middle='Fitzgerald Johansen' last='Doe'></name> (88

kí tự)

– <name nickname="Shiny John"> <first>John</first>

<middle>Fitzgerald Johansen</middle>

<last>Doe</last> </name> (112 kí tự)

Trang 29

ĐHKHTN-CNTT-Lương Há

n Cơ

29

Why Use Attributes?

khác để chia nhỏ thông tin.

element đó Nói cách khác, attribute dùng để chứa meta data.

nhất, tiện nhất Và XML thì hổ trợ tất cả.

Trang 30

ĐHKHTN-CNTT-Lương Há

n Cơ

30

Comments

<! nội dung ghi chú >

Trang 32

ĐHKHTN-CNTT-Lương Há

n Cơ

32

XML Declaration

<?xml version='1.0' encoding='UTF-16' standalone='yes'?>

– Bắt đầu bằng “<?xml”, kết thúc bằng “?>”.

– Bắt buộc phải có thuộc tính version.

– Tùy chọn đối với 2 thuộc tính encoding, standalone.

– Nếu sử dụng cả 3 thuộc tính thì phải theo thứ tự như ở ví

dụ trên.

– Phiên bản đặc tả của XML parser phải giống với phiên

bản đặc tả của tài liệu XML

Trang 34

ĐHKHTN-CNTT-Lương Há

n Cơ

34

Standalone

XML này, không liên quan đến bất kỳ file nào khác.

Trang 35

<?xml version='1.0' encoding='UTF-16' standalone='yes'?>

<name nickname='Shiny John'>

Trang 36

– Sai : <comparison>6 is < 7 & 7 > 6</comparison>

Giải quyết: dùng kí tự escape, sử dụng bảng mã, hay đánh dấu trong đoạn CDATA

– &#nnn; với ‘nnn’ là Unicode number ở hệ thập phân

– &#xnnn; với ‘nnn’ là Unicode number ở hệ thập lục phân

– kí tự ‘©’ được thay bằng &#169; hay &#xA9;

Trang 38

nào có trong XML cho chương trình ứng dụng.

– MSXML:

http://msdn.microsoft.com/downloads/webtechnology/xm l/msxml.asp

– Apache Xerces: http://xml.apache.org/

– Vivid Creations ActiveDOM:

http://www.vivid-creations.com

http://www.w3.org/TR/1998/REC-xml-19980210#sec-intro

Trang 39

ĐHKHTN-CNTT-Lương Há

n Cơ

39

Lỗi trong XML

– errors: do quy phạm một số ràng buộc của tài liệu, dẫn

đến kết quả không xác định; parser cho phép phục hồi

và xử lý tiếp.

– fatal errors: lỗi do sai cú pháp, quy định của ngôn ngữ

XML Parser sẽ chấm dứt ngay.

Trang 40

ĐHKHTN-CNTT-Lương Há

n Cơ

40

Why use Namespaces?

những từ khóa riêng.

mang ý nghĩa khác nhau.

nhau.

liệu) sẽ nãy sinh vấn đề xung đột về tên gọi.

Trang 41

<body> <h1>John Doe</h1>

<p>John's a great guy, you know?</p>

</body>

</html>

</résumé>

</person>

Trang 42

ĐHKHTN-CNTT-Lương Há

n Cơ

42

Giải pháp

trong tài liệu.

về cấu trúc <title> trong <person> sẽ có ý nghĩa là danh xưng, còn <title> trong <résumé> là tiêu đề của phần nội dung lý lịch.

Trang 44

ĐHKHTN-CNTT-Lương Há

n Cơ

44

Namespaces

lập trình Java và NET

Trang 45

ĐHKHTN-CNTT-Lương Há

n Cơ

45

Phải hơn thế nữa…

diện tài nguyên trên Internet.

Trang 46

ĐHKHTN-CNTT-Lương Há

n Cơ

46

XML Namespaces

qualified names (QName QName )

<pers pers :person xmlns xmlns :pers pers ="http://mycompany.com/pers"/>

trong đó xmlns (xml namespace) dùng để khai báo sự tương đương giữa prefix và URI namespace.

Trang 47

<pers pers :name>

<pers pers :title>Sir</pers pers :title>

<pers pers :first>John</pers pers :first>

<pers pers :middle>Fitzgerald Johansen</pers pers :middle>

<pers pers :last>Doe</pers pers :last>

</pers pers :name>

<pers pers :position>Vice President of Marketing</pers pers :position>

<pers pers :résumé> <html html :html> <html html :head>

<html html :title>Resume of John Doe</html html :title>

</html html :head>

<html html :body> <html html :h1>John Doe</html html :h1>

<html html :p>John's a great guy, you know?</html html :p>

</html html :body> </html html :html>

</pers pers :résumé>

</pers pers :person>

Trang 48

<pers pers :name>

<pers pers :title>Sir</pers pers :title>

<pers pers :first>John</pers pers :first>

<pers pers :middle>Fitzgerald Johansen</pers pers :middle>

<pers pers :last>Doe</pers pers :last>

</pers pers :name>

<students students :ID>321-23437</students students :ID>

<students students :grade>A</students students :grade>

</pers pers :person>

Trang 49

quả: 2 element của prefix thuộc về 2 namespace khác nhau.

<?xml version="1.0" encoding="ISO-8859-1"?>

<student student:person xmlns:student="http://vnu.org/students" xmlns:student="http://vnu.org/students" >

<student student:name>

<student student :title>Sir</student student:title>

<student student :first>John</student student:first>

<student student :middle>Fitzgerald Johansen</student student:middle>

<student student :last>Doe</student student:last>

</student student:name>

<student student :ID

xmlns:student="http://uns.com/students" >

321-23437</student student :ID>

<student student :grade

xmlns:student="http://uns.com/students" >

A</student student :grade>

</student student:person>

Trang 50

ĐHKHTN-CNTT-Lương Há

n Cơ

50

Default namespaces

Cũng có ý nghĩa như một namespace bình thường, ngoại trừ

là không cần chỉ định prefix khi sử dụng.

Trang 51

<html:body> <html:h1>John Doe</html:h1>

<html:p>John's a great guy, you know?</html:p>

</html:body>

</html:html>

</résumé>

</person>

Trang 52

<head><title>Resume of John Doe</title></head>

<body> <h1>John Doe</h1> <p>John's a great guy, you know?</p></body> </html>

</résumé>

</person>

Trang 53

ĐHKHTN-CNTT-Lương Há

n Cơ

53

Vô hiệu default namespaces

Đôi khi chúng ta muốn element không có sử dụng default namespace.

I've worked with <name>Jane Doe</name> <name>

for over a <em>year</em> now.</p>

<p xmlns="http://www.w3.org/1999/xhtml" xmlns="http://www.w3.org/1999/xhtml">I've worked

with <name xmlns="" <name xmlns="" >Jane Doe</name> for over a

<em>year</em> now.</p>

</notes>

</employee>

Trang 54

ĐHKHTN-CNTT-Lương Há

n Cơ

54

Khai báo namespaces

<pers:person xmlns:pers="http://mycompany.com/pers" xmlns:pers="http://mycompany.com/pers"

Trang 55

ĐHKHTN-CNTT-Lương Há

n Cơ

55

Namespaces & attributes

– Thuộc tính id không thuộc default namespace, mà liên

quan đến name element.

Trang 56

ĐHKHTN-CNTT-Lương Há

n Cơ

56

Namespaces & attributes

Trang 57

ĐHKHTN-CNTT-Lương Há

n Cơ

57

Namespaces & attributes

Trang 63

element trong tài liệu XML này

Trang 64

      < aaa xmlns:lower = " http://zvon.org/lowercase " >

       < lower:BBB xmlns:lower = " http://zvon.org/uppercase " >       < lower:x111 />

</ OOO > Xác định namespace của những

element trong tài liệu XML này

Ngày đăng: 25/08/2017, 08:04

TỪ KHÓA LIÊN QUAN

w