コード例 #1
0
ファイル: indexfields.py プロジェクト: seecr/dc-erfgeo-enrich
 def _evaluate(self, fieldname, value):
     if fieldname.startswith('dcterms:spatial.') and fieldname.endswith('.geos:asWKT'):
         geometry = Geometry.parseWkt(value)
         for (geoLong, geoLat) in geometry.pointCoordinates():
             yield 'dcterms:spatial.geo:long', geoLong
             yield 'dcterms:spatial.geo:lat', geoLat
         return
     if fieldname == 'dcterms:spatial.uri':
         if value.startswith('geo:'):
             geoLat, _, geoLong = value[len('geo:'):].partition(',')
             yield 'dcterms:spatial.geo:long', geoLong
             yield 'dcterms:spatial.geo:lat', geoLat
         return
     if fieldname in ['dc:date', 'dcterms:created']:
         for year in parseYears(value):
             yield 'dc:date.year', str(year)
     yield fieldname, value
コード例 #2
0
 def testParseYears(self):
     self.assertEquals([2000], parseYears("2000-01-01"))
     self.assertEquals([2000], parseYears("2000-01-01T01:01:01Z"))
     self.assertEquals([2000], parseYears("2000-01"))
     self.assertEquals([2000], parseYears("2000"))
     self.assertEquals([2000, 2001, 2002, 2003, 2004], parseYears("2000 - 2004"))
     self.assertEquals([2000, 2001, 2002, 2003, 2004], parseYears("2000-2004"))
     self.assertEquals([2000], parseYears("2000 - ..."))
     self.assertEquals([2000], parseYears("2000-..."))
     self.assertEquals([2001], parseYears("[2001]"))
     self.assertEquals([2000], parseYears("01-01-2000"))
     self.assertEquals([2000], parseYears("[ca. 2000]"))
     self.assertEquals([2000, 2001, 2002, 2003, 2004], parseYears("ca. 2000 - ca. 2004"))
     self.assertEquals([2000], parseYears("cop. 2000"))
     self.assertEquals([1940, 1941, 1942, 1943, 1944, 1945, 1946, 1947, 1948, 1949], parseYears("194X"))
     self.assertEquals(range(1940, 1970), parseYears("194X - 196x"))
     self.assertEquals([], parseYears("20e eeuw"))
     self.assertEquals(range(1900, 2000), parseYears("19X"))