As Alex noted, it may not be possible/plausible to really implement a function within a database with a variable number of arguments, specifically
POLYGON(coordsys, x1, y1, x2, y2, x3, y3 [, ....])
I don't see this as a much of an issue for a parser (Jeff?) so it is not so much an issue of expressiveness of the language as it is something hard to implement IF one implements thus stuff as functions in the database.
So, is this a problem for ADQL or can we proceed as is?
I don't really see any alternative aside from replacing POLYGON with TRIANGLE and letting people triangulate polygons themselves, which would be pretty nasty:
(
INTERSECTS( something, TRIANGLE(csys, x1, y1, x2, y2, x3, y3) )
OR
INTERSECTS( something, TRIANGLE(...) )
OR
INTERSECTS( something, TRIANGLE(...) )
....
OR is behaving like a UNION operator would in this case.
Comments?
-- Patrick Dowler Tel/Tél: (250) 363-6914 | fax/télécopieur: (250) 363-0045 Canadian Astronomy Data Centre | Centre canadien de donnees astronomiques National Research Council Canada | Conseil national de recherches Canada Government of Canada | Gouvernement du Canada 5071 West Saanich Road | 5071, chemin West Saanich Victoria, BC | Victoria (C.-B.)Received on 2007-10-05Z20:05:20