Issue Details (XML | Word | Printable)

Key: GEO-172
Type: Sub-task Sub-task
Status: Closed Closed
Resolution: Won't Fix
Priority: Major Major
Assignee: Martin Desruisseaux
Reporter: Martin Desruisseaux
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
GeoAPI
GEO-164

New ISO 19111:2007 interface: CS_GeodeticCS

Created: 02/Jun/09 11:14 AM   Updated: 28/Jul/09 11:15 AM   Resolved: 28/Jul/09 11:15 AM
Component/s: referencing
Affects Version/s: 2.3-M1
Fix Version/s: 2.3-M1

Time Tracking:
Original Estimate: 20 minutes
Original Estimate - 20 minutes
Remaining Estimate: 20 minutes
Remaining Estimate - 20 minutes
Time Spent: Not Specified
Time Spent - Not Specified

Issue Links:
Related
 


 Description  « Hide

ISO 19111:2007 introduced a new interface: GeodeticCS, which should be the parent interface of CartesianCS, EllipsoidalCS and SphericalCS. Once this interface is added, two incompatible changes are needed:

  • The value returned by GeodeticCRS.getCoordinateSystem() needs to be restricted to GeodeticCS type.
  • The CRSFactory.createGeocentricCRS method needs to restrict its cs argument to the GeodeticCS type.

ISO 19111:2007 defines also an EngineeringCS union, which is basically the union of every coordinate system excluding the EllipsoidalCS. We can not set Engineering as the parent interface of CartesianCS (for example) since it would not be accurate to state that the CartesianCS used by a ProjectedCRS is a special kind of EnginneringCS.

Note that ISO 19111:2007 adds also an ImageCS union, which is not needed if we accept to define CartesianCS as a special case of AffineCS like GeoAPI does. We can not set imageCS as the parent interface since it would not make sense to said that the CartesianCS used by a ProjectedCRS is a special kind of imageCS.



Martin Desruisseaux added a comment - 02/Jun/09 11:45 AM

Actually the arguments raised in the description against ImageCS and EngineeringCS could also be applied on GeodeticCS: the CartesianCS used by an EngineeringCRS can not be qualified as a special kind of GeodeticCS.

Note that in ISO 19111:2007, all those new constructs are union, not type. Union is a C/C++ concept without direct equivalence in Java.

We may need to close this issue as "will not fix".


Martin Desruisseaux added a comment - 03/Jun/09 03:26 AM

We will close this issue as "will not fix" since the new ISO structures are unions, not interfaces, which can not be represented easily in the Java language. We keep the task open until the reasons for this departure have been documented in the specification draft.


Martin Desruisseaux added a comment - 28/Jul/09 11:15 AM

The unions will not be created, and the raison for the departure will be documented in the specification.