描述和内容之间的区别:RSS2中的编码标签

时间:2011-08-28 11:31:35

标签: xml rss feed rss2

RSS 2.0格式规范中<description>标记与<content:encoded>标记之间有什么区别?

一个比另一个更重要吗?

我应该在我的Feed中同时使用这两种方法吗?

3 个答案:

答案 0 :(得分:30)

<description>标记用于帖子摘要,但仅限于纯文本。没有标记。

如果你逃避标签或将内容包装在:

,你可以解决这个问题
<![CDATA[ post body goes <strong>here</strong> ]>

但是you're not really supposed to be doing that

如果你想要标记,你应该使用<content:encoded>并在这里使用<![CDATA[]>包装。

  

content:encoded元素可与description元素结合使用,以提供项目的完整内容以及较短的摘要。在此方法下,该项目的完整文本显示在content:encoded中,摘要显示在description中。

     

RSS Best Practices Profile: content:encoded

简而言之,<description>适用于the summary,其余帖子位于<content:encoded>

由于某些读者可能不会按预期支持这些代码,因此您通常会在<description>中看到整个帖子,而不是两者的混合。

答案 1 :(得分:12)

之前的回答不正确。

RSS 2.0 spec非常明确,您可以对&lt; description&gt;的值进行编码。元件。

  

项目本身也可以是完整的,如果是,描述   包含文本(允许实体编码的HTML;参见示例),和   链接和标题可以省略。项目的所有元素都是   可选,但必须至少有一个标题或说明   本。

答案 2 :(得分:1)

@random给出的答案确实有些道理,但是在决定如何处理description而不是/ RSS 2.0 spec时,情况original discussion中最终是复杂的(如果不引起混淆)。或在其他时间content:encoded旁边。

TLDR:当内容提供者愿意同时包含文本摘要和更完整的内容时,情况将得到解决:使用description来编写更简单的文本摘要,并使用content:encoded来编写文本摘要。完整的html内容。但是,当他们只想包括二者之一,仅是摘要内容或仅是更完整的内容时,则应该为此使用description标签,在这种情况下,情况仍然模棱两可!根据我的估计,这是最不幸的决定,这意味着您必须包含完整的html内容才能清楚地说明这一点,否则description标签与以往一样as昧。

  

不想在摘要中使用item的发布者,应使用description元素来获取项目的全部内容,而不要使用content:encoded,因为它具有最广泛的支持。

     

使用摘要的发布者应将摘要中的摘要和完整内容存储在content:encoded中,并在description中首先对item进行排序。对于没有摘要的项目,应将全部内容存储在description中。

必须慢慢思考这一切的含义,但我认为这些要点:

  1. 如果仅给出这两个标签之一,则必须为description标签。
  2. 这意味着content:encoded不应该在其旁边(实际上位于其上方)没有description标签存在。
  3. 不幸的是,这意味着当只有一个标签(必须为description)时,情况仍然像以往一样ever昧: description仍然是一个简单的文本摘要,或者更完整的html内容,您不知道!
  4. 同时给出这两个词时,这是唯一消除歧义的方法:description应该是一个更简单的摘要,而content:encoded将包含更完整的html内容。

或者我可能读错了一切。

我个人认为这个决定很不幸。他们显然这样做是为了保持向后兼容性,因此当时的读者将总是可以从中读取一些描述(因为尚未支持content:encoded或广泛使用)。但是这样做,他们基本上有障碍。到现在为止,这已经是水,但我认为他们可以做的事,同时兼顾两全其美,是在description上添加一个属性,例如:<description type="html | text">。因此,如果<description type="text">(注意,他们指定content:encoded始终是 以获得更完整的html内容),则表明description只是一个更简单的摘要,生产者没有还可以提供完整内容,以便读者了解此标签的类型。虽然老读者会忽略这个额外的属性。桥下有水,但我们可以做梦。

就目前而言,在我看来,所有事情都完全悬而未决,除非包含两个标签,否则只有这样才能做出正确的假设。

P.S。至于完整内容和摘要内容之间的区别,请参见description标签上的Database