【发布时间】:2014-11-29 01:07:03
【问题描述】:
我们应该为邮政地址使用哪种 HTML5 标记?我们可以使用哪些词汇来实现机器可读性?
以W3C’s main office的地址为例:
W3C/麻省理工学院
瓦萨街 32 号
房间 32-G515
美国马萨诸塞州剑桥 02139
【问题讨论】:
标签: html semantic-markup street-address vocabulary
我们应该为邮政地址使用哪种 HTML5 标记?我们可以使用哪些词汇来实现机器可读性?
以W3C’s main office的地址为例:
W3C/麻省理工学院
瓦萨街 32 号
房间 32-G515
美国马萨诸塞州剑桥 02139
【问题讨论】:
标签: html semantic-markup street-address vocabulary
address element 必须仅在此邮政地址代表“其最近的 article 或 body 元素祖先”的联系信息时使用,当然,并非所有地址都如此。但是address的使用与否,都不影响后面的。
整个地址应包含在p element、because“地址也是段落”中。
由于地址不应被转换,translate attribute 应设置为no。
每一行(除了最后一行)后面都应该跟br element,因为换行符是有意义的(或“部分内容”,正如HTML5规范所称的那样)地址。
每个地址部分(名称、街道、城市等)都可以包含在span element 中。这不是必需的,但允许使用语义注释。
缩写地址部分可以用abbr element 扩展,这对于不熟悉地址格式的用户很有用(例如,“什么意思是MA?”)。
到目前为止,我们有:
<p translate="no">
W3C/MIT<br>
32 Vassar Street<br>
Room 32-G515<br>
Cambridge, <abbr title="Massachusetts">MA</abbr> 02139 USA
</p>
Schema.org 的PostalAddress type 可用于除房间外的所有地址部分。
vCard Ontology(将vCard 映射到RDF)定义了一个Address class。似乎没有办法指定房间。
另一个Address class 在ISA Programme Location Core Vocabulary 中定义。房间可以用locatorName property指定。
微格式有h-card(及其p-adr)和h-adr。房间可以用p-extended-address指定。
以带有 RDFa (Lite) 的 schema.org 词汇表为例:
<p translate="no" typeof="schema:PostalAddress">
<span property="schema:name">W3C/MIT</span><br>
<span property="schema:streetAddress">32 Vassar Street</span><br>
Room 32-G515<br>
<span property="schema:addressLocality">Cambridge</span>, <abbr title="Massachusetts" property="schema:addressRegion">MA</abbr> <span property="schema:postalCode">02139</span> <abbr property="schema:addressCountry">USA</abbr>
</p>
【讨论】: