Hello list
I'm trying to find records through geonetwork's GUI using the 'WHEN'
option. I want to find records that have a specific temporal extent.
I have uploaded a record that has the following temporal extent (this
is the relevant piece of XML that I get back from geonetwork when
asking to view the raw XML):
<gmd:extent>
<gmd:EX_Extent>
<gmd:temporalElement>
<gmd:EX_TemporalExtent>
<gmd:extent>
<gml:TimePeriod gml:id="extent_tp" frame="#ISO-8601">
<gml:description>to be filled out.</gml:description>
<gml:name>timeslot</gml:name>
<gml:beginPosition>2012-03-04T12:00:00</gml:beginPosition
<gml:endPosition>2012-03-04T12:00:00</gml:endPosition>
</gml:TimePeriod>
</gmd:extent>
</gmd:EX_TemporalExtent>
</gmd:temporalElement>
</gmd:EX_Extent>
</gmd:extent>
So the temporal extent is defined as starting and ending in the same time.
When I search for this record using 'Advanced options' -> 'WHEN' ->
'Temporal Extent' and set a temporal extent 'From 2012-03-04T11:00:00
To 2012-03-04T13:00:00' I get no results.
However, if I search 'From 2012-03-04T11:00:00 To
2012-03-05T00:00:00', the next day, the record is successfully found.
It is even stranger that if I search 'From 2012-03-04T13:00:00 To
2012-03-05T00:00:00' geonetwork still finds the record, even though
the record's temporal extent is not even in the interval defined!
Is this a bug? Or am I missing something? Thanks
--
___________________________ ___ __
Ricardo Garcia Silva
Hi Ricardo,
Could be explained by fact that any local ISO8601 date/time i.e without a 'Z' indicator,
is converted to a UTC time in the Lucene search index that GN
uses for search.
Likely that your computer clock was set to a local
time e.g (UTC - x hours) where 'x hours' is your time zone.
Then when times get indexed in Lucene they are local time + x hours
ie UTC. That might explain the unusual search behavior.
HTH
Andrew
----- Original Message ----- From: "Ricardo Filipe Soares Garcia da" <ricardo.garcia.silva@anonymised.com>
To: <geonetwork-users@lists.sourceforge.net>
Sent: Tuesday, April 17, 2012 9:39 PM
Subject: [GeoNetwork-users] searching records by temporal extent error
Hello list
I'm trying to find records through geonetwork's GUI using the 'WHEN'
option. I want to find records that have a specific temporal extent.
I have uploaded a record that has the following temporal extent (this
is the relevant piece of XML that I get back from geonetwork when
asking to view the raw XML):
<gmd:extent>
<gmd:EX_Extent>
<gmd:temporalElement>
<gmd:EX_TemporalExtent>
<gmd:extent>
<gml:TimePeriod gml:id="extent_tp" frame="#ISO-8601">
<gml:description>to be filled out.</gml:description>
<gml:name>timeslot</gml:name>
<gml:beginPosition>2012-03-04T12:00:00</gml:beginPosition
<gml:endPosition>2012-03-04T12:00:00</gml:endPosition>
</gml:TimePeriod>
</gmd:extent>
</gmd:EX_TemporalExtent>
</gmd:temporalElement>
</gmd:EX_Extent>
</gmd:extent>
So the temporal extent is defined as starting and ending in the same time.
When I search for this record using 'Advanced options' -> 'WHEN' ->
'Temporal Extent' and set a temporal extent 'From 2012-03-04T11:00:00
To 2012-03-04T13:00:00' I get no results.
However, if I search 'From 2012-03-04T11:00:00 To
2012-03-05T00:00:00', the next day, the record is successfully found.
It is even stranger that if I search 'From 2012-03-04T13:00:00 To
2012-03-05T00:00:00' geonetwork still finds the record, even though
the record's temporal extent is not even in the interval defined!
Is this a bug? Or am I missing something? Thanks
--
___________________________ ___ __
Ricardo Garcia Silva
------------------------------------------------------------------------------
Better than sec? Nothing is better than sec when it comes to
monitoring Big Data applications. Try Boundary one-second
resolution app monitoring today. Free.
http://p.sf.net/sfu/Boundary-dev2dev
_______________________________________________
GeoNetwork-users mailing list
GeoNetwork-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-users
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork
Hi Andrew, list
Could be explained by fact that any local ISO8601 date/time i.e without a
'Z' indicator,
is converted to a UTC time in the Lucene search index that GN
uses for search.
So I've reuploaded the metadata, this time adding a Z after the
temporal extent definitions. It now looks like this:
<gmd:extent>
<gmd:EX_Extent>
<gmd:temporalElement>
<gmd:EX_TemporalExtent>
<gmd:extent>
<gml:TimePeriod gml:id="extent_tp" frame="#ISO-8601">
<gml:description>to be filled out.</gml:description>
<gml:name>timeslot</gml:name><gml:beginPosition>2012-04-01T18:00:00Z</gml:beginPosition><gml:endPosition>2012-04-01T18:00:00Z</gml:endPosition>
</gml:TimePeriod>
</gmd:extent>
</gmd:EX_TemporalExtent>
</gmd:temporalElement>
</gmd:EX_Extent>
</gmd:extent>
The temporal research still doesn't work.
Could it be that the time that I'm giving using the GUI widgets that
is being interpreted as not being UTC? This seems really wierd. I
cannot expect my users to set their local computers to UTC time.
Or maybe there is something else..
Thanks for your help.
--
___________________________ ___ __
Ricardo Garcia Silva