(我已经在W3 / JSON邮件列表上问了这个问题,我也会在这里试试。)
虽然我在语义Web技术方面有丰富的经验,但我对JSON-LD还是比较陌生的。
我已阅读指南文件(https://www.w3.org/TR/json-ld/),如果支持相关功能,我无法获得:
假设您拥有@type
Person
和@type
Address
的JSON对象,两者都具有@id
属性。典型的API即将到来的数据将具有整数或一些内部依赖于上下文的ID等值。 RDF将这些值转换为基于前缀的URI(例如http://www.example.com/Person/123
或http://www.example.com/Address/xh324m44
)非常常见。
我想要做的是指定那些前缀并保持数据告诉@id
= '123'
,并在RDF序列化阶段发生值连接(相同的规范可以实现相反的转换)。显然,在这种用例中,前缀取决于对象的@type
,而@base
机制是不够的。此外,将此机制也用于属性也是有用的,例如,将地址URI前缀与"地址"的值相关联。 JSON属性。
目前看来JSON-LD目前还没有,或者我错过了什么?有关未来扩展的计划吗?
答案 0 :(得分:1)
您可以在上下文中使用 @base 为 @id 的值创建URI基础,但这不包括来自 @type 的内容STRONG>。这听起来像是通过定义URI模板并使用变量来扩展type和id来创建URI。您可以使用模板语言执行此操作并创建JSON-LD,但不能直接在JSON-LD中创建。不太可能是该语言未来包含的功能,因为它的应用程序非常狭窄。