Skip to main content

websearch

Typed specification

Generated by the pinned ess generate --kind docs from ess. Structural validation establishes consistency; behaviour, storage and cross-record predicates remain implementation obligations.

Proposed provider-independent web search, fetch and crawl values; no runtime or persistent provider owner.

connectors.websearch is one of connectors's bounded contexts. Back to the index.

Types​

ContentForm​

connectors.websearch.ContentForm is one of none, snippet and full.

CrawlInput​

connectors.websearch.CrawlInput is a record of eight fields:

  • url — String
  • limit — Integer
  • max_depth — Optional<Integer>, which may be absent
  • max_breadth — Optional<Integer>, which may be absent
  • select_paths — Optional<List<String>>, which may be absent
  • exclude_paths — Optional<List<String>>, which may be absent
  • allow_external — Optional<Boolean>, which may be absent
  • instructions — Optional<String>, which may be absent

Failure​

connectors.websearch.Failure is a record of two fields:

  • url — String
  • reason — connectors.websearch.FailureReason

FailureReason​

connectors.websearch.FailureReason is one of unreachable, blocked, not_text, too_large and provider_refused.

FetchInput​

connectors.websearch.FetchInput is a record of one field:

  • urls — List<String>

Page​

connectors.websearch.Page is a record of four fields:

  • url — String
  • title — Optional<String>, which may be absent
  • content — Optional<String>, which may be absent
  • content_truncated — Boolean

PagesAnswer​

connectors.websearch.PagesAnswer is a record of five fields:

  • pages — List<connectors.websearch.Page>
  • failed — List<connectors.websearch.Failure>
  • complete — Boolean
  • truncation — List<connectors.websearch.TruncationCause>
  • provenance — connectors.websearch.Provenance

Provenance​

connectors.websearch.Provenance is a record of three fields:

  • instance — String
  • profile — String
  • received_at — Timestamp

SearchAnswer​

connectors.websearch.SearchAnswer is a record of four fields:

  • results — List<connectors.websearch.SearchResult>
  • complete — Boolean
  • truncation — List<connectors.websearch.TruncationCause>
  • provenance — connectors.websearch.Provenance

SearchInput​

connectors.websearch.SearchInput is a record of nine fields:

  • query — String
  • max_results — Integer
  • content — Optional<connectors.websearch.ContentForm>, which may be absent
  • time_range — Optional<connectors.websearch.TimeRange>, which may be absent
  • topic — Optional<connectors.websearch.Topic>, which may be absent
  • include_domains — Optional<List<String>>, which may be absent
  • exclude_domains — Optional<List<String>>, which may be absent
  • country — Optional<String>, which may be absent
  • language — Optional<String>, which may be absent

SearchResult​

connectors.websearch.SearchResult is a record of seven fields:

  • url — String
  • title — Optional<String>, which may be absent
  • description — Optional<String>, which may be absent
  • content — Optional<String>, which may be absent
  • content_truncated — Boolean
  • published — Optional<String>, which may be absent
  • score — Optional<Decimal>, which may be absent

TimeRange​

connectors.websearch.TimeRange is one of day, week, month and year.

Topic​

connectors.websearch.Topic is one of general and news.

TruncationCause​

connectors.websearch.TruncationCause is one of provider_limit, provider_partial, result_limit, response_bytes and content_bytes.

Five of the types above are reached by nothing else in this system: connectors.websearch.CrawlInput, connectors.websearch.FetchInput, connectors.websearch.PagesAnswer, connectors.websearch.SearchAnswer and connectors.websearch.SearchInput. No entity, view, command, event, error or crossing names them, so it is either vocabulary something outside this specification uses or a leftover — and only a person can tell which.


Generated from connectors v1 · model digest e1e1672d0af4753cb8f2da6c0b22a7f6ae8ce9f7abc168f86169babdf1325787 · contract digest slice-sha256/2:cd695320a60c9fd410dde5ead4e574f3c7e37b30d6ceb49f4d217112b1525a6a. Do not edit this file; change the specification and regenerate it with ess generate.