Pilot Engineering Repository Xsearch

PerX Logo

Basic Functional Requirements for Cross Search Service


M.Moffat (M.Moffat@hw.ac.uk) -Ver 1.0 (25/05/07)

Home>About>Deliverables>Basic Functional Requirements for Cross Search Service

Contents

  1. Introduction
  2. Functional Requirements for End User Interface
  3. Functional Requirements for Administrative Interface
  4. Functional Requirements for Machine to Machine Interfaces


1. Introduction

The PerX pilot service was used as a test-bed to explore the practical issues that would be encountered when developing a full scale subject resource discovery services. As a result of setting up and maintaining the pilot a list of basic functional requirements for a full scale subject based cross search service has been produced. The functional requirements are divided into three main areas - requirements for the end user interface, requirements for the administrative interface, and requirements for machine-to-machine interfaces.


2. Functional Requirements for End User Interface

2.1 Search Functionality

  • Basic Search Functionality
    • Search via keyword(s)
    • Search via resource type category (e.g. articles, technical reports, thesis)
    • Support for Google like syntax (e.g. +,-,?)
  • Advanced Search Functionality
    • Exact phrase searching
    • Boolean searching (AND, OR, NOT)
    • Ability to specify individual and groups of collections for cross searching
  •  

2.2 Search Results

  • Viewing of search results from individual collections
  • Viewing of search results from merged collections [not achieved by PerX]
  • Relevance ranking of search results
  • Provision of full text availability indicators
  • Ability to edit previous searches
  • Ability to refine search results (e.g. via result clustering) [not achieved by PerX]
  • Record selection functionality (e.g. ability to store selected records) [not achieved by PerX]
  • Outputting of Selected records in formats suitable for reuse (e.g. RSS, XML, plain text) [not achieved by PerX]


3. Functional Requirements for Administrative Interface

3.1 General

  • Ability to accommodate a range of target types (including Z39.50, OAI-PMH, SRU/SRW, Bespoke APIs etc). [see sections 3.2 and 3.3 below]
  • Ability to add new target details (e.g. name, description, logo etc)
  • Ability to delete targets
  • Ability to browse targets details
  • Ability to search targets details
  • Ability to temporarily suspend targets
  • Secure administrator access
  • Limited functionality guest access

3.2 Harvested Targets (OAI-PMH)

  • Manual Harvesting
    • Ability to manually identify, harvest, normalise and index OAI-PMH targets
    • Ability to specify particular sets for harvesting
    • Ability to add/delete sets for harvesting
    • Ability to delete entire harvested content
    • Ability to delete selected harvested content (e.g. individual sets)
    • Ability to deal with XML errors in harvested content
    • Ability to perform general safe transforms ('normalisations') on harvested data [see OAI-PMH Metadata Augmentation Report]
    • Ability to enhance harvested metadata via collection specific transforms [see OAI-PMH Metadata Augmentation Report]
  • Automated Harvesting
    • Ability for administrators to automate the harvesting process for OAI-PMH targets [not fully implemented by PerX, see Setup and Maintenance Report]
    • Ability to specify automated harvesting type (e.g. incremental or full reharvesting) [not achieved by PerX]
    • Ability to specify automated harvesting periodicity (e.g. weekly, monthly etc) [not achieved by PerX]
    • Automated harvesting logging facilities (e.g. dates of previous harvests, harvesting details etc). [not achieved by PerX]
    • Error handling and administrative reporting of harvesting process.

3.3 Distributed Search Targets (e.g. Z39.50, SRU/W)

  • Ability to manually test distributed search targets in real time.
  • Automated testing of distributed search targets with reports to system administrators [not achieved by PerX].


4. Functional Requirements for Machine to Machine Interfaces

4.1 General