搜索输出

  1. 概览
  2. 架构输出
  3. 高级输出

概览

除了获取实体中点、相关性得分和显示的数据来帮助用户理解查询的匹配项之外,还可以通过输出参数请求返回特定的实体结构化数据。与 filter 参数一样,此参数也是 s-expression,其中包含可能嵌套的元架构谓词列表或提取数据的路径。结果的格式是两级嵌套结果列表,其中第一级根据所请求的原始谓词或路径进行键控,第二级通过返回的实际路径进行键控。

例如
查找名为“银翼杀手”的实体,并返回其贡献者

filter=(all name{phrase}:"Blade Runner")
&output=(contributor)

架构输出

输出参数可能会嵌套,以请求针对在上述级别返回其数据的实体的数据。在嵌套输出列表中,第一个元素是将其连接到上一个级别(或源匹配实体)的元素,其他元素则是关于该级别返回的实体的信息。

例如
查找美国总统并返回其出生日期及配偶的出生日期

filter=(all type:/government/us_president)
&output=(/people/person/date_of_birth (/people/marriage/spouse /people/person/date_of_birth))

通过 lang 参数请求使用多种显示语言时,系统会按照请求中的语言顺序返回有数据的所有语言的字符串。要请求以所有语言返回的数据,可以使用特殊的 d/all 语言代码。

例如
查找美国总统并返回其配偶和相应职业(意大利语、俄语、日语和英语)

filter=(all type:/government/us_president)
&output=((/people/marriage/spouse category /people/person/profession))
&lang=it,ru,ja,en

高级输出

输出参数支持所有已编入索引的元架构谓词或路径映射以及下面列出的一些额外的关键字。

说明, 说明:出处

返回在 /common/topic/description 三元组中找到的文本 - 可能经过了由出处关键字过滤而找到的文本,它们找到的是出处。

例如
按来源查找美国总统并返回其说明

filter=(all type:/government/us_president)
&output=(description)

查找美国总统,并在英语和日语的知识图谱中返回维基百科内容

filter=(all type:/government/us_president)
&output=(description:wikipedia)
&lang=d/en,d/ja

消歧器、消歧器:type、disambiguator:domain

返回路径中具有消除歧义属性(带有 /freebase/property_hints/disambiguator 注释)的路径中的值或实体,可能会按类型或包含这些属性的网域进行过滤。

例如
查找“银翼杀手”并返回数据消除歧义数据

filter=(all name:"Blade Runner")
&output=(disambiguator)

查找“银翼杀手”数据,并返回 /film/film 中从匹配项中消除歧义的数据

filter=(all name:"Blade Runner")
&output=(disambiguator:/film/film)

geocode

用于返回来自营业地点实体的地理编码数据。

例如
查找旧金山渡轮大厦 1000 英尺范围内的餐厅,并返回其地理编码和美食类型

filter=(all type:restaurant (within radius:1000ft lon:-122.39 lat:37.7955))
&output=(geocode practitioner_of)

key、key:namespace

返回实体的键/ ID,可能会按命名空间进行过滤。

例如
在旧金山渡轮大厦 1000 英尺范围内查找餐厅并返回其 Google+ ID

filter=(all type:restaurant (within radius:1000ft lon:-122.39 lat:37.7955))
&output=(key:/authority/google/google_plus)

类型

返回实体的类型(如果可用,按重要性排序)。

例如
查找“银翼杀手”并从匹配项返回类型数据

filter=(all name:"Blade Runner")
&output=(type)

不兼容、不兼容:类型

如果单独使用,则返回实体上已知的不兼容类型的类型。
与类型一起使用时,返回此类型是否已知与该实体的任何类型不兼容。
与过滤器参数中的类型一起使用时,返回类型与所使用类型不兼容的实体。

例如
查找 /people/person 的类型,但其类型不兼容并会返回

filter=(all type:/people/person incompatible:/people/person)
&output=(incompatible)

all、all:type、all:domain

返回可通过输出参数返回的实体的所有数据(可能按类型或网域过滤)。

例如
查找“旧金山”,并返回可以通过输出参数访问的所有相关数据

filter=(all name{full}:"San Francisco" type:/location/citytown)
&output=(all)
&limit=1

例如
查找“旧金山”,并返回位置网域中可通过输出参数访问的所有数据

filter=(all name{full}:"San Francisco" type:/location/citytown)
&output=(all:/location)
&limit=1