我們這次來討論hAtom微格式,這個微格式用來為網頁內容添加結構和語義從而使得網頁內容或者局部內容可以被廣播(syndication),比如博客日志或者新聞文章等。
hAtom微格式是建立在Atom XML同步格式基礎之上的。跟之前hCard和hCalendar不同,hCard和hCalendar都和傳統數據格式有著1:1的對應關系,但是hAtom同Atom之間卻沒有這種直接的對應關系。Atom是一個很穩定的模型,能夠為內容廣播提供非常多的功能。而hAtom僅僅是提供必須的元素,因此更像是Atom的子集。由此說來,hAtom具有的屬性和子屬性也都是基于Atom原有的術語而來的。
盡管hAtom基于Atom,hAtom本身并不是一個廣播格式。hAtom的作者和編輯──David Janes──解釋說:
“… hAtom was never intended to be a “syndication format” nor to compete with Atom or RSS. It’s simply designed to describe the microcontent on webpages, such as blog posts. We used Atom because it provides a well-defined nomenclature for describing such elements.”(譯:hAtom從來都不是為了作為“廣播格式”存在,更不是為了同Atom或者RSS之間競爭。他就是用來描述網頁中的為內容,比如博客日志。我們使用Atom是因為他提供了很好的術語可以描述這樣的元素。)
所以,hAtom不是專門為了那些需要廣播的網頁內容的。不過,為了這篇文章的目的,我會在博客日志的基礎上討論,而博客日志通常是需要支持廣播的網頁內容。
在討論hAtom細節之前,讓我們來看一下基礎的規則(同hCard和hCalendar類似):
屬性和子屬性通過class值來表示 因為同Atom的關系,規范中的hAtom屬性和子屬性基本對應Atom的元素 屬性和子屬性名稱大小寫敏感 “根”屬性不能和其他屬性或子屬性組合,因此<p class="hfeed author">是無效的還是,對所有微格式適用:包含他們的標記元素是什么不重要(雖然應該是有效并且具有語義的)。Class的值(屬性或子屬性)決定了hAtom微格式。
如果您選擇使用hAtom,同樣應該在網頁的<head>代碼中加上他的Profile說明:
<head profile=”http://purl.org/uF/hAtom/0.1/”>
對hCard和hCalendar,我提過使用組合Profile,可以覆蓋所有非提案微格式:
<head profile="http://purl.org/uF/2008/03/“>
不過,hAtom是提案規范,他的Profile沒有涵蓋在組合Profile里面,所以,還是需要明確的指明他。如果您還引用組合Profile,可以簡單的添加hAtom Profile(W3C
新聞熱點
疑難解答