이 페이지에는 검색 서비스를 사용하여 검색어를 제한하는 다양한 방법의 레시피가 포함되어 있습니다.
텍스트 제약
Freebase 항목의 텍스트 데이터는 먼저 이름과 별칭에서 가져오고, 다음으로 키와 기타 텍스트 속성에서 가져오며, 마지막으로 언어별 Wikipedia 주제와 조정된 경우 Wikipedia 앵커 데이터에서 가져옵니다.
텍스트 제약 조건은 언어별로 다르며 현재 18개 언어가 지원됩니다. 영어가 가장 많이 지원되며 기본 언어입니다.
현재 지원되는 모든 언어 코드 목록은 다음을 참고하세요.
https://www.googleapis.com/freebase/v1/search?help=langs&indent=true
텍스트 제약 조건은 query
매개변수로 지정됩니다. 언어는 lang
매개변수로 지정됩니다. 예를 들면 다음과 같습니다.
query: "gore" query: "gore" lang: "fr" query: "gore" lang: "de"
색인 생성 중에 텍스트 데이터는 언어별로 정규화됩니다. 예를 들어 영어에서는 텍스트가 소문자로 변환되고 악센트가 삭제됩니다. 쿼리 시 쿼리 텍스트에 동일한 언어별 정규화가 실행됩니다. 예를 들면 다음과 같습니다.
query: "beyoncé" query: "beyonce"
텍스트 제약 조건이 일치하는 방식을 제어하는 매개변수가 여러 개 있습니다. prefixed
매개변수를 true
로 설정하면 이름과 별칭에만 접두사 일치가 트리거되고 다른 텍스트 데이터에는 일반 일치가 트리거됩니다. 예를 들면 다음과 같습니다.
query: "bob dy" prefixed: true
stemmed
을 true
로 설정하면 이름과 별칭에만 어간 일치가 트리거되고 다른 텍스트 데이터에는 일반 일치가 트리거됩니다. 어간 일치 항목은 복수형이나 기타 문법 형식으로 인해 발생하는 언어별 접미사 차이를 붙여넣는 데 사용할 수 있습니다. 예를 들면 다음과 같습니다.
query: "potatos" stemmed: true
쿼리 텍스트를 큰따옴표 ("")로 묶으면 구문검색이 트리거됩니다. 쿼리의 텍스트 토큰이 일치하는 항목의 텍스트 데이터에서 서로 인접해야 합니다. 예를 들면 다음과 같습니다.
query: "\"to be or not to be\""
name
, alias
, type
매개변수를 사용하여 이름에 일치시키려는 단어가 포함된 사람 및 사람 항목과 일치시킵니다. 예를 들면 다음과 같습니다.
filter: "(all name:gore alias:gore type:/people/person)"
마찬가지로 다음 예시는 일치하는 alias
만 있고 name
는 없는 /people/person
항목과 일치합니다.
filter: "(all (not name:gore) alias:gore type:/people/person)"
일치해야 하는 텍스트 필드를 지정하는 것 외에도 피연산자와 텍스트 필드 사이에 다음 수정자 중 하나를 삽입하여 일치가 발생하는 방식을 지정할 수 있습니다.
-
{word}
: 문자열의 단어가 문서의 해당 텍스트 필드의 단어와 일치해야 합니다. (기본값) {phrase}
: 문서의 해당 텍스트 필드에 단어가 동일한 순서로 나란히 표시되어야 합니다.-
{full}
:{phrase}
와 비슷하지만 텍스트 필드 내뿐만 아니라 텍스트 필드와 구문이 완전히 일치해야 합니다. 즉, 완전 일치입니다.
예를 들어 Marc Broussard의 음악 싱글 Home을 찾으려면 다음과 같은 필터를 사용합니다.
filter: "(all type:/music/single name{full}:home /music/track/artist:"Marc Broussard")"
언어 제약 조건
텍스트 제약 조건에서 설명한 대로 lang
매개변수는 텍스트를 쿼리 토큰으로 변환하는 데 사용할 언어 정규화 규칙을 지정하는 데 사용됩니다. 또한 검색어의 언어는 결과 순위에 영향을 미칩니다. Freebase 검색은 해당 언어 Wikipedia에서 언어별 관련성 신호를 가져오기 때문입니다.
현재 영어 (en), 스페인어 (es), 프랑스어 (fr), 독일어 (de), 이탈리아어 (it), 포르투갈어 (pt), 중국어 (zh), 일본어 (ja), 한국어 (ko)의 9개 언어가 지원됩니다. 영어가 가장 많이 지원되며 기본 언어입니다.
여러 언어로 동시에 검색
lang
매개변수는 쉼표로 구분된 언어 코드 목록을 허용합니다. 이렇게 하면 지정된 모든 언어로 검색이 실행되고 결과가 목록에 나열된 첫 번째 언어로 순위가 지정되며, 엔티티의 이름이 있는 목록의 첫 번째 언어로 표시됩니다.
예를 들면 다음과 같습니다.
다음은 독일어와 프랑스어로 독일어 단어 'Sonnenblume'를 검색합니다. 프랑스어로 결과를 순위 지정하고 표시합니다.
query: "Sonnenblume" lang: "fr,de"
다음은 언어가 한국어인 영화를 영어로 검색하고 한국어 이름을 표시합니다. 쿼리의 영어 부분은 expressed_by
제약 조건의 'korean'이라는 단어입니다.
filter: "(all expressed_by:korean type:/film/film)" lang: "ko,en"
스키마 제약 조건
스키마 제약 조건은 type
및 domain
매개변수로 지정됩니다. type
은 항목의 /type/object/type
속성 값에 해당합니다.
예를 들어 다음은 검색을 사람으로만 제한합니다.
query: "gore" type: "/people/person"
domain
는 항목의 모든 /type/object/type
값의 /type/type/domain
값에 해당합니다.
예를 들어 다음은 /film
도메인의 프랑스어 엔티티로만 검색을 제한합니다.
query: "babar" domain: "/film" lang: "fr"
개별 Freebase 속성을 사용하여 쿼리를 필터링할 수도 있습니다. 예를 들어 다음은 캐나다 출신인 사람으로 검색을 제한합니다.
query "john" filter: "(all type:/people/person /people/person/nationality:"Canada")"
메타 스키마 제약 조건
메타 스키마 제약 조건은 의미론적 술어로 항목을 필터링합니다. 이러한 술어는 유사한 의미 관계를 설명하는 Freebase 속성 모음에서 빌드된 상위 수준 개념입니다.
메타 스키마 제약 조건은 엔티티 이름 또는 MID 제약 조건과 결합된 filter
매개변수 피연산자를 사용하여 지정됩니다.
지원되는 메타 스키마 필터 피연산자
다음 메타 스키마 필터 피연산자는 Freebase 검색에서 지원됩니다. 표의 링크를 클릭하거나 Freebase 검색 예시 앱을 사용하여 각 예시를 사용해 보세요.
피연산자 이름 | 예 |
---|---|
abstraction |
'페투치니 요리' (사용해 보세요.)
filter: "(all abstraction:fettuccine)" |
abstraction_of |
'웨스턴 불워크 기관차 클래스' (사용해 보기)
filter: "(all abstraction_of:"Western Bulwark")" |
adaptation |
'라 트라비아타는 어떤 작품을 각색한 거야?' (사용해 보세요.)
filter: "(all adaptation_of:"La Traviata")" |
administered_by |
'칸 영화제' (사용해 보기)
filter: "(all type:awards administered_by:cannes)" |
administers |
"Synapse 신문은 누가 운영해?" (사용해 보기)
filter: "(all administers:synapse)" |
appears_in |
"마술피리의 등장인물" (사용해 보세요.)
filter: "(all appears_in:"magic flute")" filter: "(all appears_in:"Die Zauberflöte")" lang: "de" |
broader_than |
'Airbus 319가 속한 항공기 라인' (사용해 보기)
filter: "(all broader_than:"Airbus A319")" |
category |
'프랑스 여배우' (사용해 보기)
filter: "(all category:female origin:france notable:actor)" filter: "(all category:female origin:france practitioner_of:actor)" filter: "(all category:volcano (any part_of:california part_of:france))" '파스타 요리' (사용해 보기) filter: "(all category:pasta)" |
center |
'샌프란시스코에 허브가 있는 항공사' (사용해 보세요.)
filter: "(all type:airline center:"San Francisco")" filter: "(all type:airline center:"San Francisco" center:atlanta)" filter: "(all type:/book/newspaper center:/m/0d6lp)" |
center_for |
'샌프란시스코 포티나이너스의 스포츠 시설' (사용해 보세요.)
filter: "(all center_for:"san francisco 49ers")" |
certification |
'빔 벤더스의 R 등급 영화' (사용해 보기)
filter: "(all type:/film/film contributor:wenders certification:r)" |
character |
'파파게노가 등장하는 작품' (사용해 보기)
filter: "(all character:papageno)" |
child |
"빌 클린턴의 부모님" (사용해 보세요.)
filter: "(all child:"bill clinton")" |
contributed_to |
"블레이드 러너에 참여한 사람은 누구야?" (사용해 보기)
filter: "(all contributed_to:"Blade Runner")" |
contributor |
'스티븐 스필버그 영화' (사용해 보기)
filter: "(all type:/film/film contributor:"Steven Spielberg")" filter: "(all type:/film/film contributor:/m/06pj8)" filter: "(all type:/film/film contributor:"Harrison Ford")" |
created |
'for whom the bell tolls'의 작가가 누구야? (사용해 보기)
filter: "(all created:"for whom the bell tolls")" |
created_by |
'Google 소프트웨어' (사용해 보기)
filter: "(all notable:software created_by:google)" |
discovered |
'라듐 발견자' (사용해 보세요.)
filter: "(all discovered:radium)" |
discovered_by |
'퀴리의 발견' (사용해 보기)
filter: "(all discovered_by:curie)" |
distributed_by |
'NPR 프로그램' (사용해 보기)
filter: "(all type:show distributed_by:npr)" |
exhibited |
"where was 'down by law' presented ?" (Try it.)
filter: "(all exhibited:"down by law")" |
exhibited_at |
'2010년 칸 영화제에 출품된 후보작' (사용해 보세요.)
filter: "(all type:"nominated work" exhibited_at:"2010 Cannes Film festival")" |
expressed_by |
"books in esperanto" (사용해 보기)
filter: "(all type:book expressed_by:esperanto)" |
fictional_link |
'미키 마우스와 관련된 가상 캐릭터' (사용해 보기)
filter: "(all type:/fictional_universe/fictional_character fiction_link:"mickey mouse")" |
genre |
'고딕 성당' (사용해 보기)
filter: "(all category:cathedral genre:gothic)" filter: "(all category:cathedral genre:gothic created_by:viollet)" |
identifies |
"사우스웨스트 항공을 식별하는 것은 무엇인가요?" (사용해 보기)
filter: "(all identifies:"Southwest Airlines")" |
leader |
'Mitch Kapor companies' (사용해 보기)
filter: "(all type:company leader:kapor)" |
leader_of |
'파리 시장' (사용해 보기)
filter: "(all title:mayor leader_of:paris)" |
made_of |
'왁스 그림' (사용해 보세요.)
filter: "(all type:painting made_of:wax)" |
means_of_demise |
'처형된 정치인' (사용해 보기)
filter: "(all type:politician means_of_demise:"capital punishment")" |
member_of |
'아프리카 군주' (사용해 보기)
filter: "(all type:monarch member_of:africa)" filter: "(all type:politician member_of:democratic notable:actor)" |
narrower_than |
'v8 엔진의 예' (사용해 보기)
filter: "(all type:engine narrower_than:"v8 engine")" |
occurs_in |
'루마니아에서 사용되는 언어' (사용해 보기)
filter: "(all type:language occurs_in:romania)" |
origin |
'오스트리아의 공화당 주지사' (사용해 보기)
filter: "(all title:governor member_of:republican origin:austria)" |
owner |
'Ford 소유로 설정' (사용해 보기)
filter: "(all type:make owner:ford)" |
owns |
'댈러스 매버릭스 구단주는 누구야?' (사용해 보기)
filter: "(all owns:mavericks)" |
parent |
'앨 고어의 자녀' (사용해 보기)
filter: "(all parent:"al gore")" filter: "(all type:/computer/programming_language parent:lisp)" |
part_of |
"스웨덴 호수" (사용해 보세요.)
filter: "(all type:lake part_of:sweden)" filter: "(all type:competition part_of:"2008 summer olympics")" |
participant |
"Bowie concerts" (사용해 보기)
filter: "(all participant:bowie type:concert)" |
participated_in |
'올림픽에 참가한 유명한 오스트리아 스키 선수' (사용해 보기)
filter: "(all notable:skier member_of:austria participated_in:olympics)"' |
peer_of |
"politicians peers of Al Gore" (사용해 보기)
filter: "(all notable:politician peer_of:gore)" |
permits_use_of |
'디젤 엔진' (사용해 보기)
filter: "(all permits_use_of:diesel)" |
portrayed |
'존 레논을 연기한 배우' (사용해 보기)
filter: "(all notable:actor portrayed:"john lennon")" |
portrayed_by |
"해리슨 포드가 연기한 캐릭터" (사용해 보기)
filter: "(all portrayed_by:"Harrison Ford")" |
practitioner_of |
'여성 아프리카계 미국인 변호사' (사용해 보기)
filter: "(all category:female category:"african american" practitioner_of:lawyer)" |
preceeding |
'반지의 제왕 2편' (사용해 보기)
filter: "(all type:/film/film preceeding:"The Lord of the Rings, the two Towers")" |
produced_by |
'Apple 컴퓨터' (사용해 보기)
filter: "(all type:computers produced_by:apple)" |
publication |
'어떤 책의 초판이 /m/0clw238인가요?' (사용해 보기)
filter: "(all publication:/m/0clw238)" |
publication_of |
'라 트라비아타 발매곡' (사용해 보기)
filter: "(all publication_of:"La Traviata")" |
service_area |
'캘리포니아 방송사' (사용해 보기)
filter: "(all type:broadcaster service_area:california)" |
status |
'후퇴하는 스위스 빙하' (사용해 보세요.)
filter: "(all type:glacier status:retreating part_of:switzerland)" |
subclass_of |
'수영복 종류' (사용해 보기)
filter: "(all subclass_of:swimwear)" |
subject |
"홀로코스트 관련 영화" (사용해 보기)
filter: "(all type:film subject:holocaust)" filter: "(all type:book subject:mathematics)" |
subsequent |
'반지의 제왕 2편의 프리퀄' (사용해 보기)
filter: "(all type:/film/film subsequent:"The Lord of the Rings, the two Towers")" |
succeeded_by |
"포드 B3 플랫폼을 계승한 자동차 플랫폼은 무엇인가요?" (사용해 보기)
filter: "(all succeeded_by:"ford b3 platform")" |
succeeds |
'스튜어트 왕조의 후계자는 누구야?' (사용해 보기)
filter: "(all succeeds:stuart)" |
superclass_of |
'관상동맥 심장 질환이 속하는 클래스' (사용해 보기)
filter: "(all superclass_of:"coronary heart disease")" |
title |
'Google 엔지니어' (사용해 보기)
filter: "(all title:engineer member_of:google)" |
tookplace_at |
'마렝고에서 벌어진 전투' (사용해 보기)
filter: "(all type:battles tookplace_at:marengo)" |
use_permitted_by |
'iPhone에서 지원되는 파일 형식' (사용해 보기)
filter: "(all type:"file format" use_permitted_by:iphone)" |
스코어링 및 순위 지정
Freebase 항목에는 색인 생성 중에 계산되는 고유한 관련성 점수 (순위)가 있으며, 이는 Freebase 및 Wikipedia의 인바운드 및 아웃바운드 링크 수의 함수입니다. 일부 인기 Freebase 항목에는 Google에서 계산한 인기도 점수도 있습니다. 기본적으로 두 점수는 쿼리 중에 함께 결합됩니다.
텍스트 제약 조건이 있는 경우 텍스트 일치 점수는 검색 색인에서 반환된 조회수에서 계산되며 관련성 점수와 결합됩니다.
FreebaseSearch 결과는 항상 최종 점수를 기준으로 정렬되며 점수가 가장 높은 결과가 먼저 표시됩니다.
점수 매기기 매개변수를 사용하면 최종 점수를 계산하는 데 사용되는 관련성 점수 구성요소를 제어할 수 있습니다.
freebase: Freebase 관련성 점수만 사용합니다.
query: "beyoncé" scoring: freebase
entity: 누락된 Google 점수를 1.0으로 대체하는 관련성 점수를 모두 사용합니다. 이는 기본값입니다.
query: "beyoncé" scoring: entity
schema: 유형, 속성, 도메인과 같은 스키마 항목을 찾을 때 사용합니다. 스키마 항목의 링크 수가 다르게 계산됩니다.
query: "performance" scoring: schema
기타 제약 조건
with 또는 without 매개변수를 사용하여 색인 태그별로 항목을 필터링할 수 있습니다. 항목은 색인 생성 중에 태그가 지정되며 각 태그는 검색 중에 실행하기에는 비용이 너무 많이 드는 하나 이상의 Freebase 쿼리에 해당합니다.
commons
는 스키마 검색을 Freebase Commons 스키마만 반환하도록 제한하는 데 사용할 수 있는 태그입니다.
예를 들어 '색상'이라는 단어와 일치하는 Freebase Commons 유형
query: "color" type: "/type/type" with: "commons"
gg
는 Google 인기도 점수가 있거나 없는 항목으로 검색을 제한하는 데 사용할 수 있는 태그입니다.
query: "1923" type: "/people/person" with: "gg" query: "1923" type: "/people/person" without: "gg"
without
매개변수는 필터 표현식에서 부정된 with와 동일합니다.
query: "color" limit: 5 type: "/type/type" without: "commons" query: "color" limit: 5 type: "/type/type" filter: "(not with:commons)"