1

JSON-LD 的文档提到,客户端可以向Accept标头提供配置文件参数,可用于控制表示。它定义了请求压缩扩展扁平化JSON-LD 文档的三个默认值。它还说

如果给出了配置文件参数,服务器should返回一个文档,该文档尊重列表中服务器识别的配置文件。

但是,它没有解释服务器是否应该遵循任何特定规则。是否完全由服务器决定自定义配置文件 URI 的行为?是否有任何关于该主题的讨论?

下面的例子是否正确?

示例 1

客户端请求

Accept: application/ld+json; 
        profile="http://www.w3.org/ns/json-ld#compacted http://schema.org"

并且服务器返回压缩文档http://schema.orgas @context

示例 2

客户端请求

Accept: application/ld+json; profile="http://schema.org"

并且服务器返回压缩文档http://schema.orgas @context

4

1 回答 1

0

JSON-LD 1.0 规范profileIANA Condierations中定义。这定义了compacted您在上面确定的配置文件标识符。它没有提供一种方法来指定要使用的特定上下文,并且它的语义profile会让人很难知道不同配置文件 URI 的含义,因为没有办法(AFAIK)在其他地方注册这个含义。

也就是说,我认为能够指定用于compactedor的上下文expanded以及如果/当​​我们支持框架时,指定要使用的框架会很有用。我认为这可能采用特定类型的 Accept 参数context和/或的形式frame,用于指定序列化文档时要使用的请求上下文或框架。但是,与其他配置文件一样,这些是应该的,而不是必须的;客户端需要能够处理获取未如此序列化的文档,可能使用本地 jsonld.js 实例重新编码返回的文档。建议在具有 Content-Type 的响应中使用相同的参数,以便服务器将profile/context/frame使用的参数作为响应的一部分进行通信,这也可能很有用。

请考虑在https://github.com/json-ld/json-ld.org/issues提出问题,因为我们开始研究要解决的规范的新社区组(即,不是 W3C 建议)草案长期未解决的社区功能请求。

于 2016-09-19T18:56:00.863 回答