为什么使用Schema.org微数据来标记网页元素?

chh*_*vey 2 html5 microdata schema.org

我理解为什么以及如何使用Schema.org向您的网站添加微数据,这不是一个问题.问题是为什么Schema.org支持某些可以用简单的HTML5标记的东西.其中有

类型

  • WebPageWebSite

    我可以看到为什么WebPage并且WebSite需要,例如,在链接中引用某个组织的页面/站点,但是没有必要用这个来标记你自己的页面 - <html>标签就是这样做的.

  • SiteNavigationElement

    为什么不用<nav>

  • 只是用<table>.

性能

uno*_*nor 5

这个答案主要是关于WebPageElement类型(如SiteNavigationElement).

因为WebPage,请参阅我对Schema.org中网页结构的隐含性问题的回答(tl; dr:WebPage即使对于当前页面,它也很有用).

因为WebSite,上述答案的类似原因适用.HTML不允许您陈述有关整个网站的内容(顺便说一下,Google富查结果会使用此类型).


Schema.org不限于HTML5.

Schema.org是一个词汇表,可以使用各种语法(如JSON-LD,Microdata,RDFa,Turtle,...),独立或以各种主语言(如HTML 4.01,XHTML 1.0/1.1,(X)HTML5 ,XML,SVG,...).因此,有其他方法来指定某些东西是(或:是;或:代表)一个站点范围的导航,一个表等是例外而不是规则.

但即使在HTML5文档中也可能有理由使用这些类型,例如:

  • HTML5标记和Microdata/RDFa的注释是两个"不同的世界":Microdata/RDFa解析器只对注释感兴趣,并且在成功解析文档之后,底层标记不再相关(例如,信息table在Microdata/RDFa层中,元素中指定的东西会丢失.

  • 通过使用类似的类型WebPageElement,您可以指定无法在纯HTML5中指定的元数据.例如,author/ license/ etc.一张桌子.

  • 您可以使用这些类型来指定有关当前文档中不存在的内容的数据,例如,您可以在您的个人网站上说您是Wikipedia中表格的作者.

也就是说,这些不是与广泛作者相关的典型用例.除非您有特定的理由使用它们,否则您可能希望省略它们.它们对典型网站没用.在某些情况下使用它们甚至可能会出现问题.

另请参阅我的Schema.org问题WebPageElement和mainContentOfPage的用途,我建议弃用它WebPageElementmainContentOfPage属性.