来自Schema.org的keywords
属性,因为它以复数形式表示,似乎暗示它的值应该是一行以逗号分隔的文本。如下例所示:
<p itemprop="keywords">lorem, ipsum, dolor, sit, amet</p>
这让我想起了<meta name="keywords" content="lorem, ipsum, dolor, sit, amet">
标记,我们过去常常将<head></head>
用于搜索引擎优化的原因。
但是,从语义学的角度来看,我认为上面的例子是不正确的,因为关键字应该是一个单词列表。因此,应使用<ul>
元素进行标记。
对于如何使用HTML5和Microdata标记博客文章的关键字,是否存在共识?
答案 0 :(得分:8)
更新: Schema.org的keywords
属性的定义已更改。现在它清楚地表明它需要多个标签,并且它们通常应该以逗号分隔。
tl; dr :如果您想为代码使用ul
元素,那么使用Schema.org的keywords
属性在Microdata中可能如下所示:
<article itemscope itemtype="http://schema.org/BlogPosting">
<footer>
<ul itemprop="keywords">
<li><a href="/tags/foo" rel="tag">foo</a>,</li>
<li><a href="/tags/bar" rel="tag">bar</a></li>
</ul>
</footer>
</article>
如果像这样使用它,您必须确保ul
不包含其他非标记文字。
meta
值keywords
的name
元素提供了一种指定适用于整个页面的关键字的方法。这些关键字仅包含文本,因此您无法使用URI。
因此,对于典型的博客标记,您可以采用以下方式(可能除meta
- keywords
之外)。
HTML5定义了link type tag
:
tag
关键字表示引用的文档所代表的标记适用于当前文档。
请注意,此链接类型只能用于单个帖子页面,因为标记始终适用于整个页面。
(注意:tag
也是Microformat,但它的定义不同:您只能为Microformat tag
使用特制网址。)
如果您的代码更像是类别(受控词汇而非免费标记),则可以使用link type category
(可能与tag
结合使用)。
您可以使用ul
或dl
:
<ul>
<li><a href="/tags/foo" rel="tag">foo</a></li>
<li><a href="/tags/bar" rel="tag">bar</a></li>
</ul>
<dl>
<dt>Tags</dt>
<dd><a href="/tags/foo" rel="tag">foo</a></dd>
<dd><a href="/tags/bar" rel="tag">bar</a></dd>
</dl>
当您还要列出其他元数据时,我会使用dl
,例如作者,出版日期等。
当然,带有逗号分隔的div
元素的a
也可以使用:
<div>Tags: <a href="/tags/foo" rel="tag">foo</a>, <a href="/tags/bar" rel="tag">bar</a></div>
should be的footer
element部分列表(如果您在博文中使用了article
,请keywords
内):
页脚通常包含有关其部分的信息,例如谁编写,相关文档的链接,版权数据等。
CreativeWork
定义了属性keywords
(BlogPosting
继承了它):
用于描述此内容的关键字或标签。关键字列表中的多个条目通常用逗号分隔。
它需要纯文本,因此无法在Schema.org中提供标记URL。
由于dl
需要逗号分隔的代码列表,因此无法使用dl
(除非ul
不包含任何标记)。
使用<ul itemprop="keywords">
<li><a href="/tags/foo" rel="tag">foo</a>,</li>
<li><a href="/tags/bar" rel="tag">bar</a></li>
</ul>
,在Microdata中看起来像这样:
div
如果使用div
,您需要添加另一个child
/ <div>Tags: <span itemprop="keywords"><a href="/tags/foo" rel="tag">foo</a>, <a href="/tags/bar" rel="tag">bar</a></span></div>
,以便标签&#34;标记:&#34;不被解释为标签本身:
keywords
Common Tag是用于标记的(RDF)词汇表。与Schema.org的<div xmlns:ctag="http://commontag.org/ns#" rel="ctag:tagged">
NASA's <a typeof="ctag:Tag"
rel="ctag:means"
href="http://rdf.freebase.com/ns/en.phoenix_mars_mission"
property="ctag:label">Phoenix Mars Lander</a> has deployed its robotic arm.
</div>
属性相比,它使用URI作为标记,而不是仅使用文本。
他们在RDFa中的Quick Start Guide示例:
ctag:tagged
说明:内容已使用标记(ctag:Tag
)进行标记(ctag:means
)。此标记由URI&#34; http://rdf.freebase.com/ns/en.phoenix_mars_mission&#34;定义(ctag:label
)。它被称为(ctag:Tag
)&#34; Phoenix Mars Lander&#34;
而不是ctag:AuthorTag
您可以使用类{{1}}(这意味着它由内容作者标记)。
还有MOAT词汇表,代表&#34;标签的含义&#34;。不幸的是,their website似乎已经消失了(?)。
允许用户定义Tag对象与语义Web资源的URI之间关系的本体