Difference between revisions of "Federated Search Convention"

From Earth Science Information Partners (ESIP)
Line 4: Line 4:
  
 
= Reuse of Existing Standards =
 
= Reuse of Existing Standards =
The Federated Search convention makes as much use as possible of the OpenSearch conventions documented at [http://www.opensearch.org http://www.opensearch.org]. This includes draft extensions for [http://www.opensearch.org/Specifications/OpenSearch/Extensions/Geo/1.0/Draft_1 geospatial queries and extensions] and for [http://www.opensearch.org/Specifications/OpenSearch/Extensions/Geo/1.0/Draft_1 queries].
+
The Federated Search convention makes as much use as possible of the OpenSearch conventions documented at [http://www.opensearch.org http://www.opensearch.org]. This includes draft extensions for [http://www.opensearch.org/Specifications/OpenSearch/Extensions/Geo/1.0/Draft_1 geospatial queries and extensions] and for [http://www.opensearch.org/Specifications/OpenSearch/Extensions/Geo/1.0/Draft_1 temporal queries].
  
 
The convention is also based on the [http://www.atomenabled.org/developers/syndication/atom-format-spec.php Atom standard] for responses.
 
The convention is also based on the [http://www.atomenabled.org/developers/syndication/atom-format-spec.php Atom standard] for responses.

Revision as of 08:25, November 1, 2009

Motivation

Overall Architecture

Reuse of Existing Standards

The Federated Search convention makes as much use as possible of the OpenSearch conventions documented at http://www.opensearch.org. This includes draft extensions for geospatial queries and extensions and for temporal queries.

The convention is also based on the Atom standard for responses.

Modification of Standards

Restriction Conventions

Response Formats

Although OpenSearch allows a number of different formats (HTML, RSS, Atom), the ESIP Federated Search convention is to return an Atom response. This is (mostly) intelligible to browser-based newsreaders (the lowest common denominator) while providing a relatively rich structure for parsing as well as accommodating domain-specific extensions.

Time in Atom Response

Time is specified only for the query, not the response, in the draft Time extension to OpenSearch. The ESIP Federated Search convention is to represent Time of datasets or granules as the following:

  • The namespace is defined as xmlns:time="http://a9.com/-/opensearch/extensions/time/1.0/"
  • Time is represented as XML elements "start" and "stop" (following the draft for the Query), e.g.:
    • <time:start>YYYY-MM-DDTHH:SS:MMZ</time:start>
    • <time:stop>YYYY-MM-DDTHH:SS:MMZ</time:stop>
  • By convention, time is in Universal (Zulu) time, using the format YYYY-MM-DDTHH:MM:SS[.SSS]Z. Fractional seconds are optional.

Extensions

Granule-level Links

Atom allows inclusion of multiple links for a given entry, a key advantage for the rich variety of manifestations for a given data granule, such as:

  • data
  • browse image
  • metadata file
  • OPeNDAP URL
  • On-the-fly format conversion

However, it is important for a client to be able to distinguish the different kinds of links, which can be done using the "rel" attribute. As the standard set of "rel" attributes (self, related, alternate, enclosure, via) is insufficiently rich, we extend the standard using URIs within the ESIP namespace. The convention for this namespace is still under discussion, with the current proposal being:

etc. This will eventually be linked to servicecasting namespace, so that services advertised through that mechanism can be referenced as types as well.

Implementation Guidelines

Appendices

Sample Server Implementation

Sample Client Implementation