mở đầu và kết thúc Ví dụ: có <img src="mylogo.gif">, nó là một phần tử đơn lẻ và đứng một mình. Nó không chứa đựng bất kỳ phần tử con cũng nhƣ văn bản nào, chính vì vậy nó là một phần tử trống và có thể biểu thị nhƣ sau <img src="mylogo.gif" /> (đƣợc kết thúc bởi một dấu cách và gạch chéo kết thúc nhƣ thông thƣờng) Lồng ghép các phần tử: Lồng ghép là đặt một phần tử này nằm bên trong một phần tử khác. Mà trong đó các phần tử mới nằm bên trong đƣợc gọi là các phần tử con, các phần tử này đƣợc bao bên ngoài bởi một phần tử gọi là cha. Nhƣ ở ví dụ bên trên chúng ta có phần tử gốc, phần tử cha là <recipe>, các thông tin của các phần tử con đƣợc lồng ghép bên trong bao gồm các phần tử<recipename>, <ingredlist> và <preptime>.
Bên trong phần tử con <ingredlist> lại có rất nhiều các thông tin của các phần tử con ở trong nó <listitem>nhƣ ví dụ sau đây: <?xml version="1.0" encoding="UTF-8"?> <recipe> <recipename>Ice Cream Sundae</recipename> <ingredlist> <listitem> <quantity>3</quantity> <itemdescription>chocolate syrup</itemdescription> </listitem> </ingredlist> <preptime>5 minutes</preptime> </recipe> Trong một văn bản XML, các phần tử có thể đƣợc lồng ghép với nhau ở nhiều cấp độ. Nghĩa là vẫn có thể lồng ghép các phần tử cấp thấp hơn ở bên trong phần tử con và nhiều cấp nhỏ hơn nữa ở trong nó. Một lỗi cú pháp thông thƣờng là khi lồng ghép không chính xác các phần tử cha và phần tử con. Đó là do bất cứ một phần tử con nào cũng phải đƣợc bao quanh một cách trọn vẹn giữa thẻ bắt đầu LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 17 và thẻ kết thúc của phần tử cha.
Một điều chú ý là các phần tử con phải đƣợc đóng trƣớc khi các phần tử con khác bắt đầu. Thêm các thuộc tính: Các thuộc tính hoàn toàn có thể đƣợc thêm vào các phần tử, bao gồm cặp tên-giá trị, với giá trị đƣợc đặt bên trong hai dấu ngoặc kép ("), ví dụ: type="dessert". Các thuộc tính này cung cấp cách thức để lƣu trữ thêm các thông tin mỗi khi sử dụng phần tử, sự thay đổi giá trị của thuộc tính là cần thiết khi sử dụng cùng một phần tử ở các vị trí khác khác nhau trong cùng một tài liệu. Chúng đƣợc thêm vào bên trong thẻ bắt đầu của một phần tử: <recipe type="dessert">.
Nếu thêm vào nhiều thuộc tính, hãy tách chúng riêng rẽ bằng dấu cách: <recipename cuisine="american" servings="1">. Ví dụ: Tệp tài liệu XML với các phần tử và các thuộc tính <?xml version="1.0" encoding="UTF-8"?> <recipe type="dessert"> <recipename cuisine="american" servings="1"> Ice Cream Sundae </recipename> <preptime>5 minutes</preptime> </recipe> Có thể sử dụng một vài hoặc vô số các thuộc tính khi cần thiết. Các tên thuộc tính có thể bao gồm các ký tự giống nhƣ quy ƣớc đặt tên phần tử, tên thuộc tính không bao gồm dấu cách và tên phải bắt đầu bằng các ký tự trong bảng chữ cái[10, 11]. Giới thiệu Kỹ thuật RSS RSS (Really Simple Syndication) [6] có nghĩa là "dịch vụ cung cấp thông tin thực sự đơn giản", dùng trong việc chia sẻ tin tức Web (Web syndication) đƣợc dùng bởi nhiều website tin tức và weblog với công nghệ của RSS cho phép ngƣời dùng Internet có thể đặt mua thông tin từ các websites có cung cấp khả năng RSS (RSS feeds); chúng thƣờng là các site có nội dung thay đổi và đƣợc thêm vào thƣờng xuyên.
Để có thể dùng công nghệ này, ngƣời quản trị site đó tạo ra hay quản lí một phần mềm chuyên dụng (nhƣ là một hệt thống quản lý nội dung - content management system-CMS) mà với định dạng XML mà máy có thể đọc đƣợc, có thể biểu diễn các bài tin mới thành một danh sách, với một hoặc hai dòng cho mỗi bài tin và một liên kết đến bài tin đầy đủ đó. Khác với việc mua nhiều ấn LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 18 bản của các tờ báo hay tạp chí in giấy, hầu hết việc mua RSS là miễn phí. Định dạng RSS cung cấp nội dung web và tóm lƣợc nội dung web cùng với các liên kết đến phiên bản đầy đủ của nội dung tin đó, và các siêu dữ liệu (meta-data) khác. Thông tin này đƣợc cung cấp dƣới dạng một tập tin XML đƣợc gọi là một RSS feed, webfeed, RSS stream, hay RSS channel.
Định nghĩa RSS: RSS là viết tắt của một trong những thuật ngữ sau: - Really Simple Syndication: "Dịch vụ cung cấp thông tin thực sự đơn giản". - Rich Site Summary, RDF Site Summary[13]: Tóm lƣợc thông tin phong phú, tóm lƣợc thông tin theo định dạng RDF. - RDF - Resource Discovery Framework:(tạm dịch là "cơ cấu khám phá tài nguyên"): là định dạng của phiên bản RSS 1. Ở một số trang web biểu tƣợng RDF sử dụng thay cho RSS.
RSS đƣợc viết bằng XML. Một file RSS là một danh sách các đối tƣợng - chính là các mẫu tin - đƣợc miêu tả gồm có: tiêu đề, nội dung tóm lƣợc, một liên kết đến trang chính của tin đó, ngày tháng, tác giả.cũng có thể thêm vào.Một file rss không có phần mở rộng thống nhất. Trong đó phổ biến nhất là:. Lịch sử phát triển RSS: Trƣớc RSS, có nhiều định dạng khác cũng từng đƣợc dùng cho vấn đề chia sẻ thông tin, nhƣng không có định dạng nào đƣợc dùng rộng rãi cho đến ngày nay, vì hầu hết chủ yếu dùng cho từng dịch vụ đơn.
Lịch sử phát triển của RSS trải qua các giai đoạn nhƣ sau: - RDF (Resource Description Framework) Site Summary, phiên bản đầu tiên của RSS, đƣợc tạo ra bởi Dan Libby củaNetscape vào tháng Ba 1999 dùng cho cổng điện tử My Netscape. Phiên bản này trở thành RSS 0. Vào tháng Bảy 1999, đáp trả lại các đề nghị và góp ý, Libby đƣa ra bản phác thảo ban đầu đặt tên là RSS 0.91 (RSS viết tắt của Rich Site Summary), nhằm đơn giản hóa định dạng và tích hợp một số phần trong định dạng scriptingNews của Winer. - Nhóm RSS-DEV tiếp tục đƣa ra RSS 1.0vào tháng 12 năm 2000 dựa trên bản phác thảo góp ý sửa đổi cho bản đặc tả kĩ thuật đƣa ra bởi Tristan Louis.
Giống với RSS 0.91) bản này dựa vào đặc tả kĩ thuật của RDF, nhƣng có tính khả mở hơn, với nhiều mục bắt nguồn từ các từ vựng metadata chuẩn nhƣ Dublin Core. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 19 - Vào tháng 9 năm 2002, Winer cho ra bản cuối cùng của RSS 0.92, bây giờ gọi là RSS 2.0 và nhấn mạnh "Really Simple Syndication" là nghĩa của ba kí tự viết tắt RSS. Đặc tả kĩ thuật của RSS 2.0 loại bỏ thuộc tính type từng đƣợc thêm vào trong RSS 0.94 và cho phép ngƣời dùng có thể thêm thành phần mở rộng nhờ dùng XML Namespaces. Nhiều phiên bản của RSS 2.0 đã đƣợc ra đời, nhƣng chỉ số của phiên bản thì vẫn không thay đổi.
- Vào tháng 11, 2002, Thời báo New York đã bắt đầu cung cấp cho ngƣời đọc khả năng mục các tin có hỗ trợ RSS feeds liên quan đến nhiều chủ đề khác nhau. Vào tháng Giêng, 2003, David Winer đã gọi việc dùng RSS của thời báo New York Time là một "điểm nhấn" (tipping point) trong việc đƣa định dạng RSS trở thành một chuẩn[6]. Cấu trúc định dạng tập tin RSS 2.0 [6]: Một file RSS là do một phần tử (element) <channel> </channel> và các phần tử con của nó tạo nên. Ngoài nội dung <Item> đƣợc liệt kê trong phần thân <item> </item> thì phần tử <channel> còn chứa các element đại diện cho siêu dữ liệu của kênh RSS - chẳng hạn nhƣ <title>, <link> và <description>.
Những mục này là các phần chính của kênh RSS và chứa nội dung thƣờng hay thay đổi. Dƣới đây là chi tiết các thành phần: Thành phần <channel> của RSS Một kênh <channel> thƣờng có ba phần tử để biết thông tin của kênh bao gồm: <title> (tiêu đề): Tên của kênh hoặc nguồn cấp tin <link> (liên kết): URL của trang web hoặc vùng trang web có liên kết với kênh này <description> (mô tả): Mô tả ngắn gọn về kênh đó. Ngoài các thành phần trên thì <channel> còn có nhiều phần tử con là tùy chọn và không bắt buộc. Ví dụ nhƣ phần tử <image> (hình ảnh) có ba phần tử con bắt buộc là: - <url>: URL của một hình ảnh GIF, JPEG hoặc PNG đại diện cho kênh.
- <title>: Mô tả hình ảnh. Nó đƣợc dùng cho thuộc tính ALT của thẻ <image> trong HTML khi kênh đƣợc hiển thị bằng HTML. - <link>: URL của trang web. Khi kênh đƣợc hiển thị dƣới dạng HTML, hình ảnh có thể hoạt động nhƣ một liên kết đến trang web.
Phần tử <image> cũng có ba phần tử con không bắt buộc sau: LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 20 - <width> (chiều rộng): Quy định chiều rộng hình ảnh tính bằng pixel. Giá trị tối đa là 144 và giá trị mặc định là 88. - <height> (chiều cao): Quy định chiều cao hình ảnh tính bằng pixel. Giá trị tối đa là 400 và giá trị mặc định là 31.
- <description>: Chứa đoạn văn bản có trong thuộc tính title của liên kết tạo thành hình ảnh khi đƣợc hiển thị. Ngoài ra, có thể sử dụng các phần tử tùy chọn khác: - <language> (ngôn ngữ): en-us (anh-mỹ) - <copyright> (bản quyền): Copyright 2003, James Lewin - <managingEditor> (ngƣời biên tập quản lý): dan@spam_me.com (Dan Deletekey) - <webMaster>: dan@spam_me.com (Dan Deletekey) - <pubDate> (ngày xuất bản): Sat, 15 Nov 2003 0:00:01 GMT (Thứ Bảy, 15.2003, giờ chuẩn theo kinh tuyến Greenwich (GMT) là 0:00:01) - <lastBuildDate> (ngày dựng cuối cùng): Sat, 15 Nov 2003 0:00:01 GMT - <category> (thể loại): ebusiness (thƣơng mại điện tử) - <generator> (trình tạo): CMS 2.0 - <docs> (các tài liệu): http://blogs.edu/tech/rss - <cloud> (đám mây): Cho phép đăng ký với một "đám mây" để đƣợc thông báo về các bản cập nhật cho kênh, thực hiện một giao thức đăng ký - xuất bản nhẹ cho các nguồn cấp tin RSS. - <ttl>: Thời gian sống (Time to live) một con số đại diện cho số phút mà một nguồn cấp tin có thể đƣợc lƣu trữ trong bộ nhớ đệm trƣớc khi nó cần đƣợc làm mới. - <rating> (đánh giá): Đánh giá PICS cho kênh.
- <textInput> (nhập văn bản): Định nghĩa hộp nhập có thể đƣợc hiển thị với kênh. - <skipHours>: Thông tin này để báo cho các chƣơng trình tổng hợp <Item> biết rằng có thể bỏ qua không cập nhật nội dung trong bao nhiêu giờ. - <skipDays>: Thông tin này để báo cho các chƣơng trình tổng hợp <Item> biết rằng có thể bỏ qua không cập nhật nội dung trong bao nhiêu ngày. Thành phần <Item> bản tin Các <Item> là phần quan trọng nhất của một nguồn cấp tin.
Mỗi <Item> có thể là một bài weblog, một bài viết hoàn chỉnh, một bài phê bình phim, một mục LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 21 rao vặt trên báo, hoặc bất cứ thứ gì muốn cung cấp cho kênh.