OpenSearch 이전에는 브라우저나 툴바에 사이트의 검색을 추가하려면 특별한 처리가 필요했다. 폼을 찾고, 쿼리 매개변수를 추론하고, 페이지가 바뀌지 않기를 바라는 수밖에 없었다. Amazon의 A9 팀은 이 문제를 하나의 기술 파일로 축소했다.

OpenSearch 1.1 초안은 기술 문서, 쿼리 요소, URL 템플릿 문법, 응답 메타데이터를 정의한다. 핵심 요령은 URL 템플릿이다. 클라이언트는 사이트를 역설계하는 대신 게시된 템플릿에 검색어를 대입한다.

MDN은 이 형식을 브라우저가 웹사이트 검색 엔진을 추가하는 방법으로 문서화한다. 이것이 이 표준이 통한 이유다. 사이트 소유자가 의도를 한 번 게시하면 모든 브라우저나 검색 클라이언트가 동일한 인터페이스를 발견할 수 있었다.

검색을 URL 템플릿으로 기술하기

XML 자동 발견을 통해 사이트는 평범한 페이지에서 검색 기능을 알릴 수 있었다.

URL 템플릿은 단순 검색과 더 풍부한 검색 제안을 모두 포괄했다.

클라이언트는 알 수 없는 확장을 무시할 수 있었기에, 형식은 구형 브라우저를 깨뜨리지 않고 성장할 수 있었다.

이 표준은 검색 통합을 브라우저와의 제휴가 아닌 게시 작업으로 만들었다.

표준은 가장 작은 유용한 계약을 명시적으로 만들 때 퍼진다. 엔드포인트를 이름 짓고, 매개변수를 이름 짓고, 나머지는 모든 클라이언트가 하게 두는 것이다.

OpenSearch는 브라우저 검색 플러그인과 사이트 검색 발견을 위한 공통 기술 형식이 되었다. 눈에 보이는 흔적은 작지만, 그 패턴은 지속되었다. 웹 페이지 옆에 기계가 읽을 수 있는 계약을 게시하여 클라이언트가 추측을 멈추게 하는 것이다.

근거 확인하기

출처

  1. OpenSearch 1.1 Draft 6 OpenSearch project · raw.githubusercontent.com
  2. OpenSearch description format MDN Web Docs · developer.mozilla.org