Ticket #744 (closed task: worksforme)

Opened 12 years ago

Last modified 12 years ago

[WG] Discovery Improvements: Dropdown list for types of spatial coverage constraints

Reported by: lawrence Owned by: lawrence
Priority: required Milestone: Replace Metadata Gateway
Component: discovery Version:
Keywords: Cc: kthorne

Description

Overlaps etc. (Was part of ticket:731)

Change History

comment:1 Changed 12 years ago by lawrence

  • Owner changed from lawrence to mpritcha

Matt. What's implemented? I  see

  • a spatialoperator keyword, but it's a string ...
  • likewise temporaloperator

Also, while I'm on the case, how should I use the orderBy and orderByDirection?

Fire the ticket back at me after you've answered the questions ...

comment:2 Changed 12 years ago by mpritcha

  • Owner changed from mpritcha to lawrence

I don't think temporalOperator is implemented at present (just does "overlaps"). For spatialOperator, use the getListNames() / getList() helper methods to tell you the list of currently supported operators:

First call to getListNames() does what it says on the tin;

<getListNamesReturn xmlns="urn:DiscoveryServiceAPI">
	<listNames>
		<listName>presentFormatList</listName>
		<listName>orderByFieldList</listName>
		<listName>scopeList</listName>
		<listName>termTypeList</listName>
		<listName>spatialOperatorList</listName>
	</listNames>
</getListNamesReturn>

Each of these is the name of a list that can serve as an argument to getList(), e.g.

<m:getList xmlns:m="urn:DiscoveryServiceAPI">
	<m:listName>spatialOperatorList</m:listName>
</m:getList>
<list name="spatialOperatorList">
	<listMember>overlaps</listMember>
	<listMember>doesNotOverlap</listMember>
	<listMember>within</listMember>
</list>

For orderBy, the list of currently valid values for "orderByField" is "date" and "dataCentre". Typo in WSDL means you should use "descnding" rather than "descending".

<m:doSearch xmlns:m="urn:DiscoveryServiceAPI">
	<m:term>water</m:term>
	<m:termType>fullText</m:termType>
	<m:orderBy>date</m:orderBy>
	<m:orderByDirection>descnding</m:orderByDirection>
</m:doSearch>

Currently, the orderByFields "date" and "dataCentre" work on the the following elements in the miniMoles:

/dgMetadata/dgMetadataRecord/dgDataEntity/dgDataSummary/dgDataCoverage/dgTemporalCoverage/DateRange/DateRangeStart

and

/dgMetadata/dgMetadataRecord/dgDataEntity/dgDataRoles/dgDataCurator/dgRoleHolder/dgOrganisationID/repositoryIdentifier

(without any attempt to resolve the full name of the repositoryIdentifier)

comment:3 Changed 12 years ago by lawrence

Matt, I just tried to implement this, and am getting a {{{ type 'exceptions.Exception'>,null; nested exception is: java.lang.NullPointerException? }}} error message ... I presume I'm doing something wrong. Help needed :-)

comment:4 Changed 12 years ago by lawrence

Actually, I made the java error go away by turning --lazy off on my wsdl2py (dunno what this did, but in fact it had broken the whole thing, not just spatialOperator). But now, I don't actually get any difference in the search. Would be nice to test what you are getting ...

comment:5 Changed 12 years ago by lawrence

  • Status changed from new to closed
  • Resolution set to worksforme
Note: See TracTickets for help on using tickets.