假设我们有以下JSON:
{
"@context":
{
"name": "http://schema.org/name",
"status": "http://schema.org/status"
},
"name": "Manu Sporny",
"status": "trollin'"
}
Run Code Online (Sandbox Code Playgroud)
该trollin'状态被标识一个URI: http://example.com/trolling.是否可以将trollin'上面示例中的关键字扩展为URI http://example.com/trolling?
直接操作上下文不起作用:
{
"@context":
{
"name": "http://schema.org/name",
"status": "http://schema.org/status",
"trollin'": "http://example.com/trolling"
},
"name": "Manu Sporny",
"status": "trollin'"
}
Run Code Online (Sandbox Code Playgroud)
(JSON游乐场)
强制的类型status来@id也是不行的,因为它会假设trollin'是一个相对的URI.
{
"@context":
{
"name": "http://schema.org/name",
"status": {
"@id": "http://schema.org/status",
"@type": "@id"
},
"trollin'": "http://example.com/trolling"
},
"name": "Manu Sporny",
"status": "trollin'"
}
Run Code Online (Sandbox Code Playgroud)
是的,你可以这样做,你需要将状态类型设置为@vocab:
{
"@context":
{
"name": "http://schema.org/name",
"status": {
"@id": "http://schema.org/status",
"@type": "@vocab"
},
"trollin'": "http://example.com/trolling"
},
"name": "Manu Sporny",
"status": "trollin'"
}
Run Code Online (Sandbox Code Playgroud)
这是一个游乐场的链接.
| 归档时间: |
|
| 查看次数: |
450 次 |
| 最近记录: |