Changes between Version 3 and Version 4 of Discovery/DiscoveryWebServiceMEDIN


Ignore:
Timestamp:
05/11/09 00:03:44 (10 years ago)
Author:
mpritcha
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Discovery/DiscoveryWebServiceMEDIN

    v3 v4  
    5656                <listName>orderByFieldList</listName> 
    5757                <listName>scopeList</listName> 
    58                 <listName>termTypeList</listName> 
    5958                <listName>spatialOperatorList</listName> 
    6059 
     
    102101#![[Image(doSearchSchema.png)]] 
    103102 
    104 === Choice of search type: <term> and <termType> ===  
    105 The only mandatory elements are <term> and <termType>, as used in the example "Quick Start", above. By specifying the <termType>, a choice is made as to which of 3 variants of a full-text search should be invoked. This element should be populated with a valid value from the termTypeList list accessible via the getList operation. At present, these are:  
     103=== Choice of search criteria: <termSearch>, <spatialSearch> and <temporalSearch> ===  
     104The <searchCriteria> element acts as a container enabling the selection of one or more of <termSearch>, <spatialSearch> and <temporalSearch>. Searches of these 3 basic types may be used in combination. 
     105 
     106==== termSearch ==== 
     107TermSearch is a full-text search invoked on a specific target field in the discovery database. Child elements <term> and <termTarget> should be populated as follows: 
     108  * <term> : text term to search for. Whitespace separates component words, which are searched in "OR" combination unless the "+" symbol is used between them, in which case the words joined in this way are searched in "AND" combination. 
     109  * <termTarget> : target field name taken from the termTargetList list of valid term targets. 
     110If multiple <termSearch> elements are present (e.g. to search different <termTargets) ), these are interpreted as successive term searches to be combined in "OR" combination. For example: 
     111 
     112{{{ 
     113  <termSearch> 
     114    <term>snow + rain</term> 
     115    <termTarget>abstract</termTarget> 
     116  </termSearch> 
     117  <termSearch> 
     118    <term>lawrence</term> 
     119    <termTarget>author</termTarget> 
     120  </termSearch> 
     121}}} 
     122 
     123means 
     124{{{ 
     125  Search for records where: 
     126    abstract contains "snow" AND "rain" 
     127AND 
     128    author contains "lawrence" 
     129}}} 
     130 
     131If we were to extend the example by adding an additional termSearch, also targetted at the abstract, this would be combined in OR combination with the first termSearch *for that target*, i.e. 
     132 
     133{{{ 
     134  <termSearch> 
     135    <term>snow + rain</term> 
     136    <termTarget>abstract</termTarget> 
     137  </termSearch> 
     138  <termSearch> 
     139    <term>lawrence</term> 
     140    <termTarget>author</termTarget> 
     141  </termSearch> 
     142  <termSearch> 
     143    <term>hail</term> 
     144    <termTarget>abstract</termTarget> 
     145  </termSearch> 
     146}}} 
     147  
     148This would be interpreted to mean: 
     149{{{ 
     150  Search for records where: 
     151    abstract contains ("snow" AND "rain") OR "hail" 
     152AND 
     153    author contains "lawrence" 
     154}}} 
     155 
     156 
     157 
     158-------Got to here while editing-------- 
     159This element should be populated with a valid value from the termTargetList list accessible via the getList operation. At present, these are:  
    106160 
    107161==== fullText ====