• 前端的数据标记协议


    数据标记协议是什么

    数据标记协议是一种约定,用于改进和优化网页上数据的表示方式,也被称为结构化数据标记
    他通常在html中添加特定的属性和语法,可以帮助搜索引擎、社交媒体平台通过这些指定的属性可以更好地理解网页内容。

    数据标记协议的作用

    • 提高搜索可见性:
      数据标记可以帮助搜索引擎更好地理解页面内容,让搜索引擎知道网站特定的内容。正确地使用数据标记可以提高网站的可见性。

    • 提升内容在社交媒体上的表现:
      使用数据标记协议可以在特定社交平台上展示特定的效果。

      如,钉钉:
      在这里插入图片描述

    • 提共丰富的搜索结果:
      使用结构化数据标记可以是你的网站在搜索结果中展示更丰富的信息,如评星、价格、图片、描述信息等。这被称为富结果,可以大大提高点击率。
      浏览器:
      在这里插入图片描述

    常见的数据标记协议

    Open Graph protocol 开放图谱协议

    主要用于社交媒体,特别是Facebook分享链接时的优化展示。它可以指定网页在社交媒体上被分享时显示的标题、描述、图片等。
    在开放图谱协议允许任何网页成为社交图的丰富的对象。

    基本元数据协议

    基本元数据使用标签定义,要将网页变成图形对象,需要向网页中添加如下基本数据

    • og:title:对象的标题,对应分享时链接中显示的标题。
    • og:type:对象的类型,例如“ video.movi​​e”。根据指定的类型,可能还需要其他属性。
    • og:image :对象的图片,对应分享时链接中显示的图像。
    • og:url :对象的地址,一般是网站的地址。

    eg:

    <meta property="og:title" content="The Rock" />
    <meta property="og:type" content="video.movie" />
    <meta property="og:url" content="http://www.imdb.com/title/tt0117500/" />
    <meta property="og:image" content="http://ia.media-imdb.com/images/rock.jpg" />
    
    • 1
    • 2
    • 3
    • 4

    可选元数据

    如下属性对任何对象都是可选的,通常建议使用:

    • og:audio:该对象的音频文件的url
    • og:description:该对象的描述信息
    • og:determiner:句子中此对象标题之前出现的单词。默认为空白"",也可以是a,an,the,auto
    • og:locale:标记这些标签的语言环境。格式为language_TERRITORY。默认值为en_US
    • og:locale:alternate:可以使用此页面的一系列其他语言环境
    • og:site_name:如果该对象是大型网站的一部分,则应该在整个网站上显示该名称。
    • og:video:补充此对象视频文件的URL
    <meta property="og:audio" content="http://example.com/bond/theme.mp3" />
    <meta property="og:description" 
      content="Sean Connery found fame and fortune as the
               suave, sophisticated British agent, James Bond." />
    <meta property="og:determiner" content="the" />
    <meta property="og:locale" content="en_GB" />
    <meta property="og:locale:alternate" content="fr_FR" />
    <meta property="og:locale:alternate" content="es_ES" />
    <meta property="og:site_name" content="IMDb" />
    <meta property="og:video" content="http://example.com/bond/trailer.swf" />
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    结构化属性 —— 元数据的属性

    元数据可以附加额外的属性来指定元数据的详细信息,使用格式og:元数据值:property,同样使用content指定值.
    og:image就有如下的属性值:

    • og:image:url:与og:image相同,指定图片的地址。
    • og:image:secure_url :如果网页需要HTTPS,则使用备用网址。
    • og:image:type: 此图像的MIME类型。
    • og:image:width :图像宽像素数。
    • og:image:height :图像高像素数。
    • og:image:alt:图片的说明(非标题)。

    og:videoog:image具有相同的属性值
    og:audio只拥有url、secure_url、type三个属性值。

    <meta property="og:image" content="http://example.com/ogp.jpg" />
    <meta property="og:image:secure_url" content="https://secure.example.com/ogp.jpg" />
    <meta property="og:image:type" content="image/jpeg" />
    
    • 1
    • 2
    • 3

    多个相同的元数据标签

    同一个元数据标签可以有多个值,越先定义的优先级越高。

    <meta property="og:image" content="http://example.com/rock.jpg" />
    <meta property="og:image" content="http://example.com/rock2.jpg" />
    
    • 1
    • 2

    rock.jpg 图片的 优先级比 rock2.jpg 的优先级高。

    在声明的元数据后面放置结构化属性,属性的赋值原则是:在下一个相同的元标签出现之前就是为之前的元标签添加的属性。

    <meta property="og:image" content="http://example.com/rock.jpg" />
    <meta property="og:image:width" content="300" />
    <meta property="og:image:height" content="300" />
    <meta property="og:image" content="http://example.com/rock2.jpg" />
    <meta property="og:image" content="http://example.com/rock3.jpg" />
    <meta property="og:image:height" content="1000" />
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    表示此页面上有3张图片,第一张图片为300x300,中间一张图片的尺寸未指定,最后一张高为1000px。

    类型元数据的使用方法

    全局类型使用

    使用方法:直接在property="og:type"的meta标签中指明content的值即可。

    <meta property="og:type" content="website" />
    
    • 1

    常见的全局类型:

    • website: 一般的网站或首页。
    • article: 文章或者博客入口。
    • book: 书籍。
    • music:音乐入口
    • video:音频入口
    自定义类型使用

    自定义类型的使用就是通过引入外部的命名空间来使用该命名空间中的自定义类型。
    使用方法:

    • 首先使用引入命名空间
    • 然后使用来指明网站类型
    <head prefix="my_namespace: http://example.com/ns#">
    <meta property="og:type" content="my_namespace:my_type" />
    
    • 1
    • 2
    对象类型使用

    对象类型使用就是指定og:type为某一个类型之后,可以为该类型继续添加其他属性描述。
    og:typemusic.song表示该网页时一个音乐网页,同时可以使用music:duration属性描述歌曲持续的时间,music:album属性描述歌曲所在的专辑等等,还有其他属性。

    <meta property="og:type" content="music.song" />
    <meta property="music:duration" content="240" />
    <meta property="music:album" content="https://www.example.com/my-album-page/" />
    
    • 1
    • 2
    • 3

    此代码定义了一个类型为music.song的对象。我们设定了歌曲的持续时间,以及歌曲的专辑链接。

    歌曲对象类型
    • music.song: 元标签用来表示网页中的音乐或歌曲。可用的类型描述有:
      • music:duration 歌曲长度
      • music:album:歌曲的专辑
      • music:album:dis: 该歌曲在专辑的哪张光盘上
      • music:album:track:这首歌是哪首歌
      • music:musician:制作这首歌的音乐家
    • music.album:表示音乐专辑。可用的类型描述有:
      • music:song: 这张专辑的歌曲
      • music:song:track:
      • music:song:disc:
      • music:musician:制作这首歌的音乐家
      • music:release_date : 专辑发行日期
    • music.playlist:表示音乐列表的类型。可用的类型描述有:
      • music:song:这个音乐列表的歌曲
      • music:song:disc
      • music:song:track
      • music:creator:此播放列表的创建者。
    • music.radio_station:表示音乐的电台类型
      • music:creator:此电台的创建者。
    视频对象类型
    • video.movie 表示电影类型。可用的类型描述有:
      • video:actor :电影中的演员。
      • video:actor:role:他们扮演的角色。
      • video:director:电影导演。
      • video:writer:电影的作家。
      • video:duration:电影的长度,以秒为单位。
      • video:release_date:日期电影。
      • video:tag-:与此电影关联的标记词。
    • video.episode 表示电视剧集
      • video:actor-与video.movi​​e相同
      • video:actor:role
      • video:director
      • video:writer
      • video:duration
      • video:release_date
      • video:tag
      • video:series:电视剧属于那哪一类型。
    • video.tv_show多集电视节目。可用属性与video.movi​​e相同。
    • video.other不属于任何其他类别的视频。可用属性与video.movi​​e相同。
    文章对象类型
    <meta property="og:type" content="article" />
    <meta property="article:published_time" content="2020-01-01T12:00:00Z" />
    
    • 1
    • 2
    • article:表示文章类型,可用的属性有
      • article:published_time:文章首次发表日期。
      • article:modified_time:文章最后改变日期。
      • article:expiration_time: 文章后过时日期。
      • article:author:文章作者。
      • article:section:高级部分名称。
      • article:tag-:与本文相关的标记词。
    书籍对象类型
    • book:表示书籍类型,可用的属性有
      • book:author:谁撰写了这本书。
      • book:isbn:的ISBN
      • book:release_date:书发行时间。
      • book:tag:与这本书相关的标记词。
    profile对象类型
    • profile:表示个人资料或用户资料
      • profile:first_name:用户名字。
      • profile:last_name:用户姓氏。
      • profile:username:标识它们的短而唯一的字符串。
      • profile:gender:用户性别。

    社交媒体抓取页面信息的原理

    开发图谱帮助我们在社交媒体上优化展示,那么是要通过什么实现的呢。
    原理和很简单,开发图谱实际上是一种数据协议,一种规范的数据结构,所以社交媒体才能根据这种规范的数据结构抓取到网站的信息从而进行展示。

    社交平台是会抓取目标页面的代码(注意是服务器返回的html代码,由js操作后的html它们是抓不到的),
    然后对html中的和<meta/></code>标签进行分析。一般来说<code><title/></code>会作为要分享的标题,<code><meta name="description" content=""></code>会作为分享的正文。这是最基本的两个抓取点。</p> <p>由于不同点社交媒体的"抓点"不一样,所以同一份代码在不同的社交媒体上的显示效果可能不同。<br> Open Graph协议由Facebook实施,但是被许多其他社交平台采纳,如<code>Twitter、LinkedIn、Pinterest</code>。<br> 但是<code>Twitter</code>有自己的一套元数据标签,当Twitter标签不存在时,才会使用开放图谱协议。</p> <h3><a name="t11"></a><a id="Twitter_Cards_213"></a>Twitter Cards</h3> <p>Twitter Cards 是 Twitter 用于在社交媒体上共享链接时显示丰富的文本、图像和视频的metadata 规范。<br> Twitter Cards 的使用方式:</p> <pre data-index="9" class="set-code-show prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token operator"><</span>meta name<span class="token operator">=</span><span class="token string">"twitter Cards的元标签名字"</span> content<span class="token operator">=</span><span class="token string">"twitter Cards元标签对应的内容"</span><span class="token operator">></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li></ul></pre> <p>twitter Cards的元标签:</p> <ul><li><code>twitter:card</code>:定义卡片类型,如“summary”,“summary_large_image”,“app”或“player”。</li><li><code>twitter:site</code>:相关的Twitter账户,通常是制作网站的Twitter用户名。</li><li><code>twitter:creator</code>:相关的Twitter账户,通常是创建内容的用户的Twitter用户名。</li><li><code>twitter:title</code>:标题,对应于页面的主要标题。</li><li><code>twitter:description</code>:内容描述,长度应在200个字符内,以保持在Twitter卡片上的整洁。</li><li><code>twitter:image</code>:用于卡片展示的图片URL。</li></ul> <h3><a name="t12"></a><a id="Microformats_230"></a>Microformats</h3> <p>Microformats是一种使用HTML(XHTML)中现有的标记元素(class和rel属性)来添加语义性的简单标记方法。<br> Microformats官网:<a href="https://microformats.org/" rel="nofollow">https://microformats.org/</a></p> <h4><a name="t13"></a><a id="Microformats_233"></a>Microformats的作用</h4> <p>Microformats的主要作用也是美化搜索引擎的搜索结果:</p> <ul><li>丰富网页语义:Microformats能够为网页内容增加额外的语义,使得机器更好地理解和利用网页中的信息。</li><li>提升搜索引擎优化(SEO):通过Microformats标记,搜索引擎能更准确地理解网页内容,以提供更相关的搜索结果,有助于提升网页在搜索引擎结果中的排名。</li><li>提供更丰富的用户体验:例如,通过使用Microformats,网站可以直接呈现出详细的联系方式、日历事件等,用户可以直接在搜索结果页进行操作,如添加联系人、保存事件等。</li><li>数据交互和分享:Microformats以标准化的方式描述数据,使得数据能更方便地被众多不同的应用和服务进行获取和使用,从而促进数据的交互和分享。</li><li>网页内容的解析和抽取:Microformats对于网页爬虫的解析和数据抽取非常有帮助,它可以使爬虫更准确地定位和理解待抽取的数据。</li></ul> <h4><a name="t14"></a><a id="Microformats__240"></a>Microformats 的使用</h4> <p>是使用标签来标记数据,使用如下属性来标记:</p> <ul><li>class: 类名</li><li>rel:关系,锚元素中目标地址的描述</li><li>rev:反关系,引用文档的描述</li></ul> <h5><a id="class_246"></a>class使用</h5> <p>Microformats的最常用的使用方式就是使用类名进行数据标记,但是类名之前需要添加特定的前缀来标识:</p> <ul><li> <p><code>h-class</code>:表示根类名,顶级根类通常指示<code>类型</code>和相应的预期属性词汇表。</p> <ul><li><code>h-card</code>:描述一个人或组织</li><li><code>h-entry</code>:描述情景或带有日期标记的在线内容,例如博客文章</li><li><code>h-feed</code>:描述帖子流或提要</li><li><code>h-event</code>:网络事件</li></ul> </li><li> <p><code>p-class</code>:表示纯文本属性</p> <ul><li><code>p-name</code>:个人或组织的完整/格式化名称。</li><li><code>p-summary</code>:条目摘要</li><li><code>p-country-name</code>:国家的名字</li><li><code>p-locality</code>:市/镇/村</li><li><code>p-street-addres</code>:街道号码+名称</li><li><code>p-author</code>:作者</li></ul> </li><li> <p><code>u-class</code>:表示<code>url</code>属性,例如<code>u-url</code>、<code>u-photo</code>、<code>u-logo</code></p> <ul><li><code>u-email</code>:电子邮件地址</li><li><code>u-photo</code>:个人或组织照片</li><li><code>u-url</code>:个人或组织的主页或其他url</li><li><code>u-uid</code>: 通用唯一标识,最好是规范的URL</li></ul> </li><li> <p><code>dt-class</code>:表示日期时间属性,例如<code>dt-start</code>、<code>dt-end</code>、<code>dt-body</code></p> <ul><li><code>dt-published</code>:条目的发布时间</li><li><code>dt-start</code>事件开始的日期时间</li><li><code>dt-end</code>事件结束的日期时间</li></ul> </li><li> <p><code>e-class</code>:表示元素树属性,其中包含的整个元素层次结构就是值,例如<code>e-content</code></p> <ul><li><code>e-content</code>:条目的完整内容</li></ul> </li></ul> <p>更多词汇:<a href="https://microformats.org/wiki/microformats2#v2_vocabularies" rel="nofollow">https://microformats.org/wiki/microformats2#v2_vocabularies</a><br> eg1:</p> <pre data-index="10" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>h-card<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://alice.example.com<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice Blogger<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li></ul></pre> <p>表示此页面包含一张卡片,该卡片描述了<code>Alice Blogger</code>以URL命名的个人或组织<code>https://alice.example.com</code>。</p> <p>eg2:</p> <pre data-index="11" class="set-code-hide prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>article</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>h-entry<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h1</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>p-name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Microformats are amazing<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h1</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span> Published by <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>p-author h-card<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://example.com<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>W. Developer<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> on <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>time</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>dt-published<span class="token punctuation">"</span></span> <span class="token attr-name">datetime</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>2013-06-13 12:00:00<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> 13<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>sup</span><span class="token punctuation">></span></span>th<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>sup</span><span class="token punctuation">></span></span> June 2013 <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>time</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>p-summary<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>In which I extoll the virtues of using microformats.<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>e-content<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Blah blah blah<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>article</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><div class="hide-preCode-box"><span class="hide-preCode-bt" data-report-view="{"spm":"1001.2101.3001.7365"}"><img class="look-more-preCode contentImg-no-view" src="https://1000bd.com/contentImg/2022/06/27/191644837.png" alt="" title=""></span></div><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li><li style="color: rgb(153, 153, 153);">15</li><li style="color: rgb(153, 153, 153);">16</li></ul></pre> <h5><a id="rel_302"></a>rel使用</h5> <p>微格式可以通过使用特殊属性<code>rel=</code>应用于页面,使用<code>rel</code>属性描述当前文档和链接文档之间的关系。<br> 使用方式:<code>rel=属性值</code>添加到标签上就可以</p> <ul><li><code>rel=author</code>:该属性表示当前页面的作者</li><li><code>rel=license</code>:表示当前页面所依据的许可证</li><li><code>rel=nofollow</code>:表示从当前页面派生的搜索引擎排名算法不应赋予链接文档任何权重。这有助于防止链接图算法在看到文档链接后对页面的权重高于原本的权重。</li></ul> <p>eg:</p> <pre data-index="12" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">rel</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>author<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://jamesg.blog<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>James Gallagher<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">rel</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>license<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://mit-license.org/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>MIT License<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">rel</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>nofollow<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://jamesg.blog<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>James Gallagher<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li></ul></pre> <h3><a name="t15"></a><a id="RDFa_317"></a>RDFa</h3> <p>RDFa不结合schema也可以使用,用来标记数据。主要用于搜索引擎搜索的时候进行优化展示。</p> <h4><a name="t16"></a><a id="RDFa_319"></a>RDFa是什么</h4> <p>RDFa是一种将结构化元数据嵌入到标记语言中的一种方法。它将多样化的数据加到HTML文档中,以便搜索引擎和其他网页服务能更有效地理解和利用网页内容。<br> RDFa最开始是为了将RDF(资源描述框架)元数据嵌入到XHTML文档中。但后来被扩展到其他标记语言中,包括HTML4、HTML5和XML。它已被W3C (World Wide Web Consortium) 标准化,并被Google、Yahoo、Bing和其他搜索引擎广泛支持。</p> <pre data-index="13" class="set-code-show prettyprint"><code class="has-numbering" onclick="mdcp.signin(event)" style="position: unset;"> RDF: RDF是“资源描述框架”的简称,它是一种用于描述网络资源(例如Web页面)的语言。 这种描述不仅限于简单的元数据(例如作者、创建日期等),还可以包含更具体的信息(例如文章的主题、产品的价格等)。 <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li></ul></pre> <h4><a name="t17"></a><a id="RDFa_326"></a>RDFa的使用方式</h4> <h5><a id="_327"></a>链接使用</h5> <p>使用<code>property</code>来表示<code>url</code>的地址,使用url是因为数据的可移植性、一致性和信息共享。使用URL消除术语中出现歧义的可能性。当每词汇术语是 URL 时,只需单击一下即可获得该词汇术语的详细解释.<br> eg:</p> <pre data-index="14" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The Trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Date: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/created<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>2011-09-10<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li></ul></pre> <p>如果标签上由<code>href</code>或<code>src</code>属性的话, property会自动与该属性的值而不是标签的文本内容。</p> <p>eg: 页面添加许可证</p> <pre data-index="15" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>All content on this site is licensed under <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://creativecommons.org/ns#license<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://creativecommons.org/licenses/by/3.0/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> a Creative Commons License<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span>. ©2011 Alice Birpemswick.<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li></ul></pre> <p><img src="https://1000bd.com/contentImg/2024/03/11/120001558.png" alt="在这里插入图片描述"></p> <h5><a id="vocab_345"></a>vocab使用</h5> <p>虽然通过 CMS 系统生成完整的 UR比较好用,但手动输入这些 URL 对于我们来说容易出错且乏味。所以使用<code>vocab</code>属性来指定这些URL属性的链接前缀,然后可在<code>property</code>中直接指明对应的词汇即可。<br> eg:<br> 使用vocal前:</p> <pre data-index="16" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The Trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Date: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/created<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>2011-09-10<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li></ul></pre> <p>使用vocal后:</p> <pre data-index="17" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The Trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Date: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>created<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>2011-09-10<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li></ul></pre> <p>当然链接方式和vocal方式可以一起用:</p> <pre data-index="18" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> ... <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The Trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Date: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>created<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>2011-09-10<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> ... <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>All content on this site is licensed under <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://creativecommons.org/ns#license<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://creativecommons.org/licenses/by/3.0/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> a Creative Commons License<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span>. ©2011 Alice Birpemswick.<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li></ul></pre> <h5><a id="resource_380"></a>resource使用</h5> <p>一个一面可能包含多个项目,即对一个属性不同页面部分可能有不同的取值,这种情况我们就可以使用<code>resource</code>来进行区分了。<br> eg: 一个页面上既有alice的文章又有Eve的文章,那么他们就属于不同的资源就可以使用<code>resource</code>来进行区分了:</p> <pre data-index="19" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/trouble_with_bob<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Date: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>created<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>2011-09-10<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h3</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>creator<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h3</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/jos_barbecue<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Jo's Barbecue<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Date: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>created<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>2011-09-14<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h3</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>creator<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Eve<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h3</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li></ul></pre> <p>数据关系:<br> <img src="https://1000bd.com/contentImg/2024/03/11/120001574.png" alt="在这里插入图片描述"><br> resource也可以进行嵌套:</p> <pre data-index="20" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/trouble_with_bob<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> The trouble with Bob is that he takes much better photos than I do: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/bob/photos/sunset.jpg<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>img</span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/bob/photos/sunset.jpg<span class="token punctuation">"</span></span> <span class="token punctuation">/></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Beautiful Sunset<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> by <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>creator<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>. <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h3</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>creator<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h3</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li></ul></pre> <p>Alice的文章中包含Bob的照片</p> <h5><a id="FriendofaFriend_416"></a>联系方式的标识(Friend-of-a-Friend词汇表)</h5> <p>Dublin Core 词汇表(<code>http://purl.org/dc/terms/</code>)不提供用于描述联系信息的属性名称,但 Friend-of-a-Friend词汇表( <code>http://xmlns.com/foaf/0.1</code> )提供,所以我们使用Friend-of-a-Friend词汇表进行标识。<br> 使用<code>vocal</code>指明<code>http://xmlns.com/foaf/0.1</code>,同时联系方式又属于Person类,所以需要使用<code>typeof="Person"</code>来进行标识:</p> <pre data-index="21" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://xmlns.com/foaf/0.1/<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice Birpemswick<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>, Email: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>mbox<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>mailto:alice@example.com<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>alice@example.com<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span>, Phone: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>phone<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>tel:+1-617-555-7332<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>+1 617.555.7332<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li></ul></pre> <p>同时<code>typeof="Person"</code>可以重复使用代表多个人, <code> property="knows"</code>表示作者和这几个人是好友关系:</p> <pre data-index="22" class="set-code-hide prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://xmlns.com/foaf/0.1/<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice Birpemswick<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>, Email: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>mbox<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>mailto:alice@example.com<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>alice@example.com<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span>, Phone: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>phone<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>tel:+1-617-555-7332<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>+1 617.555.7332<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>ul</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>knows<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>homepage<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/bob/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>knows<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>homepage<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/eve/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Eve<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>knows<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>homepage<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/manu/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Manu<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>ul</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><div class="hide-preCode-box"><span class="hide-preCode-bt" data-report-view="{"spm":"1001.2101.3001.7365"}"><img class="look-more-preCode contentImg-no-view" src="https://1000bd.com/contentImg/2022/06/27/191644837.png" alt="" title=""></span></div><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li><li style="color: rgb(153, 153, 153);">15</li><li style="color: rgb(153, 153, 153);">16</li><li style="color: rgb(153, 153, 153);">17</li><li style="color: rgb(153, 153, 153);">18</li></ul></pre> <h5><a id="_452"></a>语句复制</h5> <p>有的时候相同的语句标识可能需要多次编写,为了避免重复编写我们可以使用<code>rdfa:copy</code>和<code>rdfa:Pattern</code>实现:</p> <ul><li><code>typeof="rdfa:Pattern"</code> 实现可复制的代码</li><li><code>property="rdfa:copy"</code>标记需要复制的地方</li></ul> <pre data-index="23" class="set-code-hide prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/trouble_with_bob<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Date: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>created<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>2011-09-10<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h3</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>creator<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h3</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>link</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>rdfa:copy<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>#ccpattern<span class="token punctuation">"</span></span><span class="token punctuation">/></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/jims_concert<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>I was at Jim's concert the other day<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Date: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>created<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>2011-10-22<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h3</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>creator<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h3</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>link</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>rdfa:copy<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>#ccpattern<span class="token punctuation">"</span></span><span class="token punctuation">/></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>#ccpattern<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>rdfa:Pattern<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://creativecommons.org/ns#<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>All content on this blog item is licensed under <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>license<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://creativecommons.org/licenses/by/3.0/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> a Creative Commons License<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span>. <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>attributionName<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>©2011 Alice Birpemswick<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>.<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><div class="hide-preCode-box"><span class="hide-preCode-bt" data-report-view="{"spm":"1001.2101.3001.7365"}"><img class="look-more-preCode contentImg-no-view" src="https://1000bd.com/contentImg/2022/06/27/191644837.png" alt="" title=""></span></div><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li><li style="color: rgb(153, 153, 153);">15</li><li style="color: rgb(153, 153, 153);">16</li><li style="color: rgb(153, 153, 153);">17</li><li style="color: rgb(153, 153, 153);">18</li><li style="color: rgb(153, 153, 153);">19</li></ul></pre> <h5><a id="_477"></a>使用多个词汇表</h5> <p>在一个页面使用多个词汇表很可能会引起的冲突,所以我们使用<code>prefix</code>来为不同的词汇表添加前缀方式混淆,使用<code>prefix</code>声明之后就无需使用<code>vocab</code>再次声明了。</p> <pre data-index="24" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>html</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>head</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>head</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span> <span class="token attr-name">prefix</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>dc: http://purl.org/dc/terms/ schema: http://schema.org/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/trouble_with_bob<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>schema:BlogPosting<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>dc:title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h3</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>dc:creator<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>#me<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h3</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>schema:articleBody<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>The trouble with Bob is that he takes much better photos than I do:<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>html</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li></ul></pre> <p><code>prefix</code>可以和<code>vocab</code>一起使用:</p> <pre data-index="25" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/<span class="token punctuation">"</span></span> <span class="token attr-name">prefix</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>schema: http://schema.org/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/trouble_with_bob<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>schema:BlogPosting<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h3</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>creator<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>#me<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h3</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>schema:articleBody<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>The trouble with Bob is that he takes much better photos than I do:<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li></ul></pre> <p>如果多个词汇表需要在一个标签上使用同一个属性,这种情况就可以给<code>property</code>属性赋值数组格式:</p> <pre data-index="26" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span> <span class="token attr-name">prefix</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>dc: http://purl.org/dc/terms/ schema: http://schema.org/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/trouble_with_bob<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>schema:BlogPosting<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>dc:title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h3</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>dc:creator schema:creator<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>#me<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h3</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>schema:articleBody<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>The trouble with Bob is that he takes much better photos than I do:<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li></ul></pre> <p>同时<code>typeof</code>也可以赋值数组:</p> <pre data-index="27" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>sidebar<span class="token punctuation">"</span></span> <span class="token attr-name">prefix</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>foaf: http://xmlns.com/foaf/0.1/ schema: http://schema.org/<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>#me<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>foaf:Person schema:Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>foaf:name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice Birpemswick<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>, Email: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>foaf:mbox<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>mailto:alice@example.com<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>alice@example.com<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span>, Phone: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>foaf:phone<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>tel:+1-617-555-7332<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>+1 617.555.7332<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> ... <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li></ul></pre> <h5><a id="_534"></a>默认声明</h5> <p>许多具有众所周知前缀的词汇表被 Web 社区广泛使用——Dublin Core 词汇表就是一个很好的例子,默认声明为<code>dc</code>,所以无需声明就可以使用<code>property="dc:title"</code>。虽然可以这样使用,但是不建议:</p> <pre data-index="28" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>dc:title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h3</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>dc:creator<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>#me<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Alice<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h3</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li></ul></pre> <h5><a id="content_546"></a>content使用</h5> <p>机器不容易读懂日期信息,就可以使用<code>content</code>属性声明机器易读的数据结构。</p> <pre data-index="29" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h2</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>The Trouble with Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h2</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Date: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://purl.org/dc/terms/created<span class="token punctuation">"</span></span> <span class="token attr-name">content</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>2011-09-10<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>10th of September, 2011<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li></ul></pre> <h5><a id="datatype_554"></a>数据类型datatype</h5> <p>有的时候我们更倾向于指明字段所代表的具体数据类型:</p> <pre data-index="30" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"> ©<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>dc:date<span class="token punctuation">"</span></span> <span class="token attr-name">datatype</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>xsd:gYear<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>2011<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> Alice Birpemswick. <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li></ul></pre> <p>这样就表示2011代表年份。<br> 更多其它的数据类型可以参照:<a href="https://www.w3.org/TR/xmlschema11-2/#built-in-datatypes" rel="nofollow">https://www.w3.org/TR/xmlschema11-2/#built-in-datatypes</a></p> <h5><a id="about_563"></a>设置上下文替代方案about</h5> <p><code>resource</code>表示资源的引入正常情况下,<code>property</code>属性必须在<code>resource</code>的子标签下面,即不允许:</p> <pre data-index="31" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/trouble_with_bob<span class="token punctuation">"</span></span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>鲍勃的麻烦<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li></ul></pre> <p>但是使用<code>about</code>代替<code>resource</code>就可以和<code>property</code>在同一个标签上使用:</p> <pre data-index="32" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>ul</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">about</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/trouble_with_bob<span class="token punctuation">"</span></span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>鲍勃的麻烦<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">about</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>/alice/posts/jos_barbecue<span class="token punctuation">"</span></span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>乔的烧烤<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>ul</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li></ul></pre> <h5><a id="ref_577"></a>属性替代方案ref</h5> <p>ref可以简化在多个标签上添加同一个属性:<br> 简化前:</p> <pre data-index="33" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://xmlns.com/foaf/0.1/<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>#me<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>ul</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>knows<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/bob/#me<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>homepage<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/bob/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>knows<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/eve/#me<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>homepage<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/eve/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Eve<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>knows<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/manu/#me<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>homepage<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/manu/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Manu<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>ul</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li></ul></pre> <p>简化后:</p> <pre data-index="34" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://xmlns.com/foaf/0.1/<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>#me<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>ul</span> <span class="token attr-name">rel</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>knows<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/bob/#me<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>homepage<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/bob/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Bob<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/eve/#me<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>homepage<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/eve/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Eve<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>li</span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/manu/#me<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>homepage<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://example.com/manu/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Manu<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>li</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>ul</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li></ul></pre> <h3><a name="t18"></a><a id="JSONLD_615"></a>JSON-LD</h3> <p>JSON-LD不结合schema也可以使用,用来标记数据。主要用于搜索引擎搜索的时候进行优化展示。</p> <h4><a name="t19"></a><a id="JSONLD_617"></a>JSON-LD是什么</h4> <p>JSON-LD是由W3C推出的一种基于JSON的数据格式化标准,用于在网络环境中创建交互链接的数据。它主要用于描述资源和创建关联数据。<br> 官网:<a href="https://json-ld.org/" rel="nofollow">https://json-ld.org/</a></p> <h4><a name="t20"></a><a id="JSONLD_621"></a>JSON-LD的一些基本概念</h4> <p>IRI术语表示JSON-LD文档:(结合schema.org 词汇表)</p> <pre data-index="35" class="set-code-show prettyprint"><code class="prism language-js has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"http://schema.org/name"</span><span class="token operator">:</span> <span class="token string">"Manu Sporny"</span><span class="token punctuation">,</span> <span class="token string-property property">"http://schema.org/url"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"http://schema.org/image"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/images/manu.png"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li></ul></pre> <h5><a id="content_634"></a>@content</h5> <p>上述编写方法不利于开发者使用,所以引入了content。<br> content相当于一个全局映射变量,用于将<code>术语</code>映射到<code>IRI</code>,术语区分大小写,并且大多数非保留 JSON-LD关键字的有效字符串都可以用作术语。<br> 上述示例使用content映射列表,该映射表称为扩展术语定义:</p> <pre data-index="36" class="set-code-show prettyprint"><code class="prism language-js has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/name"</span><span class="token punctuation">,</span> <span class="token string-property property">"image"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/image"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"@id"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"homepage"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/url"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"@id"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li></ul></pre> <p>就表示name就代表<code>http://schema.org/name</code>,下文中想要使用<code>http://schema.org/name</code>时直接使用image即可。自定义的上下文可以直接嵌入到文档中。<br> 使用该映射列表之后JSON-LD的写法就可以简化为:</p> <pre data-index="37" class="set-code-hide prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/name"</span><span class="token punctuation">,</span> <span class="token string-property property">"image"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/image"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"@id"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"homepage"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/url"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"@id"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Manu Sporny"</span><span class="token punctuation">,</span> <span class="token string-property property">"homepage"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/"</span><span class="token punctuation">,</span> <span class="token string-property property">"image"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/images/manu.png"</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><div class="hide-preCode-box"><span class="hide-preCode-bt" data-report-view="{"spm":"1001.2101.3001.7365"}"><img class="look-more-preCode contentImg-no-view" src="https://1000bd.com/contentImg/2022/06/27/191644837.png" alt="" title=""></span></div><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li><li style="color: rgb(153, 153, 153);">15</li><li style="color: rgb(153, 153, 153);">16</li></ul></pre> <p>但是通常情况下不用我们自己定义映射表,直接使用<code>@context</code>引入外部已经定义好的上下文文档就可以,如下是引入外部content,简化后的JSON-LD:</p> <pre data-index="38" class="set-code-show prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token string">"https://json-ld.org/contexts/person.jsonld"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Manu Sporny"</span><span class="token punctuation">,</span> <span class="token string-property property">"homepage"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/"</span><span class="token punctuation">,</span> <span class="token string-property property">"image"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/images/manu.png"</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li></ul></pre> <ul><li>上下文中定义<code>@base</code>可以设置文档的基本IRI</li><li>上下文中定义<code>@vocab</code>可以设置一个公共前缀,该前缀用作词汇表映射</li></ul> <pre data-index="39" class="set-code-show prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@vocab"</span><span class="token operator">:</span> <span class="token string">"http://example.com/vocab/"</span><span class="token punctuation">,</span> <span class="token string-property property">"@base"</span><span class="token operator">:</span> <span class="token string">"http://example.com/document.jsonld"</span><span class="token punctuation">,</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li></ul></pre> <h5><a id="id_697"></a>@id</h5> <p><code>@id</code>是节点标识符,标识该内容是一个节点。</p> <pre data-index="40" class="set-code-show prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/name"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://me.markus-lanthaler.com/"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Markus Lanthaler"</span><span class="token punctuation">,</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li></ul></pre> <h5><a id="type_709"></a>@type</h5> <p><code>@type</code>用于指明节点对象的类型,可以直接使用url为其赋值:</p> <pre data-index="41" class="set-code-show prettyprint"><code class="prism language-js has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"givenName"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/givenName"</span><span class="token punctuation">,</span> <span class="token string-property property">"familyName"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/familyName"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://me.markus-lanthaler.com/"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/Person"</span><span class="token punctuation">,</span> <span class="token string-property property">"givenName"</span><span class="token operator">:</span> <span class="token string">"Markus"</span><span class="token punctuation">,</span> <span class="token string-property property">"familyName"</span><span class="token operator">:</span> <span class="token string">"Lanthaler"</span><span class="token punctuation">,</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li></ul></pre> <p>也可以是一个数组为节点分配多种类型:</p> <pre data-index="42" class="set-code-show prettyprint"><code class="prism language-js has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://me.markus-lanthaler.com/"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"http://schema.org/Person"</span><span class="token punctuation">,</span> <span class="token string">"http://xmlns.com/foaf/0.1/Person"</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li></ul></pre> <p>也可以是活动上下文中定义的术语:</p> <pre data-index="43" class="set-code-show prettyprint"><code class="prism language-js has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"Person"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/Person"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://example.org/places#BrewEats"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"Person"</span><span class="token punctuation">,</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li></ul></pre> <h5><a id="_746"></a>其他的语法标记</h5> <ul><li>@base:用于设置基本IRI,根据该基本 IRI 来解析那些相对于文档进行解释的相对IRI引用。</li><li>@container:用于设置术语 的默认容器类型。</li><li>@direction:用于设置<code>JSON-LD</code>的基本方向,该值不是类型化值</li><li>@graph:用来表达图形。</li><li>@import:在上下文定义 中用于加载外部上下文。</li><li>@included:在顶级节点对象中用于定义包含块,用于将辅助节点对象包含在另一个节点对象中。</li><li>@index:用于指定容器用于索引信息,并且处理应继续深入到 JSON 数据结构。</li><li>@json:用作JSON 文字@type的值。</li><li>@language:用于指定特定字符串值的语言或 JSON-LD 文档的默认语言。</li><li>@list:用于表达一组有序的数据。</li><li>@nest:用于定义节点对象的属性,该属性将该节点的属性组合在一起,但不是图中的边。</li><li>@none:当索引节点没有 被索引的功能时,用作索引映射、id映射、语言映射、类型映射或使用映射索引到其他值的 其他地方的索引值。</li><li>@prefix:有了值true,允许在压缩时使用该术语构建紧凑的IRI。</li><li>@propagate:在上下文定义 中使用以更改该上下文的范围。默认情况下,它是true,这意味着上下文在节点对象之间传播</li><li>@protected:用于防止上下文的术语定义被其他上下文覆盖。</li><li>@reverse:用于表达反向属性。</li><li>@set:用于表达无序数据集并确保值始终表示为数组。</li><li>@type:用于设置节点 的类型或类型化值的数据类型。</li><li>@value:用于指定与图中特定属性 关联的数据。</li><li>@version:在上下文定义 中用于设置处理模式。</li><li>@vocab:用于扩展具有@type公共前缀IRI 的属性和值。</li></ul> <h4><a name="t21"></a><a id="JSONLD_768"></a>JSON-LD的格式</h4> <p>JSON-LD有4种展示方式:</p> <ul><li>Expanded 格式(扩展格式)</li><li>Compacted 格式 (压缩格式)</li><li>Flattened格式 (扁平化格式)</li><li>Framed格式(框架格式)</li></ul> <h5><a id="Expanded__774"></a>Expanded 格式</h5> <p>即未经处理的原始格式</p> <pre data-index="44" class="set-code-show prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">[</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"http://xmlns.com/foaf/0.1/name"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"Manu Sporny"</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token string-property property">"http://xmlns.com/foaf/0.1/homepage"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li></ul></pre> <h5><a id="Compacted__788"></a>Compacted 格式</h5> <p>即使用了<code>@context</code>定义的JSON-LD,是最常用的格式。</p> <pre data-index="45" class="set-code-show prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"http://xmlns.com/foaf/0.1/name"</span><span class="token punctuation">,</span> <span class="token string-property property">"homepage"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://xmlns.com/foaf/0.1/homepage"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"@id"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Manu Sporny"</span><span class="token punctuation">,</span> <span class="token string-property property">"homepage"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/"</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li></ul></pre> <h5><a id="Flattened_805"></a>Flattened格式</h5> <p>扁平化模式。<br> 为扁平化时:</p> <pre data-index="46" class="set-code-hide prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"http://xmlns.com/foaf/0.1/name"</span><span class="token punctuation">,</span> <span class="token string-property property">"knows"</span><span class="token operator">:</span> <span class="token string">"http://xmlns.com/foaf/0.1/knows"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://me.markus-lanthaler.com/"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Markus Lanthaler"</span><span class="token punctuation">,</span> <span class="token string-property property">"knows"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/about#manu"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Manu Sporny"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Dave Longley"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><div class="hide-preCode-box"><span class="hide-preCode-bt" data-report-view="{"spm":"1001.2101.3001.7365"}"><img class="look-more-preCode contentImg-no-view" src="https://1000bd.com/contentImg/2022/06/27/191644837.png" alt="" title=""></span></div><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li><li style="color: rgb(153, 153, 153);">15</li><li style="color: rgb(153, 153, 153);">16</li></ul></pre> <p>扁平化后:</p> <pre data-index="47" class="set-code-hide prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"http://xmlns.com/foaf/0.1/name"</span><span class="token punctuation">,</span> <span class="token string-property property">"knows"</span><span class="token operator">:</span> <span class="token string">"http://xmlns.com/foaf/0.1/knows"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"@graph"</span><span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://me.markus-lanthaler.com/"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Markus Lanthaler"</span><span class="token punctuation">,</span> <span class="token string-property property">"knows"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/about#manu"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"_:b0"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://manu.sporny.org/about#manu"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Manu Sporny"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"_:b0"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Dave Longley"</span> <span class="token punctuation">}</span><span class="token punctuation">]</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><div class="hide-preCode-box"><span class="hide-preCode-bt" data-report-view="{"spm":"1001.2101.3001.7365"}"><img class="look-more-preCode contentImg-no-view" src="https://1000bd.com/contentImg/2022/06/27/191644837.png" alt="" title=""></span></div><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li><li style="color: rgb(153, 153, 153);">15</li><li style="color: rgb(153, 153, 153);">16</li><li style="color: rgb(153, 153, 153);">17</li><li style="color: rgb(153, 153, 153);">18</li><li style="color: rgb(153, 153, 153);">19</li><li style="color: rgb(153, 153, 153);">20</li></ul></pre> <h5><a id="Framed_852"></a>Framed格式</h5> <p>框架模式,框架模式一层套一层,使用<code>contains</code>进行框架的嵌套。</p> <pre data-index="48" class="set-code-show prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@version"</span><span class="token operator">:</span> <span class="token number">1.1</span><span class="token punctuation">,</span> <span class="token string-property property">"@vocab"</span><span class="token operator">:</span> <span class="token string">"http://example.org/"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"Library"</span><span class="token punctuation">,</span> <span class="token string-property property">"contains"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"Book"</span><span class="token punctuation">,</span> <span class="token string-property property">"contains"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"Chapter"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li></ul></pre> <p>该框架文档描述了一种嵌入结构,该结构将Library类型的对象放置在顶部,其中Book类型的对象使用嵌入的contains属性作为属性值链接到库对象。它还将Chapter类型的对象作为 Book 对象的嵌入值放置在引用的Book对象中。</p> <h4><a name="t22"></a><a id="HTMLJSONLD_870"></a>在HTML中嵌入JSON-LD</h4> <p>只需要将<code>JSON-LD</code>的内容放置在属性设置为<code>typeapplication/ld+json</code>的脚本元素中就可以将其嵌套进HTML中</p> <pre data-index="49" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>script</span> <span class="token attr-name">type</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>application/ld+json<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token script"><span class="token language-javascript"> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token string">"https://json-ld.org/contexts/person.jsonld"</span><span class="token punctuation">,</span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://dbpedia.org/resource/John_Lennon"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"John Lennon"</span><span class="token punctuation">,</span> <span class="token string-property property">"born"</span><span class="token operator">:</span> <span class="token string">"1940-10-09"</span><span class="token punctuation">,</span> <span class="token string-property property">"spouse"</span><span class="token operator">:</span> <span class="token string">"http://dbpedia.org/resource/Cynthia_Lennon"</span> <span class="token punctuation">}</span> </span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>script</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li></ul></pre> <h5><a id="HTMLIRI_884"></a>HTML基层基本IRI</h5> <p>在HTML文档中可以使用<code><base></code>标签引入所依赖的JSON-ID内容的<code>基本IRI</code>,作用是确保所有系统按照统一基本IRI处理JSON-ID的内容。<br> eg:</p> <pre data-index="50" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>html</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>head</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>base</span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://dbpedia.org/resource/<span class="token punctuation">"</span></span><span class="token punctuation">/></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>script</span> <span class="token attr-name">type</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>application/ld+json<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token script"><span class="token language-javascript"> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token string">"https://json-ld.org/contexts/person.jsonld"</span><span class="token punctuation">,</span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"John_Lennon"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"John Lennon"</span><span class="token punctuation">,</span> <span class="token string-property property">"born"</span><span class="token operator">:</span> <span class="token string">"1940-10-09"</span><span class="token punctuation">,</span> <span class="token string-property property">"spouse"</span><span class="token operator">:</span> <span class="token string">"Cynthia_Lennon"</span> <span class="token punctuation">}</span> </span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>script</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>head</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>html</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li></ul></pre> <h5><a id="scriptJSONLD_903"></a>script标签JSON-LD的限制</h5> <p>如下字符需要进行转义:</p> <ul><li><code>&</code>→ & ( &符号,U+0026)</li><li><code><</code>→ <(小于号,U+003C)</li><li><code>></code>→ >(大于号,U+003E)</li><li><code>"</code>→ “(引号,U+0022)</li><li><code>'</code>→ '(撇号,U+0027)</li></ul> <p>eg:</p> <pre data-index="51" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>script</span> <span class="token attr-name">type</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>application/ld+json<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token script"><span class="token language-javascript"> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token string">"http://schema.org/"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"WebPageElement"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Encoding Issues"</span><span class="token punctuation">,</span> <span class="token string-property property">"description"</span><span class="token operator">:</span> <span class="token string">"Issues list such as unescaped </script> or -->"</span> <span class="token punctuation">}</span> </span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>script</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li></ul></pre> <h5><a id="_923"></a></h5> <h2><a name="t23"></a><a id="Schema_925"></a>Schema词汇表</h2> <p>注意Schema只是一个词汇表,需要结合上面的数据标记协议方法使用。</p> <h4><a name="t24"></a><a id="Schema_927"></a>Schema的作用</h4> <p>Schema提供一套共享的标记<code>词汇表</code>,用于在网页上结构化数据,美化搜索引擎的显示效果。<br> 正确地使用schema可以:</p> <ul><li>提高SEO效果:通过使用Schema.org标记,可以增加网站在搜索引擎中的可见性,从而提高网站的搜索引擎优化(SEO)效果。它可以帮助搜索引擎理解网站的内容,以及网页与其他网页的关系。</li><li>改善搜索引擎排名:Schema.org标记可以提供更丰富的信息,使搜索引擎更准确地理解网页内容,从而可能提高网页在搜索结果中的排名。</li><li>提供丰富的搜索结果:使用Schema.org标记的网页在搜索结果中可能会显示出更丰富的结果,比如评价星级、价格、开放时间等。</li><li>促进数据互通性:通过Schema.org,网站可以采用标准的词汇表对内容进行注释,从而促进了不同网站间数据的互通性。</li></ul> <p><mark>Schema.org是由Google、Microsoft、Yahoo和Yandex共同发起的,现已成为网站对搜索引擎优化的重要手段。</mark><br> 官网:<a href="https://schema.org/docs/documents.html" rel="nofollow">https://schema.org/docs/documents.html</a></p> <p>可能会有些乱,这里是naver搜索引擎的结构化标记效果和要求,可以作为参考:<a href="https://searchadvisor.naver.com/guide/structured-data-intro" rel="nofollow">https://searchadvisor.naver.com/guide/structured-data-intro</a></p> <h4><a name="t25"></a><a id="_941"></a>使用方式</h4> <pre data-index="52" class="set-code-show prettyprint"><code class="has-numbering" onclick="mdcp.signin(event)" style="position: unset;">我们可以使用Microdata、RDFa或 JSON-LD格式的方式将schema标记信息添加到 Web 内容中。 <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li></ul></pre> <h5><a id="Microdata_943"></a>Microdata</h5> <p>Microdata添加标记信息的方式是一组<code>标签</code>,使用标签的方式将标记信息添加到HTML5中。</p> <ul><li>第一步:添加项目类型<br> 首先找出HTML中想要标记的部分,比如一个电影,有如下信息想要标记:</li></ul> <pre data-index="53" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h1</span><span class="token punctuation">></span></span>头像<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h1</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span><span class="token punctuation">></span></span>导演:詹姆斯·卡梅隆(生于 1954 年 8 月 16 日)<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span><span class="token punctuation">></span></span>科幻小说<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>../movies/avatar-theatrical-trailer.html<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>预告片<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li></ul></pre> <p>对找到的标记部分最外层添加<code>itemscope</code>属性表示该块代码需要被标记,同时添加<code>itemtype="类型地址"</code>来指明标记类型。</p> <pre data-index="54" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">itemscope</span> <span class="token attr-name">itemtype</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://schema.org/Movie<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h1</span><span class="token punctuation">></span></span>头像<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h1</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span><span class="token punctuation">></span></span>导演:詹姆斯·卡梅隆(生于 1954 年 8 月 16 日)<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span><span class="token punctuation">></span></span>科幻小说<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>../movies/avatar-theatrical-trailer.html<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>预告片<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li></ul></pre> <p>itemtype=“https://schema.org/Movie” 表示是电影类型,类型的地址一般都是<code>https://schema.org/类型名</code></p> <ul><li>第二步:添加项目属性<br> 电影具有属性,例如演员、导演、收视率。要标记项目的属性,需使用<code>itemprop</code>属性。例如,要标识电影的导演,请添加itemprop="director"到包含导演姓名的元素:</li></ul> <pre data-index="55" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">itemscope</span> <span class="token attr-name">itemtype</span> <span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://schema.org/Movie<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h1</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span>头像<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h1</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span><span class="token punctuation">></span></span>导演:<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>director<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span>詹姆斯·卡梅隆<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>(生于 1954 年 8 月 16 日)<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>genre<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span>科幻小说<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>../movies/avatar-theatrical-trailer.html<span class="token punctuation">"</span></span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>trailer<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span> 预告片<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li></ul></pre> <p>具体哪些属性可以被标记我们就需要查看schema的文档了,文档的地址和itemtype指明的类型地址应该是一致的。<br> 如电影类型的文档配置地址是:<a href="https://schema.org/Movie" rel="nofollow">https://schema.org/Movie</a></p> <ul><li>第三步:嵌入其他属性<br> 不同的类型属性之间可以嵌套,如电影的导演是Person类型,那我们应该使用Person类型将导演内容进行标记,标签内的<code>itemprop</code>就是根据Person可配置的属性来的。</li></ul> <pre data-index="56" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">itemscope</span> <span class="token attr-name">itemtype</span> <span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://schema.org/Movie<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h1</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>头像<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h1</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>director<span class="token punctuation">"</span></span> <span class="token attr-name">itemscope</span> <span class="token attr-name">itemtype</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://schema.org/Person<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span> 导演:<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>詹姆斯·卡梅隆<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>(出生于 <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>birthDate<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span>1954 年 8 月 16 日<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>) <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>genre<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>科幻小说<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>../movies/avatar-theatrical-trailer.html<span class="token punctuation">"</span></span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>trailer<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>预告片<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li></ul></pre> <h5><a id="RDFa_996"></a>RDFa</h5> <p>RDFa是一项W3C的建议,以便在Web文档中嵌入丰富的元数据。<br> eg:</p> <pre data-index="57" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name"><span class="token namespace">xmlns:</span>dc</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span> <span class="token punctuation">"</span>http://purl.org/dc/elements/1.1/<span class="token punctuation">"</span></span> <span class="token attr-name">about</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span> <span class="token punctuation">"</span>http://www.example.com/books/wikinomics<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span> 在他的最新著作中<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span> <span class="token punctuation">"</span>dc :title<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span>维基经济学<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> , <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span> <span class="token punctuation">"</span>dc:creator<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span> Don Tapscott <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>解释了技术、 人口统计和商业的深刻变化。该书预计于 <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span> <span class="token punctuation">"</span> dc:date<span class="token punctuation">"</span></span> <span class="token attr-name">content</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span> <span class="token punctuation">"</span> 2006-10-01<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span> 2006年10月 <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>出版。 <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li></ul></pre> <p>RDFa 允许文本中的段落和单词与语义标记相关联。</p> <p>RDFa结合Schema使用的时候,像Microdata一样也是在标签中使用:</p> <ul><li>使用<code>vocab</code>在最外层标签指明schema网址,使用<code>typeof</code>指明schema对应的类型</li><li>使用<code>property</code>指明要标识的属性</li><li>多个类型可以嵌套</li></ul> <p>eg:</p> <pre data-index="58" class="set-code-hide prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">vocab</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://schema.org/<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Book<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://worldcat.org/entity/work/id/2292573321<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h1</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Rouge et le noir<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h1</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span><span class="token punctuation">></span></span>Author: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>author<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://viaf.org/viaf/17823<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Stendhal<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span><span class="token punctuation">></span></span>Language: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>inLanguage<span class="token punctuation">"</span></span> <span class="token attr-name">content</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>fr<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>French<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span><span class="token punctuation">></span></span>Has Translation: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>workTranslation<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>CreativeWork<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://worldcat.org/entity/work/id/460647<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Red and Black : A New Translation, Backgrounds and Sources, Criticism<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Book<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://worldcat.org/entity/work/id/460647<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>h1</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Red and Black : A New Translation, Backgrounds and Sources, Criticism<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>h1</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span><span class="token punctuation">></span></span>Author: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>author<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://viaf.org/viaf/17823<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Stendhal<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span><span class="token punctuation">></span></span>Language: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>inLanguage<span class="token punctuation">"</span></span> <span class="token attr-name">content</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>en<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>English<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span><span class="token punctuation">></span></span>Subject: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>about<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Psychological fiction, French<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span><span class="token punctuation">></span></span>Translation of: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>translationOfWork<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>CreativeWork<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://worldcat.org/entity/work/id/2292573321<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Rouge et le noir<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span><span class="token punctuation">></span></span>Translator: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">property</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>translator<span class="token punctuation">"</span></span> <span class="token attr-name">typeof</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>Person<span class="token punctuation">"</span></span> <span class="token attr-name">resource</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://viaf.org/viaf/8453420<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Robert Martin Adams<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><div class="hide-preCode-box"><span class="hide-preCode-bt" data-report-view="{"spm":"1001.2101.3001.7365"}"><img class="look-more-preCode contentImg-no-view" src="https://1000bd.com/contentImg/2022/06/27/191644837.png" alt="" title=""></span></div><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li><li style="color: rgb(153, 153, 153);">15</li><li style="color: rgb(153, 153, 153);">16</li></ul></pre> <h5><a id="JSONLD_1037"></a>JSON-LD格式</h5> <p><code>JSON-LD</code>是一种使用<code>JSON编码</code>链接数据的方法,JSON-LD围绕”上下文“的概念进行设计,提供从JSON到RDF模型的映射。为了将 JSON-LD 语法映射到 RDF,JSON-LD 允许将值强制为指定类型或用语言标记。<br> eg:</p> <pre data-index="59" class="set-code-show prettyprint"><code class="prism language-javascript has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"http://xmlns.com/foaf/0.1/name"</span><span class="token punctuation">,</span> <span class="token string-property property">"mainPage"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://xmlns.com/foaf/0.1/ workplaceHomepage"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"@id"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"Person"</span><span class="token operator">:</span> <span class="token string">"http://xmlns.com/foaf/0.1/Person"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"https://me.example.com "</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"Person"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"约翰·史密斯"</span><span class="token punctuation">,</span> <span class="token string-property property">"mainPage"</span><span class="token operator">:</span> <span class="token string">"https://www.example.com/"</span> <span class="token punctuation">}</span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li></ul></pre> <p>JSON-LD结合Schema使用的时候,需要在<code><script></code>中使用:</p> <ul><li>最外层要嵌套<code><script type="application/ld+json"></script></code>标签</li><li>以对象格式进行数据类型标记</li><li>使用<code>@context属性指明</code>schema地址`</li><li>使用<code>@type</code>指明要标识的属性</li></ul> <p>eg:</p> <pre data-index="60" class="set-code-hide prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>script</span> <span class="token attr-name">type</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>application/ld+json<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token script"><span class="token language-javascript"> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@context"</span><span class="token operator">:</span> <span class="token string">"https://schema.org/"</span><span class="token punctuation">,</span> <span class="token string-property property">"@graph"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://worldcat.org/entity/work/id/2292573321"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"Book"</span><span class="token punctuation">,</span> <span class="token string-property property">"author"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://viaf.org/viaf/17823"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"inLanguage"</span><span class="token operator">:</span> <span class="token string">"fr"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Rouge et le noir"</span><span class="token punctuation">,</span> <span class="token string-property property">"workTranslation"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"Book"</span><span class="token punctuation">,</span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://worldcat.org/entity/work/id/460647"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://worldcat.org/entity/work/id/460647"</span><span class="token punctuation">,</span> <span class="token string-property property">"@type"</span><span class="token operator">:</span> <span class="token string">"Book"</span><span class="token punctuation">,</span> <span class="token string-property property">"about"</span><span class="token operator">:</span> <span class="token string">"Psychological fiction, French"</span><span class="token punctuation">,</span> <span class="token string-property property">"author"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://viaf.org/viaf/17823"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"inLanguage"</span><span class="token operator">:</span> <span class="token string">"en"</span><span class="token punctuation">,</span> <span class="token string-property property">"name"</span><span class="token operator">:</span> <span class="token string">"Red and Black : A New Translation, Backgrounds and Sources, Criticism"</span><span class="token punctuation">,</span> <span class="token string-property property">"translationOfWork"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://worldcat.org/entity/work/id/2292573321"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string-property property">"translator"</span><span class="token operator">:</span> <span class="token punctuation">{<!-- --></span> <span class="token string-property property">"@id"</span><span class="token operator">:</span> <span class="token string">"http://viaf.org/viaf/8453420"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span> </span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>script</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><div class="hide-preCode-box"><span class="hide-preCode-bt" data-report-view="{"spm":"1001.2101.3001.7365"}"><img class="look-more-preCode contentImg-no-view" src="https://1000bd.com/contentImg/2022/06/27/191644837.png" alt="" title=""></span></div><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li><li style="color: rgb(153, 153, 153);">15</li><li style="color: rgb(153, 153, 153);">16</li><li style="color: rgb(153, 153, 153);">17</li><li style="color: rgb(153, 153, 153);">18</li><li style="color: rgb(153, 153, 153);">19</li><li style="color: rgb(153, 153, 153);">20</li><li style="color: rgb(153, 153, 153);">21</li><li style="color: rgb(153, 153, 153);">22</li><li style="color: rgb(153, 153, 153);">23</li><li style="color: rgb(153, 153, 153);">24</li><li style="color: rgb(153, 153, 153);">25</li><li style="color: rgb(153, 153, 153);">26</li><li style="color: rgb(153, 153, 153);">27</li><li style="color: rgb(153, 153, 153);">28</li><li style="color: rgb(153, 153, 153);">29</li><li style="color: rgb(153, 153, 153);">30</li><li style="color: rgb(153, 153, 153);">31</li><li style="color: rgb(153, 153, 153);">32</li><li style="color: rgb(153, 153, 153);">33</li><li style="color: rgb(153, 153, 153);">34</li><li style="color: rgb(153, 153, 153);">35</li><li style="color: rgb(153, 153, 153);">36</li></ul></pre> <h4><a name="t26"></a><a id="Schema_1103"></a>Schema常用的标记类型</h4> <ul><li>创意作品:<a href="https://schema.org/CreativeWork" rel="nofollow">创意作品</a>、<a href="https://schema.org/Book" rel="nofollow">书籍</a>、<a href="https://schema.org/Movie" rel="nofollow">电影</a>、<a href="https://schema.org/MusicRecording" rel="nofollow">音乐录音</a>、<a href="https://schema.org/Recipe" rel="nofollow">食谱</a>、<a href="https://schema.org/TVSeries" rel="nofollow">电视剧</a></li><li>嵌入的非文本对象:<a href="https://schema.org/AudioObject" rel="nofollow">音频</a>、<a href="https://schema.org/ImageObject" rel="nofollow">图片</a>、<a href="https://schema.org/VideoObject" rel="nofollow">视频</a></li><li><a href="https://schema.org/Event" rel="nofollow">事件</a></li><li><a href="https://schema.org/Organization" rel="nofollow">组织</a></li><li><a href="https://schema.org/Person" rel="nofollow">人</a></li><li><a href="https://schema.org/Place" rel="nofollow">地点</a>、<a href="https://schema.org/LocalBusiness" rel="nofollow">当地企业</a>、<a href="https://schema.org/Restaurant" rel="nofollow">餐厅</a></li><li><a href="https://schema.org/Product" rel="nofollow">产品</a>、<a href="https://schema.org/Offer" rel="nofollow">报价</a>、<a href="https://schema.org/AggregateOffer" rel="nofollow">聚合报价</a></li><li><a href="https://schema.org/Review" rel="nofollow">评论</a>、<a href="https://schema.org/AggregateRating" rel="nofollow">综合评级</a></li></ul> <h4><a name="t27"></a><a id="Schema_1113"></a>Schema的一些特殊处理</h4> <h5><a id="_1114"></a>日期时间处理</h5> <p>日期和时间可能对于某些机器来说很难读,因为,他不确定我们使用的是什么格式的时间和日期,所以需要我们使用<code>datatime</code>指明一下。</p> <pre data-index="61" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>time</span> <span class="token attr-name">datetime</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>2011-04-01<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>04/01/11<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>time</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>time</span> <span class="token attr-name">datetime</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>2011-05-08T19:30<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>May 8, 7:30pm<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>time</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">itemscope</span> <span class="token attr-name">itemtype</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://schema.org/Event<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> Event date: <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>time</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>startDate<span class="token punctuation">"</span></span> <span class="token attr-name">datetime</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>2011-05-08T19:30<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>May 8, 7:30pm<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>time</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li></ul></pre> <h5><a id="link_1126"></a>link标签的使用</h5> <p>有的时候我们不想让链接显示在页面上就可以使用<code><link></code>标签</p> <pre data-index="62" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">itemscope</span> <span class="token attr-name">itemtype</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://schema.org/Book<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>麦田里的守望者<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span>— <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>link</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>url<span class="token punctuation">"</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>http://en.wikipedia.org/wiki/The_Catcher_in_the_Rye<span class="token punctuation">"</span></span> <span class="token punctuation">/></span></span> 作者:<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>author<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>JD 塞林格<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li></ul></pre> <p>使用这种方式既标记了书籍的地址,又没有将地址显示在页面上,美化了页面。</p> <h5><a id="_1139"></a>元标签的使用</h5> <p>某些情况下由于信息的显示方式我们无法对其进行标记,这时我们就可以使用<code><meta></code>元标签进行标记了。</p> <pre data-index="63" class="set-code-show prettyprint"><code class="prism language-html has-numbering" onclick="mdcp.signin(event)" style="position: unset;"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">itemscope</span> <span class="token attr-name">itemtype</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://schema.org/Offer<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>name<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Blend-O-Matic<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>price<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>19.95 美元<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>评论<span class="token punctuation">"</span></span> <span class="token attr-name">itemscope</span> <span class="token attr-name">itemtype</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://schema.org/AggregateRating<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>img</span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>四星.jpg<span class="token punctuation">"</span></span> <span class="token punctuation">/></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>meta</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span> ratingValue<span class="token punctuation">"</span></span> <span class="token attr-name">content</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>4<span class="token punctuation">"</span></span> <span class="token punctuation">/></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>meta</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>bestRating<span class="token punctuation">"</span></span> <span class="token attr-name">content</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>5<span class="token punctuation">"</span></span> <span class="token punctuation">/></span></span> 基于 <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>span</span> <span class="token attr-name">itemprop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span> ratingCount<span class="token punctuation">"</span></span> <span class="token punctuation">></span></span>25<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>span</span><span class="token punctuation">></span></span> 个用户评分 <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span> <div class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}"></div></code><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li></ul></pre> <p>单纯的图片我们无法标记评分信息,和最好评分信息。所以我们使用<code><meta itemprop></code> 标记,使浏览器可以捕获到评分信息并显示在搜索页面上。</p> </div> </div> </li> <li class="list-group-item ul-li"> <b>相关阅读:</b><br> <nobr> <a href="/Article/Index/894028">值得掌握的Java代码优化技巧</a> <br /> <a href="/Article/Index/1267581">Vivado 2017.04版本安装教程</a> <br /> <a href="/Article/Index/945841">【图像增强】基于DEHAZENET和HWD的水下去散射图像增强附matlab代码</a> <br /> <a href="/Article/Index/1522098">PHP+Lunix+GIT 如何快速使用宝塔WebHook快速自动化部署</a> <br /> <a href="/Article/Index/1473616">面向开发者的Android</a> <br /> <a href="/Article/Index/1366800">在九天服务器平台上使用自己上传的数据集文件</a> <br /> <a href="/Article/Index/824018">责任链模式之Tomcat Filter应用</a> <br /> <a href="/Article/Index/1357381">深度优先搜索详解</a> <br /> <a href="/Article/Index/1167284">JSON Web Token</a> <br /> <a href="/Article/Index/764281">Service Worker cache 相比 HTTP cache 的一些优点</a> <br /> </nobr> </li> <li class="list-group-item from-a mb-2"> 原文地址:https://blog.csdn.net/mantou_riji/article/details/136513093 </li> </ul> </div> <div class="col-lg-4 col-sm-12"> <ul class="list-group" style="word-break:break-all;"> <li class="list-group-item ul-li-bg" aria-current="true"> 最新文章 </li> <li class="list-group-item ul-li"> <nobr> <a href="/Article/Index/2039405">沪漂五周年了:我越来越迷茫了</a> <br /> <a href="/Article/Index/2039406">Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文</a> <br /> <a href="/Article/Index/2039407">MySQL-Seconds_behind_master的精度误差</a> <br /> <a href="/Article/Index/2039408">[MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间</a> <br /> <a href="/Article/Index/2039409">AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊</a> <br /> <a href="/Article/Index/2039410">Agent OS :五种驯服不确定性的范式</a> <br /> <a href="/Article/Index/2039411">PortSwigger SQL注入LAB11</a> <br /> <a href="/Article/Index/2039412">数据库即时编译JIT</a> <br /> <a href="/Article/Index/2039413">[Begin]AI Learn Data Day 0</a> <br /> <a href="/Article/Index/2039414">深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU</a> <br /> </nobr> </li> </ul> <ul class="list-group pt-2" style="word-break:break-all;"> <li class="list-group-item ul-li-bg" aria-current="true"> 热门文章 </li> <li class="list-group-item ul-li"> <nobr> <a href="/Article/Index/888177">十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!</a> <br /> <a href="/Article/Index/797680">奉劝各位学弟学妹们,该打造你的技术影响力了!</a> <br /> <a href="/Article/Index/888183">五年了,我在 CSDN 的两个一百万。</a> <br /> <a href="/Article/Index/888179">Java俄罗斯方块,老程序员花了一个周末,连接中学年代!</a> <br /> <a href="/Article/Index/797730">面试官都震惊,你这网络基础可以啊!</a> <br /> <a href="/Article/Index/797725">你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法</a> <br /> <a href="/Article/Index/797702">心情不好的时候,用 Python 画棵樱花树送给自己吧</a> <br /> <a href="/Article/Index/797709">通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!</a> <br /> <a href="/Article/Index/797716">13 万字 C 语言从入门到精通保姆级教程2021 年版</a> <br /> <a href="/Article/Index/888192">10行代码集2000张美女图,Python爬虫120例,再上征途</a> <br /> </nobr> </li> </ul> </div> </div> </div> <!-- 主体 --> <!--body结束--> <!--这里是footer模板--> <!--footer--> <nav class="navbar navbar-inverse navbar-fixed-bottom"> <div class="container"> <div class="row"> <div class="col-md-12 text-center"> <div style="padding:0px 5px;"> <a href="/tools">小工具</a> <a href="https://games.1000bd.com">小游戏</a> </div> <div class="text-muted center foot-height"> Copyright © 2022 侵权请联系<a href="mailto:2656653265@qq.com">2656653265@qq.com</a>    <a href="https://beian.miit.gov.cn/" target="_blank">京ICP备2022015340号-1</a> </div> <div style=" padding:5px 0;"> <a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=11010502049817" style="display:inline-block;text-decoration:none;height:20px;line-height:20px;"> <img src="" style="float:left;" /><p style="float:left;height:20px;line-height:20px;margin: 0px 0px 0px 5px; color:#939393;">京公网安备 11010502049817号</p></a> </div> </div> </div> </div> </nav> <!--footer--> <!--footer模板结束--> <script src="/js/plugins/jquery/jquery.js"></script> <script src="/js/bootstrap.min.js"></script> <!--这里是scripts模板--> <!--scripts模板结束--> </body> </html>