我们这次来讨论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
新闻热点
疑难解答