Schema.org 中的指针到底是什么以及如何将它们与 JSON-LD 一起使用?
What exactly are pointers in Schema.org and how to use them with JSON-LD?
schema.org 文档有时引用 "pointers"。例如。 Product
schema 有 属性 isSimilarTo
.
我明白,我可以直接使用 Product
或 Service
。例如:
<script type="application/ld+json">
{
"@context": "http://schema.org/",
"@type": "Product",
"name": "BMW",
"isSimilarTo": {
"@type": "Product",
"name": "Mercedes Benz"
},
"offers": {
"@type": "Offer",
"priceCurrency": "EUR",
"price": "100000.00"
}
}
</script>
这是在此上下文中使用和解释术语 'pointer' 的唯一且正确的方法吗?对于一个指针,我宁愿期望一些值(一个 ID 或一个 URL 或类似的)只是指向另一个产品或服务。
您的示例是正确的,它遵循了 Schema.org 对 isSimilarTo
属性 预期值的建议。但是 Schema.org 允许每个 属性 的 URI 值,即使对于那些没有明确列出 URL
作为预期值的 URI 值也是如此。
因此您还可以使用:
"isSimilarTo": {
"@id": "https://example.com/products/mercedes-benz#this"
},
请注意,消费者(如 Google)不一定遵循这些参考。您也可以同时使用这两种方式:在当前页面上提供数据(或部分数据),并引用项目的 URI:
"isSimilarTo": {
"@id": "https://example.com/products/mercedes-benz#this",
"@type": "Product",
"name": "Mercedes Benz",
"url": "https://example.com/products/mercedes-benz"
},
schema.org 文档有时引用 "pointers"。例如。 Product
schema 有 属性 isSimilarTo
.
我明白,我可以直接使用 Product
或 Service
。例如:
<script type="application/ld+json">
{
"@context": "http://schema.org/",
"@type": "Product",
"name": "BMW",
"isSimilarTo": {
"@type": "Product",
"name": "Mercedes Benz"
},
"offers": {
"@type": "Offer",
"priceCurrency": "EUR",
"price": "100000.00"
}
}
</script>
这是在此上下文中使用和解释术语 'pointer' 的唯一且正确的方法吗?对于一个指针,我宁愿期望一些值(一个 ID 或一个 URL 或类似的)只是指向另一个产品或服务。
您的示例是正确的,它遵循了 Schema.org 对 isSimilarTo
属性 预期值的建议。但是 Schema.org 允许每个 属性 的 URI 值,即使对于那些没有明确列出 URL
作为预期值的 URI 值也是如此。
因此您还可以使用:
"isSimilarTo": {
"@id": "https://example.com/products/mercedes-benz#this"
},
请注意,消费者(如 Google)不一定遵循这些参考。您也可以同时使用这两种方式:在当前页面上提供数据(或部分数据),并引用项目的 URI:
"isSimilarTo": {
"@id": "https://example.com/products/mercedes-benz#this",
"@type": "Product",
"name": "Mercedes Benz",
"url": "https://example.com/products/mercedes-benz"
},