gpt4 book ai didi

rdf - JSON-LD 中@vocab 的用途是什么,与@context 有什么区别?

转载 作者:行者123 更新时间:2023-12-03 14:36:05 24 4
gpt4 key购买 nike

什么是@vocab JSON-LD 中的属性?正如我所见,您可以“导入”远程词汇表,但这与您可以使用 @context 做的事情不一样吗? ?如果我没有错,那么您可以为 @context“导入”远程源以及。那么@vocab的区别在哪里?和 @context ?

额外问题:我可以多做一个吗@vocab ?例如,第一个引用是 schema.org,另一个是 rdfs?

最佳答案

@vocab专门用于声明所有术语都源自的默认词汇表,而不必为每个术语声明特定的映射(就像您通常在 @context 中所做的那样)。

例如,请参阅此代码段(取自 JSON-LD 1.0 spec):

{
"@context": {
"@vocab": "http://schema.org/"
}
"@id": "http://example.org/places#BrewEats",
"@type": "Restaurant",
"name": "Brew Eats"
...
}

在这个片段中, @vocab用于定义在此上下文中,所有术语均源自 schema.org 词汇表。所以在下面的片段中, Restaurant映射到 http://schema.org/Restaurant , 和 name映射到 http://schema.org/name .您当然可以使用 @context 中的显式映射来完成此操作。还有:

{
"@context": {
"Restaurant": "http://schema.org/Restaurant",
"name" : "http://schema.org/name"
}
"@id": "http://example.org/places#BrewEats",
"@type": "Restaurant",
"name": "Brew Eats"
...
}

但是随着您开始使用越来越多的相同词汇表中的术语,这很快就会变得乏味。 @vocab只是一种有用的简短表达方式:“如果我没有一个术语的显式映射,这就是它映射到的”。

至于是否可以使用多个 @vocab : 您可以拥有多个 @vocab在 JSON-LD 文档中(就像您可以有多个 @context 一样),但在同一个 @context 中不能有多个.我相信它定义默认值的解释也清楚地说明了为什么不能在同一上下文中使用两个。

关于rdf - JSON-LD 中@vocab 的用途是什么,与@context 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30945898/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com