You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何仅通过自定义上下文将普通JSON的Type项别名为@type关键字

自定义上下文实现Type字段映射@type方案

可以仅通过JSON-LD自定义上下文完成映射,无需修改原始JSON结构,具体配置根据业务需求分两种场景:

基础前提

你已经完成的Id字段到@id的映射配置可以保留,@type映射的核心是通过上下文别名规则,将原始JSON的Type字段绑定到JSON-LD规范的@type关键字上,同时适配当前Type为嵌套对象的结构。


场景1:取Type对象的属性值作为当前实体的类型标识(适配绝大多数三元组存储要求)

三元组存储中rdf:type的取值通常为类型的IRI标识,对应结构中Type.Id字段,不需要保留Type对象的其他冗余属性时,使用如下上下文配置:

{
  "@context": {
    "@base": "http://your-custom-namespace.com/entity/", // 可选,用于补全纯数字Id为合法IRI
    "Id": "@id", // 已配置好的Id映射规则
    "Type": {
      "@id": "@type",
      "@context": {
        "Id": "@value" // 指定取Type下的Id字段作为@type的实际值
      }
    }
    // 其余业务字段按本体规则正常配置映射即可
  }
}

如果需要取Type.Name的值(比如示例中的"Person")作为类型名,只需要把嵌套上下文中的"Id"替换为"Name"即可。


场景2:保留Type为独立嵌套节点,同时标记为当前实体的类型

如果需要保留Type对象下的所有属性(比如类型的Id、名称、层级关系等),不做扁平化丢弃,直接使用如下别名配置即可:

{
  "@context": {
    "@base": "http://your-custom-namespace.com/entity/",
    "Id": "@id",
    "Type": "@type", // 直接将Type字段别名为@type
    // 为Type嵌套节点配置独立上下文,识别其内部字段
    "Type.Id": "@id",
    "Type.Name": "http://www.w3.org/2000/01/rdf-schema#label"
  }
}

配置校验提示:配置完成后可以用JSON-LD解析工具测试展开结果,确认输出的三元组中@type字段取值符合预期即可,不需要额外做字段重命名等预处理操作。

内容的提问来源于stack exchange,提问作者Pedram Hadjian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 10:33:22