XSearch-Service-API

From Gcube Wiki
Revision as of 11:11, 4 November 2013 by Pavlos.fafalios (Talk | contribs) (Created page with '= Objective = * The objective of this activity is to provide an API for the semantic post-processing services of search results that were developed in the context of T10.4. = R…')

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Objective

  • The objective of this activity is to provide an API for the semantic post-processing services of search results that were developed in the context of T10.4.

Requirements

  • The API should allow someone to build an application (web application, mobile application) that exploits the services of T10.4 (and their deployment in the infrastructure).
  • The functionality of 10.4 is generic, i.e. one can configure the underlying search system, the desired categories, the SPARQL endpoints to be used. It is desirable to offer this generality also at the API level.

Decisions

  • We plan to develop a REST API since such an API could be used easily in various contexts.
  • We will comply with OpenSearch because it is a standard and can allow configuring the underlying search system to use.

Services

Main Service A: Post-processing of search results

This service is responsible for the post-proccessing of the search results by performing textual clustering, entity mining or both in the top search results as returned by the given search system. The API could accept (as input parameters) an underlying search system and a set of parameters (e.g. query, number of results to analyze, etc.). The underlying source would be an opensearch compliant search engine. XSearch is then responsible for sending the query (with the given parameters) to the search engine and retrieve the results. Additional parameters related to the tasks of entity mining and textual clustering will be provided to the API.

Input Parameters:

  • Underlying Search System: The URL of an OpenSearch Description Document or the name of a supported search system (see Supported Service S2)
  • Query (string)
  • Number of results to analyze (integer)
  • Analyze full contents or snippets? (contents|snippets)
  • Enable Entity Mining (boolean)
  • Active categories of entities (see Supported Service S1)
  • Enable Textual Clustering (boolean)
  • Number of clusters to return (integer)
  • Name of clustering algorithm (see Supported Service S2)

Output:

  • Detected Entities (and for each entity, the results in which it lies)
  • Produced Clusters (and for each cluster, the results in which it lies)
  • Results
  • The input parameters


Main Service B: Match an identified entity

Main Service C: Enrich an identified entity

Main Service D: Identify entities in a Web Document

Supported Service S1: Get the supported categories of entities

Supported Service S2: Get the supported clustering algorithms

Supported Service S3: Get the supported search systems