【发布时间】:2016-12-10 01:25:34
【问题描述】:
我在主页上定义的WebSite 节点上定义了发布者Organization,现在我想从其他页面上的文章链接到该发布者。但是,我也想链接到WebSite,如果我遵循使用 URL 作为@id 的建议,它们自然会共享相同的@id。
{
"@context": "http://schema.org",
"@type": "WebSite",
"@id": "http://www.example.com/",
"url": "http://www.example.com/",
...
"publisher": {
"@type": "Organization",
"@id": "http://www.example.com/", <-- duplicated
"url": "http://www.example.com/"
}
}
{
"@context": "http://schema.org",
"@type": "WebPage",
"@id": "http://www.example.com/news",
"url": "http://www.example.com/news",
"isPartOf": {
"@id": "http://www.example.com/" <-- site or publisher?
}
...
"publisher": {
"@id": "http://www.example.com/" <-- site or publisher?
}
}
我假设每个节点的 ID 必须是唯一的,那么是否有用于唯一 ID(例如添加哈希)的最佳实践?
{
"@id": "http://www.example.com/#site",
...
"publisher": {
"@id": "http://www.example.com/#publisher",
}
}
如果可行,处理器 (Google) 会加载 @id 以查找节点的其余属性吗?
与此相关,在许多节点类型中发现的url 属性是否假定为@id(如果缺失)?对于大多数节点,我最终将页面的完整 URL 复制为 @id 和 url。这是常态吗?
【问题讨论】:
标签: url uri schema.org json-ld