BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC MỞ T.P HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
ª©
Luận Văn Tốt Nghiệp Cử Nhân Tin học
Đề Tài:
TÌM HIỂU HTML VÀ CÔNG NGHỆ XML
XÂY DỰNG TRÌNH BIÊN DỊCH HTML SANG
XML
GVHD: TS. NGUYỄN VĂN HIỆP
SVTH : NGUYỄN KHÁNH NGỌC
MSSV : 10366056
NIÊN KHÓA 2003 – 2007
LỜI CẢM ƠN
Trong quá trình tìm hiểu và hiện thực ứng dụng, em đã đựơc sự giúp đỡ
hết sức tận tình của thầy Nguyễn Văn Hiệp. Thầy đã định hướng, cung cấp
những kiến thức hết sức quý báu, làm kim chỉ nam cho em với tất cả nhiệt
huyết của mình. Ngòai ra thầy cũng đã tạo điều kiện thuận lợi nhất cho em
báo cáo. Với tất cả lòng biết ơn em xin chân thành cảm ơn thầy Nguyễn
Văn Hiệp.
Em cũng xin chân thành cám ơn quý Thầy Cô trong Khoa Công Nghệ
Thông tin đã tận tình giảng dạy, trang bị cho chúng em những kiến thức
căn bản quý báu trong những năm học vừa qua.
Con xin chân thành cảm ơn Ông Bà, Cha Mẹ đã luôn động viên, ủng hộ
vật chất lẫn tinh thần trong thời gian qua.
Đồng thời, em muốn gửi lời cảm ơn đến các bạn đã cùng em thảo luận
trong quá trình tìm hiểu công nghệ.
Mặc dù đã cố gắng hoàn thành luận văn trong phạm vi và khả năng cho
phép nhưng chắc chắn sẽ không tránh khỏi những thiếu sót. Em rất mong
nhận được sự thông cảm, góp ý và tận tình chỉ bảo của quý Thầy Cô, để em
có thể phát triển luận văn hơn nữa cho mục đích học tập của mình.
Tp. Hồ Chí Minh, tháng 12 năm 2007
Sinh viên thực hiện
Nguyễn Khánh Ngọc
LỜI MỞ ĐẦU
Thế kỷ 21 – thể kỷ của sự bùng nổ công nghệ thông tin, các công nghệ
tiên tiến phát triển như vũ bão, mang lại một một luồng gió mới thổi vào
nhận thức của mỗi người. Internet ra đời đánh dấu một bước tiến dài trong
việc chia sẻ thông tin trên thế giới thông qua máy tính. Bên cạnh sự phát
triển mạnh mẽ của Internet, XML đang dần dần trở thành một chuẩn chung
cho việc trao đổi dữ liệu cho những ứng dụng chạy trên môi trường
Internet.
XML dễ dàng chia sẻ thông tin qua những định dạng khác nhau thông
qua môi trường web. XML được thiết kế dành cho mọi người, được mọi
người sử dụng. Trong quá trình trưởng thành và phát triển, XML đã đối
mặt và đương đầu với nhiều thử thách trong việc thuyết phục các nhà lập
trình rằng XML là sự lựa chọn hàng đầu vì nó dễ dàng để hiểu, dễ dàng để
đọc, và dễ dàng thực hiện.
Nhận thấy tầm ảnh hưởng rộng lớn của XML trong ngành Công Nghệ
Thông Tin. Em quyết định tìm hiểu công nghệ XML và xây dựng ứng dụng
trình biên dịch HTML thành XML.
MỤC LỤC
Chương 1: Nội dung và yêu cầu đề tài .......................... 1
1.1. Nội dung đề tài .................................................................................................... 1
1.2. Yêu cầu đề tài ...................................................................................................... 1
Chương 2: KIẾN THỨC NỀN TẢNG .......................... 2
2.1. HTML .................................................................................................................. 2
2.1.1. Lịch sử phát triển.......................................................................................... 2
2.1.2. Danh sách các thẻ trong Html...................................................................... 9
2.2. Công nghệ XML................................................................................................ 16
2.2.1. Lịch sử phát triển........................................................................................ 16
2.2.2. Giới thiệu..................................................................................................... 17
2.2.3. Các đặc điểm của XML............................................................................... 18
2.2.4. Mục tiêu ra đời và lợi ích và nhược điểm khi sử dụng XML.................... 19
2.2.5. Khuôn dạng tài liệu XML........................................................................... 23
2.2.6. Những thành phần của một tài liệu XML ................................................. 24
2.2.7. Một tài liệu XML hợp lệ ............................................................................. 24
2.2.8. Cách sử dụng một tài liệu XML ................................................................. 25
2.2.9. Nhận xét về XML ........................................................................................ 28
2.3. DTD (Document Type Definition) ................................................................... 29
2.3.1. Tạo khai báo và định nghĩa kiểu tư liệu DTD ........................................... 29
2.3.2. Định nghĩa DTD ngoại............................................................................... 30
2.3.3. Thực thể ...................................................................................................... 31
2.3.4. Thuộc tính ................................................................................................... 32
2.3.5.. Nhúng dữ liệu phi XML vào tài liệu ......................................................... 34
2.3.6. Nhúng nhiều thực thể phi định dạng vào tài liệu ..................................... 34
2.4. Lược đồ Schema................................................................................................ 35
2.5. Xpointer ............................................................................................................. 38
2.6. Xpath.................................................................................................................. 41
2.7. XSLT .................................................................................................................. 45
2.7.1. Giới thiệu..................................................................................................... 45
2.7.2. Đặc điểm cơ bản của XSLT........................................................................ 46
2.8. DOM và SAX..................................................................................................... 46
2.8.1. DOM ............................................................................................................ 46
2.8.2 SAX............................................................................................................... 56
2.9 So sánh giữa DOM và SAX .............................................................................. 59
Chương 3: Phân Tích Ứng Dụng................................. 61
3.1. Giới thiệu ứng dụng .......................................................................................... 61
3.2 Cách tiếp cận bài toán ....................................................................................... 62
3.3. Xác định nhóm chức năng................................................................................ 64
Chương 4: Thiết Kế Ứng Dụng ................................... 65
4.1. Môi trường phát triển.......................................................................................
4.2. Chức năng quản lý file......................................................................................
4.3. Chức năng quản lý thư mục.............................................................................
4.4. Chức năng sọan thảo HTML ...........................................................................
4.4.1 Soạn thảo bằng văn bản thuần túy .............................................................
4.4.2 Soạn thảo một cách trực quan ....................................................................
65
65
65
65
65
65
4.5. Chức năng biên dịch một tài liệu HTML sang tài liệu XML........................ 68
4.5.1. Quan hệ giữa tài liệu HTML và thành phần bên trong nó ...................... 68
4.5.2. Quan hệ giữa các node trong tài liệu HTML ............................................ 69
4.5.4. Quan hệ giữa node và attribute (thuộc tính) ............................................. 70
4.5.5. Tổng hợp các mối quan hệ trong một tài liệu HTML ............................... 72
4.5.6. Hiện thực các lớp HtmlDocument, Node, Attribute .................................. 74
4.6. Chức năng tạo file XSL .................................................................................... 81
CHƯƠNG 5: Hiện Thực Ứng Dụng............................ 83
5.1. Danh sách chức năng ........................................................................................ 83
5.2. Màn hình ứng dụng .......................................................................................... 83
5.2.1. Màn hình chính .......................................................................................... 83
5.2.2. Các chức năng trong menu File ................................................................ 84
5.2.3. Chức năng open file .................................................................................... 85
5.2.4. Chức năng in tài liệu Html ......................................................................... 87
5.2.5.. Các chức năng trong menu Edit ............................................................... 89
5.2.6. Các chức năng trong menu View............................................................... 90
5.2.7. Các chức năng trong menu Insert ............................................................. 93
5.2.7. Chức năng chuyển sang chế độ soạn thảo Html trực quan ...................... 96
5.2.8. Các chức năng trong menu convert ........................................................... 97
Chương 6: Kết Luận Và Hướng Phát Triển ............ 103
6.1. Kết Luận ..........................................................................................................
6.1.1. Về mặt nghiên cứu lý thuyết.....................................................................
6.1.2. Về mặt ứng dụng.......................................................................................
6.2. Hướng phát triền ............................................................................................
103
103
103
103
TÀI LIỆU THAM KHẢO.......................................... 104
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
Chương 1: Nội dung và yêu cầu đề tài
1.1. Nội dung đề tài
Ngôn ngữ Đánh dấu Siêu văn bản – HTML là ngôn ngữ xuất bản điện tử thành công
nhất, song nó vẫn còn khá sơ sài. Vì HTML không quan tâm đến chữ hoa-chữ thường
nên trình duyệt web chịu áp lực rất nhiều để hiển thị.
XML ra đời nhằm mục đích giải quyết được các rắc rối của HTML. XML ngày càng
có ảnh hưởng to lớn trong ngành Công Nghệ Thông Tin. Ngay từ khi xuất hiện, XML
lập tức thu hút sự quan tâm đặc biệt của cộng đồng mạng vì những lợi ích to lớn mà nó
mang lại. Dữ liệu được lưu trữ và trao đổi trên Web dần dần được chuyển thành dạng
XML. Các chương trình có khả năng đọc hiểu văn bản XML nhanh chóng hình thành
trên mọi lĩnh vực của đời sống xã hội. Trên cở sở đó đề tài trình biên dịch HTML sang
XML được xây dựng nhằm mục đích chuyển các trang HTML sẵn có thành XML.
1.2. Yêu cầu đề tài
1.2.1. Về mặt lý thuyết:
• Nắm được cơ sở lý thuyết chung về HTML và XML
• Tìm hiểu các linh kiện phần mềm hỗ trợ duyệt các trang HTML và các trang
XML
1.2.2. Về mặt ứng dụng:
• Dựa vào kiến thức về HTML và XML đã tìm hiểu, xây dựng trình biên dịch
HTML sang XML
• Xây dựng trình soạn thảo HTML một cách trực quan.
• Xây dựng trình duyệt HTML và XML.
Trang 1
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
Chương 2: Kiến Thức Nền Tảng
2.1. HTML
2.1.1. Lịch sử phát triển:
1989: Tim Berners-Lee phát minh ra Web và sử dụng HTML làm ngôn ngữ xuất
bản.
World Wide Web được bắt đầu tại CERN.Thật ngạc nhiên CERN lại là địa điểm
cho các nhà vật lý học trên khắp thế giới gặp nhau để bàn luận.
Tim Berners-Lee là người phát minh ra Web. Vào năm 1989, Tim hình thành khái
niệm Web khi đang làm việc ở bộ phận bảo dưỡng máy tính của CERN. Ông không thể
lường trước sự phát triển mạnh mẽ của web. Quá trình nghiên cứu vật lý là sự cộng tác
giữa nhiều học viện trên thế giới. Tim có ý tưởng cho phép các nhà nghiên cứu từ
những nơi xa xôi trên thế giới có thể tổ chức và đóng góp thông tin với nhau. Nhưng
đơn giản chỉ là tổ chức một lượng lớn tài liệu nghiên cứu như các tập tin để mọi người
có thể tải về máy tính cá nhân. Theo cách hiểu khác, cũng có thể là những tham khảo
chéo từ một trang trong tài liệu nghiên cứu tới một trang khác. Những tài liệu thuộc về
khoa học và toán học có thể được trình bày như những dòng thông tin lưu trữ ở dạng
điện tử trên máy vi tính. Tim nghĩ rằng có thể thực hiện bằng cách sử dụng siêu văn
bản, cách liên kết các tài liệu lại với nhau là sử dụng những cái nút trên màn hình,
chúng ta chỉ đơn giản nhấp chuột vào đó để đi từ trang này đến trang khác. Trước khi
đến CERN, Tim đã phát triển hệ thống siêu văn bản đầu tiên của ông, ‘Enquire’ vào
năm 1980, chỉ có ông sử dụng.
1990: Giai đoạn trưởng thành cho phát minh của Tim
Ngay từ khi bắt đầu, siêu văn bản (hypertext) đã trở thành mốt và được sử dụng trên
máy tính. Cuối cùng, hệ thống tên miền mới đã làm cho việc định địa chỉ của một máy
tính trên internet dễ dàng hơn.
Hypertext: khái niệm siêu văn bản (hypertext) đã được thiết lập bởi các học viện từ
những năm đầu 1940. Vào cuối những năm 1980, Bill Atkinson, một lập trình viên xuất
sắc đang làm việc tại Apple Computer đã viết một ứng dụng gọi là Hypercard cho
Macintosh. Hypercard cho phép chúng ta xây dựng một loạt các thẻ hồ sơ (filing card)
trên màn hình, thẻ hồ sơ chứa thông tin nguyên bản (textual) và giao diện đồ họa
(graphical). Người dùng có thể điều hướng bằng cách nhấn các nút trên màn hình để
xem các thông tin.
Hypercard đặt nền móng cho các ứng dụng dựa trên ý tưởng thẻ hồ sơ (filing card).
Toolbook cho PC được sử dụng trong những năm đầu 1990 để xây dựng những khóa
đào tạo siêu văn bản có những trang với những cái nút có thể đi tới, đi lui hoặc nhảy tới
một chủ đề mới. Những cái nút khởi tạo những chương trình nhỏ gọi là kịch bản
(script). Những kịch bản nà sẽ điều khiển trang nào được trình bày kế tiếp.chúng có thể
chạy một diễn hoạt nhỏ trên màn hình.
Tuy nhiên vẫn có một giới hạn lớn: siêu văn bản chỉ có thể nhảy đến những tập tin
trên cùng một máy tính. Nhảy đến những máy tính trên thế giới vẫn còn vấn đề chưa
giải quyết được. Chưa ai thực hiện được một hệ thống liên kết siêu văn bản trên phạm vi
toàn cầu.
Hệ thống tên miền:vào giữa những năm 1980, Internet có một điều mới, hệ thống dễ
dàng sử dụng cho việc đặt tên các máy tính. Điều nay liên quan tới việc sử dụng ý tưởng
tên miền. Một tên miền gồm có một loạt các ký tự phân cách bởi dấu’.’, ví dụ:
www.erb.org.uk. Những cái tên này là một thay thế dễ sử dụng hơn nhiều so với những
con số của địa chỉ IP.
Trang 2
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
Một chương trình được gọi là Distributed Name Service (DNS) chuyển các tên miền
thành địa chỉ IP. DNS là một sự thành công trong việc đưa Internet tới những người
không am hiểu nhiều về máy vi tính. Trước khi có DNS địa chỉ email là nhugn74 k4 tự
khó hiểu để đặc tả đường đi tới một máy tính trên internet. Nhờ có DNS mà địa chỉ
email trở nên đơn giản hơn.
Chọn phương pháp thích hợp để tạo một hệ thống siêu văn bản toàn cầu
Đối với Tim Berbers-Lee, những liên kết siêu văn bản thì dường như là khả thi,
nhưng vấn đề là phải tìm cách để thực thi chúng. Sử dụng một gói siêu văn bản đang tồn
tại có thể là một gợi ý thú vị nhưng điều này không thực tiễn. Để bắt đầu, một số công
cụ siêu văn bản (hypertext tool) muốn được sử dụng rộng rãi phải đưa vào bản miêu tả
các loại máy tính đang tồn tại được liên kết vào Internet: Máy vi tính cá nhân, hệ máy
Macintoshes, UNIX và những thiết bị đầu cuối đơn giản. Nhiều phương pháp kỹ thuật
chế bản điện tử đã trở thành thịnh hành: SGML, Interleaf, Latex, Microsoft Word, và
Troff.
Tim đã đưa ra một khái niệm cơ bản, nhưng cách thú vị của việc chế bản văn bản là
triển khai một số phần mềm của riêng ông, và giao thức HTTP đơn giản của ông, để
nhận những văn bản của tài liệu khác thông qua những liên kết siêu văn bản. Giao thức
của riêng Tim, HTTP, viết tắt của HyperText Transfer Protocol. Định dạng văn bản cho
HTTP được đặt tên là HTML (HyperText Markup Language). Bằng cách giữ mọi thứ
đơn giản, Tim khuyến khích mọi người xây dựng trên ý tưởng của ông và thiết kế phần
mềm để hiển thị HTML, và để cài đặt những tài liệu HTML của chính họ sẵn sàng để
truy cập.
HTML của Tim dựa trên một phương pháp đánh dấu văn bản truyền thống đang
tồn tại
Tim phát minh ra HTML dựa trên SGML (Standard Generalized Markup
Language), một phương pháp đánh dâu văn bản thành những đơn vị có cấu trúc như là
đoạn (paragraph), tựa đề (heading), danh sách mục chọn (list item). Những phần tử
SGML có thể được thực thì trên nhiều hệ máy. Ý tưởng là ngôn ngữ được độc lập với
trình duyệt hoặc những phần mềm dùng để xem nó. Việc sử dụng các cặp thẻ như
<TITLE> và </TITLE> được lấy trực tiếp từ SGML. Những phần tử của SGML được
sử dụng trong HTML bao gồm p(paragraph); H1 tới H6(Heading level 1 tới Heading
level 6); OL (ordered list); UL(unordered lists); LI(list items) và những phần tử khác.
Nhưng SGML không có khai niệm liên kết siêu văn bản, ý tưởng sử dụng một phần tử
mỏ neo (anchor element) với thuộc tính HREF là phát minh của Tim.
HTML dựa trên SGML là một ý tưởng nổi bật. Những người khác cũng đã phát
minh ra ngôn ngữ của riêng họ từ mớ hỗn tạp của SGML nhưng cộng đồng Internnet
không tin tưởng và không chấp nhận. Sự đơn giản của HTML, và việc sử dụng thẻ A để
tạo những liên kết siêu văn bản làm cho phát mình của Tim trở nên hữu dụng.
Tháng 9 năm 1991: Những cuộc thảo luận về HTML trên Internet bắt đầu
Tim không giữ riên những ý tưởng của ông, mà chia sẻ với mọi người, thảo luận các
ý tưởng đó trên Internet. Vào 1992, một nhóm các học viện và những nhà nghiên cứu
máy tính tỏ ra rất quan tâm tới những ý tưởng của Tim. Dave Raggett từ phòng nghiên
cứu của Hewlett-Packard ở Bristol, là một trong những người rất nhiệt tình thảo luận
các ý tưởng của Tim.
Dave đã gặp Tim và bàn luận làm thế nào đưa HTML đến với mọi người, cố gắng
thấy trước những chức năng mà người dùng hực sự cần. Khi trở về Anh, Dave đã quyết
tâm viết HTML+, một phiên bản mới mạnh hơn HTML gốc.
Trang 3
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
1992: NCSA quan tâm tới ý tưởng Web
Trong lúc ấy, những ý tưởng của Tim được Joseph Hardin và Dave Thompson rất
quan tâm. Cả hai đang làm việc tại viện nghiên cứu của trường đại học Illinois tại
Champaign-Urbana. Họ kết nối tới máy tính của CERN và tải những bản copy của 2
trình duyệt web miễn phí. Nhận ra sự quan trọng của trình duyệt web, NCSA quyết định
phát triển một trình duyệt gọi là Mosaic.
Tháng 12 năm 1992: Marc Andreessen tham gia vào cuộc bàn luận trực tuyến
(WWW-talk)
Những người say mê web đã trao đổi ý tưởng trên một cuộc tranh luận trực tuyến
gọi là WWW-talk. Đây là nơi mà Dave Raggett, Tim Berner-Lee, Dan Connolly và
những người khác tranh luận những hình ảnh (những tấm hình, lưu đồ, ảnh minh họa…)
nên được chèn vào tài liệu HTML như thế nào. Bất ngờ, Marc Andreessen xuất hiện và
đưa ra một ý tưởng là sử dụng thẻ IMG của nhóm Mosaic.
Lúc đầu mọi người hầu như không thích thiết kế thẻ IMG, những Andressen không
dễ dàng từ bỏ ý tưởng của mình.Nhóm Mosaic gợi ý thực thi thẻ IMG trên biểu mẫu
(form) của trình duyệt Mosaic. Ngay này trong phiên bản HTML 4, thẻ OBJECT có
tiềm năng thay thế thẻ IMG
Tháng 3 năm 1993: Lou Montulli phát hành trình duyệt Lyns phiên bản 2.0a
Lou Montulli là một trong những người đầu tiên viết trình duyệt dựa trên văn bản.
Trình duyệt Lynx là một trình duyệt cho các thiết bị đầu cuối và những máy tính sử
dụng DOS, không phải Windows. Lou Montulli được tuyển vào làm việc cho Nescape
Communications Corp. Sự nhiệt tình cảu Lou và những hiểu biết của ông đã tạo nên sự
chuẩn hóa HTML.
Đầu năm 1993: Dave Raggett bắt đầu viết trình duyệt của riêng ông
Trong khi Eric Bina và NCSA mosaic làm việc suốt đêm. Dave Raggett dành phần
nửa thời gian để viết trình duyệt Arena của ông. Dave hi vọng thực hiện tất cả các chức
năng mới cho HTML.
Tháng 4 năm 1993: Trình duyệt Mosaic được phát hành
Vào tháng 4 năm 1993, phiên bản của trình duyệt Mosaic được phát hành cho máy
trạm của Sun Microsystems Inc, một máy tính được sử dụng trong sự phát triển phần
mềm, đang chạy hệ điều hành UNIX. Mosaic đã thừa kế những chức năng được đặc tả
bởi Tim Berners-Lee; ví dụ, nó đã chèn những hình ảnh, danh sách lồng và những biểu
mẫu (fill-out form)
Cuối năm 1993: Các công ty lớn đã đánh giá sự quan trọng của web
Viết phát triển trình duyệt Arena của Dave Raggett diễn ra rất chậm vì ông phải tự
đứng ra đảm trách, không có sự hỗ trợ, không đủ tiền để trả lương cho nhóm phát triển
phần mềm.
Có một quan niệm sai lầm là Internet chỉ dành cho các học viện. Trong một số công
ty, họ quả quyết là những công ty viễn thông sẽ cung cấp kỹ thuật để kết nối toàn cầu.
Kết quả là những cá nhân đang làm việc tại phòng các phòng nghiên cứu trong lĩnh vực
thương mại không dành nhiều thời gian để phát triển web. Điều này làm cho các nhà
nghiên cứu hơi thất vọng.
Dave Raggett nhận ra rằng không đủ giờ làm việc cho ông thực hiện những gì mà
ông cảm thấy quan trọng nhất, ông dành thời gian ở nhà để tiếp tục viết trình duyệt của
ông. Dave đã sử dụng trình duyệt để biễu diễn dòng văn bản xung quanh những hình
Trang 4
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
ảnh, biểu mẫu tại hội nghị WWW lần đầu tiên tại Geneva vào năm 1994. Sau đó trình
duyệt Arena được sử dụng để phát triển công việc ở CERN.
Từ trái sang phải: Joseph Hardin từ NCSA, Robert Cailliau từ CERN, Tim BernersLee từ CERN và Dan Connolly
Tháng 5 năm 1994: Hội nghị World Wide Web lần đầu tiên được tổ chức tại
Geneva với việc trình diễn HTML+
Tại hội nghị World Wide Web lần đầu tiên do CERN tổ chức với 380 người tham
dự, hầu hết họ đến từ Châu Âu nhưng đa số là người Mỹ. Nhưng thật bất ngờ là Marc
Andreessen. Jim Clark và Eric Bina không tham dự cuộc hội nghị. Hầu hết các thành
viên tham dự hội nghị đều thuộc các học viện, các viện nghiên cứu.
Trong suốt tuần diễn ra hội nghị, những phần thưởng được trao cho các thành tựu
đáng chú ý trên web; những phần thưởng này được trao cho Marc Andreesen, Lous
Mountulli, Eric Bina, Rob Hartill và Kevin Hughes. Dan Connolly, người đã định nghĩa
HTML 2, đã có một buổi trình bày trên tờ chiếu với tựa đề là Interoperability: Why
Everyone Wins, giải thích sự quan trọng của việc web hoạt động với một bản đặc tả
HTML đúng quy tắc.
Dave Raggett đang làm việc với một số ý tưởng HTML mới, cái mờ ông gọi là
HTML+. Tại hội nghị mọi người đồng ý rằng những chức năng của HTML+ nên được
xem xét để đưa tới sự phát triển của một chuẩn HTML 3. Dave Raggett, cùng với
CERN đã tiếp tục phát triển trình duyệt Arena. Sử dụng Arena, Dave Raggett, Henrik
Frystyk Nielsen, Hakon Li, và những người khác đã biễu diễn những dòng văn bản bao
quanh một hình ảnh với những lời thuyết minh, những bảng có thể thay đổi kích thước,
ảnh nền, toán học và những chức năng khác.
Tháng 9 năm 1994: The Internet Engineering Task Force (IETF) thành lập một
nhóm làm việc với HTML.
Đầu năm 1994, nhóm Internet Engineering Task Force được thành lập thành lập để
làm việc với HTML. IETF cho phép mọi người trong cộng đồng kỹ sư, những người
yêu thích khoa học máy tính có thể trở thành thành viên. Có thể tham gia các cuộc tranh
luận bằn email. Nhóm làm việc HTML gặp nhau 3 lần 1 năm để tranh luận về các chức
năng của HTML ở hiện tại và tương lai.
Trang 5
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
Tháng 7 năm 1994: Bản đặc tả của HTML 2 được phát hành
Trong suốt năm 1993 và đầu năm 1994, nhiều trình duyệt thêm một số mã của
chúng vào HTML. Cố gắng là sắp xếp lại sự hỗn độn đó, Dan Connolly và đồng nghiệp
đã tập hợp tất cả các thẻ HTML đang được sử dụng rộng rãi và sắp xếp chúng vào một
tài liệu bản thảo. Sau đó nó sẽ được lưu hành qua internet để mọi người chú thích. Ong6
cũng viết một Document Type Definition cho HTML 2, một loại bảng chỉ dẫn rõ ràng
của ngôn ngữ HTML
Tháng 10 năm 1994: Thành lập Netscape
Trong suốt năm 1993, Marc Andreessen cảm thấy không muốn đảm trách dự án
Mosaic. Sau khi tốt nghiệp, ông rời khỏi NCSA và chuyển đến California, và ông đã
gặp Jim Clark. Cùng với nhau, họ đã thành lập Mosaic Communications, sau này trở
thành Netscape Communications Corp vào tháng 11 năm 1994.
Trình duyệt mà họ thiết kế hết sức thành công, nhiều người còn tưởng nhầm là
Netscape đã sáng chế ra web. Netscape đã thiết kế trình duyệt tốt nhất để chắc chắn rằng
ngay cả những người sử dụng kết nối với băng thông chậm cũng có thể truy cập tới web
một cách hiệu quả.
Netscape đã bắt đầu sáng chế ra các thẻ HTML của riêng nó. Nescape hiếm khi
tham gia vào cuộc hội nghị WWW, nhưng dường như nó đang định hướng chuẩn
HTML.
Cuối năm 1994: The World Wide Web Consortium forms
World Wide Web Consortium thành lập vào cuối năm 1994 để hoàn thành những
tiềm năng của Web thông qua sự phát triển của những chuẩn mở. Họ có niểm đam mê
mạnh mẽ với HTML. Consortium đã tuyển mộ nhửng tên tuổi lớn trong cộng đồng web.
Đứng đầu là Tim Berners-Lee và một số thành viên khác
Những thành viên của the World Wide Web Consortium. Từ trái sang phải là
Henrick Frystyk Neilsen, Anselm Baird-Smith, Jay Sekora, Rohit Khare, Dan Connolly,
Jim Gettys, Tim Berners-Lee, Susan Hardy, Jim Miller, Dave Raggett, Tom Greene,
Arthur Secret, Karen MacArthur.
• Dave Raggett làm việc với HTML; từ Anh.
• Arnaud le Hors làm việc với HTML; từ Pháp.
• Dan Connolly làm việc với HTML; từ Mỹ.
• Henrik Frystyk Nielsen làm việc với HTTP cho phép Web hoạt động nhanh hơn;
từ Đan Mạch.
• Hakon Lie làm việc với style sheets; from Norway. Ông sống ở Pháp, đang làm
việc tại INRIA.
Trang 6
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
• Bert Bos làm việc với style sheets and layout; from the Netherlands.
• Jim Miller kiểm tra kỹ thuật, đánh giá nội dung trang Web; từ Mỹ.
• Chris Lilley làm với với style sheets and font support; từ Anh.
The W3 Consortium được đặt một phần ở phòng thí nghiệm khoa học máy tính ở
học viện công nghệ của Massachusetts tại Cambridge, Massachusetts ở Mỹ, và một
phần ở INRIA, the Institut National de Recherche en Informatique et en Automatique.
Consortium cũng được đặt ở đại học Keio tại Nhật. Chúng ta có thể xem các trang web
của Consortium tại địa chỉ ‘www.w3.org’.
Trong suốt năm 1995: HTML được mở rộng thêm nhiều thẻ mới
Vào năm 1995 nhiều loại thẻ HTML mới đã xuất hiện. Như là thuộc tính
BGCOLOR của thẻ BODY và FONT FACE điểu khiển diện mạo văn vản của một tài
liệu.
Tháng 3 năm 1995: HTML 3 được xuất bản như là một bản thảo Internet
Dave Raggett c1o những ý tưởng mới cho HTML, và ông đã chính thức hóa chúng
vào một tài liệu được xuất bản trên bản thảo internet. Một thẻ mới để chèn những hình
ảnh gọi là FIG, Dave hi vọng nó sẽ thay thế thẻ IMG. Ông thêm vào sự hỗ trợ cho Style
Sheet bằng cách thêm vào một thẻ STYLE và thuộc tính CLASS.
Mặc dù bản thảo HTML 3 được mọi người đón nhận, nhưng thật khó khăn để IETF
phê duyệt nó.
Tháng 8 năm 1995: Trình duyệt Internet Explorer của Microsoft xuất hiện
Phiên bản 1.0 của trình duyệt Internet Explorer của tập đoàn Microsoft đã được
công bố. Trình duyệt này cạnh tranh với trình duyệt của Netscape và phát triển những
chức năng HTML cảu riêng nó. Mirosoft phát triển kinh doanh trên web bằng việc mở
rộng các chức năng của HTML. Chức năng ActiveX là độc quyền cảu trình duyệt
Internet Explorer, và Netscape phát triển một plug-in gọi là Ncompass để đấu với
ActiveX.
Vào tháng 11 năm 1995, phát hành phiên bản Internet Explorer 2.0 cho hệ điều hành
Windows NT và Windows 95.
Tháng 9 năm 1995: Netscape đệ trình một bản đề xuất cho của khung (frame)
Vào thời gian này Netscape đệ trình một bản đề xuất về frame, liên quan tới việc
chia màn hình thành những khung độc lập. Bản đề xuất được thực thi trên trình duyệt
của Netscape.
Tháng 11 năm 1995: Những nhà cung cấp trình duyệt (vendor) thống nhất lại
tạo thành một nhóm mới để phát triển một chuẩn HTML
Vào tháng 11, 1995 Dave Raggett kêu gọi những người đại diện cho các công ty
trình duyệt gặp nhau để chuẩn hóa HTML. Lou Montulli từ Netscape, Charlie Kindel từ
Microsoft, Eric Sink từ Spyglass, Wayne Gramlich từ Sun Microsystems, Dave Raggett,
Tim Berners-Lee và Dan Connolly từ the W3 Consortium, and Jonathan Hirschman từ
Pathfinder đã triệu tập gần Chicago và đưa ra các quyết định hiệu quả cho HTML.
Tháng 11 năm 1995: Style sheets cho tài liệu HTML bắt đầu hình thành
Bert Bos, Hakon Lie, Dave Raggett, Chris Lilley từ World Wide Web Consortium
và những người khác đã gặp ở Versailles gần Paris để thảo luận việc triển khai
Cascading Style Sheets.
Trang 7
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
Tháng 7 năm 1996: Microsoft dường như quan tâm đến những chuẩn mở hơn
lúc đầu
Trình duyệt Internet Explorer đã hiện diện trên những hệ thống Macintosh và
Windows 3.1.
Trong hội nghị WWW lần thứ 2 được tổ chức tại Darmtadt ở Đức vào năm 1995,
Thomas Reardon tỏ ra rất quan tâm tới Web. Một năm sau đó, ông lưu ý tới quá trình
chuẩn hóa và muốn Microsoft làm theo cách của W3C và IETF. Microsoft đã sáng chế
ra thẻ MARQUEE, nó đã làm cho cộng đồng HTML thích thú. Thẻ MARQUEE làm
cho văn bản nhảy múa trên màn hình.
Tháng 1 năm 1997: HTML 3.2 đã sẵn sàng
Vào tháng năm 1997, W3 Consortium phê duyệt HTML 3.2. Tất cả những tổ chức
thành viên, bao gồm những nhà cung cấp trình duyệt chính như là Netscape và
Microsoft đã xem xét HTML 3.2. Như vậy bản đặc tả (specification) đã ổn định và được
mọi người duyệt web chấp nhận. Bằng việc mở một diễn đàn trung lập, W3 Consortium
đã thành công trong việc đạt dược sữ đồng tình về một chuẩn của phiên bản HTML.
HTML 3.2 có các bảng(table), applet,dòng văn bản bao quanh hình ảnh, chỉ sổ
dưới(subscript), chỉ số trên (superscript).
Mùa xuân năm 1998: HTML 4.0 ra đời
HTML 4.0 được W3C đề xuất vào năm 1998, nhưng để viết những trình duyệt thực
thi HTML 4.0 không phải là chuyện đơn giản.
HTML là ngôn ngữ định dạng, hay đánh dấu (mark-up). Thực tế, HTML được viết
tắt từ HyperText Markup Language. Một tập tin văn bản được đánh dấu bằng các thẻ
(tag) HTML cho phép người ta đọc được chúng trên máy tính của mình hay qua mạng
bằng phần mềm gọi là bộ duyệt (browser). Thẻ (tag) là một đoạn mã được giới hạn bởi
dấu ngoặc nhọn '<' và '>'. Bộ duyệt đọc các tag khi thực hiện định dạng tập tin HTML
trên màn hình. Những tài liệu có trên World Wide Web là các tập tin HTML.
HTML không mô tả trang tài liệu theo cách của một số ngôn ngữ máy tính khác. Có
những ngôn ngữ mô tả từng phần tử đồ họa và vị trí của nó trên trang tài liệu, bao gồm
font chữ, kích cỡ,... Ngược lại, HTML lại không đưa ra bất cứ mô tả nào về font, hình
ảnh đồ họa và chỗ để đặt chúng. HTML chỉ "gán thẻ" cho nội dung tập tin với những
thuộc tính nào đó mà sau đó chúng được xác định bởi chương trình duyệt để xem tập tin
này. Điều này giống như một người đánh dấu bằng tay một số đoạn trên bản tài liệu để
chỉ cho người thư ký những việc cần thiết như: "chỗ này in đậm", "chỗ này in nghiêng",
"chỗ này là tiêu đề", "chỗ này sang trang"...
HTML gán thẻ cho kiểu chữ, chèn file ảnh đồ họa, âm thanh, video vào văn bản, tạo
ra mối liên kết và hình thức gọi là siêu văn bản (hypertext). Siêu văn bản là đặc tính
quan trọng nhất của ngôn ngữ HTML. Điều này có nghĩa là một đoạn văn bản hay đồ
họa bất kỳ nào cũng có thể liên kết với một tài liệu HTML khác.
Ngôn ngữ HTML chính thức là một bộ đặc biệt bao gồm các thẻ (tag) mà tất cả các
bộ duyệt đều có thể hiểu được. Một số bộ duyệt còn có thể biên dịch được những tag bổ
sung ngoài phần chuẩn. Theo thời gian, bộ chuẩn được cập nhật những tag mới.
Mosaic, một trong số các bộ duyệt thông dụng được phát triển bởi NSCA (Trung
tâm ứng dụng máy siêu tính quốc gia Mỹ), lần đầu tiên kết hợp khả năng đồ họa màu
với văn bản HTML. Ngày nay, Netscape Navigator, do những người từ NSCA trước
đây thiết kế, trở thành bộ duyệt được ưa chuộng nhất bởi tốc độ và đặc tính mạnh.
Trang 8
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
2.1.2. Danh sách các thẻ trong Html
2.1.2.1. Các thẻ cơ bản
Document Type <HTML> </HTML>
Title
<TITLE> </TITLE>
Header
<HEAD> </HEAD>
Thẻ gốc, bắt đầu và kết thúc
tài liệu
Thẻ tiều đề, phải đặt ở đầu
trang
Thông tin mô tả
Body
<BODY> </BODY>
Ghi phần thân của tài liệu
2.1.2.2. Các thẻ định dạng
Bold
<B> </B>
Italic
<I> </I>
Underline
<U> </U>
Strikeout
<STRIKE> </STRIKE>
Strikeout
<S> </S>
Subscript
<SUB> </SUB>
Superscript
<SUP> </SUP>
Typewriter
<TT> </TT>
Width
Center
<PRE WIDTH=#> </PRE>
<CENTER> </CENTER>
Blinking
<BLINK> </BLINK>
Font Size
<FONT SIZE=?> </FONT>
In đậm văn bản
In nghiêng văn bản
Gạch dưới văn bản
Gạch bỏ văn bản
Gạch bỏ văn bản
Chỉ sổ dưới, giống như
chú thích cuối trang
Chỉ số trên, giống như
những số tham khảo chéo
Hiển thị kiểu chử điện báo
Chiều rộng của các ký tự
Canh giữa văn bản và hình
ảnh
Chữ nhấp nháy, chỉ dành
cho Netscape
Cỡ chữ cục bộ(từ 1-7)
Change
Font <FONT SIZE="+|-?"> </FONT>
Size
Font Color
COLOR="#$$$$$$">
</FONT>
Select Font
<FONT FACE="***"> </FONT>
Điều khiển cỡ chữ xuất ra
Point size
<FONT POINT-SIZE=#> </FONT>
Điều khiển màu sắc xuất
ra
Loại văn bản như là Time
New Roman
Kích thước văn bản
Weight
<FONT WEIGHT=?> </FONT>
Đặc tạ độ dày của văn bản
Base Font Size
<BASEFONT SIZE=#>
Marquee
<MARQUEE> </MARQUEE>
Kích cỡ của font (từ 1->7,
mặc dịnh là 3)
Chữ chạy (chỉ dành cho
IE)
2.1.2.3. Các thẻ liên kết
Link
<A HREF="URL"> </A>
Something
Liên kết văn bản và hình ảnh
đến một URL
Trang 9
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
Link
to <A HREF="URL#***"> </A>
Location
Link
to <A HREF="#***"> </A>
Location
in
Current Page
Target Window
HREF="URL"
TARGET="***"> </A>
Liên kết văn bản và hình ảnh
tới một neo trong tài liệu
Liên kết văn bản và hình ảnh
tới một neo trong tài liệu hiện
hành
Liên kết văn bản và hình ảnh
tới URL,mở ra trong cửa sổ
mới
Action
on
HREF="URL" Có hiệu ứng khi người dùng
Click
ONCLICK="***"> </A>
click vào liên kết
Mouseover
HREF="URL" Có hiệu ứng khi người dùng trỏ
Action
ONMOUSEOVER="***"> </A>
chuột vào liên kết
Mouse
out
HREF="URL" Có hiệu ứng khi người dùng di
Action
ONMOUSEOUT="***"> </A>
chuyển chuột ra khỏi liên kết
Link to Email
<A HREF="mailto:@"> </A>
Liên kết tới một email, tạo một
email trống
Define
<A NAME="***"> </A>
ấn định tên của neo và vị trí của
Location
nó trong tài liệu
2.1.2.4. Hình ảnh và âm thanh
Display
<IMG SRC="URL">
Image
Alignment
SRC="URL"
ALIGN=
TOP|BOTTOM|MIDDLE|LEFT|RIG
HT>
Alternate
<IMG SRC="URL" ALT="***">
Dimensions
Dimensions
%
Border
Image map
Movie Clip
Background
Sound
Embed
Object
Object Size
Hiển thị hình ảnh từ URL được
chỉ định
Canh lề hình ảnh
Biểu diễn tên hoặc một miêu tả
cho hình ảnh nếu nó không hiển
thị
HEIGHT=?>
ảnh, theo pixel
HEIGHT=%>
ảnh so với trang
<IMG SRC="URL" BORDER=?>
Đường viền bao quanh hình ảnh,
theo pixel
<IMG SRC="URL" ISMAP>
Liên kết của một phần hình ảnh
(cần một script)
DYNSRC="***" Chèn một Movie Clip
START="***" LOOP=?>
SRC="***" chèn sound clip
LOOP=?|INFINITE>
<EMBED SRC="URL">
chèn object vào trang
HEIGHT=?>
được nhúng vào
Object
<OBJECT> </OBJECT>
Object được nhúng
Parameters
<PARAM>
Giá trị đặc tính được đặt tên
2.1.2.5. Các thẻ phân đoạn
Paragraph
<P> </P>
Phân đoạn
Trang 10
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
Align Text
Justify Text
Line Break
Horizontal
Rule
Alignment
ALIGN=LEFT|CENTER|RIGHT>
</P>
<P ALIGN=JUSTIFY> </P>
<BR>
<HR>
Canh lề paragraph
Canh đều văn bản trong đoạn
Một phím xuống dòng
Một đường ngang
Thickness
ALIGN=LEFT|RIGHT|CENTER>
<HR SIZE=?>
Canh lề đường ngang
Width
<HR WIDTH=?>
Width
Percent
Solid Line
<HR WIDTH="%">
Độ dày theo pixel của đường
ngang
Chiều rộng theo pixel của đường
ngang
Chiều rộng(theo phần trăm),
<HR NOSHADE>
Đường ngang không có 3D
No Break
Word Break
<NOBR> </NOBR>
<WBR>
Không cho xuống dòng
Nơi xuống dòng nếu cần
2.1.2.6. Các thẻ cấu trúc
Heading
Division
Defined
Content
Block Quote
<H?> </H?>
<DIV> </DIV>
<SPAN> </SPAN>
Đầu trang tài liệu(1->6)
Chứa kiểu
Chứa kiểu
Quote
Emphasis
Strong
Emphasis
Citation
Code
Sample Output
Keyboard Input
<BLOCKQUOTE>
</BLOCKQUOTE>
<Q> </Q>
<EM> </EM>
<STRONG> </STRONG>
Khối trích dẫn dài, thường được
thụt lề
Trích dẫn ngắn
In nghiêng văn bản
In đậm văn bản
<CITE> </CITE>
<CODE> </CODE>
<SAMP> </SAMP>
<KBD> </KBD>
Variable
Definition
Address
<VAR> </VAR>
<DFN> </DFN>
<ADDRESS> </ADDRESS>
In nghiêng
Dùng cho danh sach mã lệnh
Xuất chương trình mẫu
Văn bản nên được gõ bởi người
dùng
Biến của chương trình
Sự định nghĩa
Thông tin tác giả
Large Font Size
<BIG> </BIG>
Sử dụng cỡ chữ lớn
Small Font Size
<SMALL> </SMALL>
Sử dụng cỡ chữ nhỏ
Trang 11
Tìm hiểu HTML và XML, xây dựng trình biên dịch HTML sang XML
Insert
<INS> </INS>
Đánh dấu văn bản dược chèn
trong phiên bản mới
Time of Change <INS DATETIME=":"> </INS>
Đánh dấu thời gian
Comments
<INS CITE="URL"> </INS>
Lời chú thích
Delete
<DEL> </DEL>
Đánh dấu sự hủy bỏ
Time of Change <DEL DATETIME=":"> </DEL> Thời gian hủy bỏ tài liệu
Comments
<DEL CITE="URL"> </DEL>
Chú thích về sự hủy bỏ
Acronym
<ACRONYM> </ACRONYM>
acronyms
Abbreviation
<ABBR> </ABBR>
Sự tóm tắt
2.1.2.7. Các thẻ background
Tiled
Background
Watermark
Background
Color
Text Color