The aim of this project is to create a waypointing system that can be used by anyone, anywhere, through space and time. At the moment I see this more as a research project, than something adressing some immediate need. There is certainly much more I can do in the way of researching what is already out there, though by preparing this document at this time it provides me with a reference point to work from.
Issues that need to be taken into account include the different coordinate systems in use, the differing units in use (meters vs feet, for example), the coordinate references (Mars origin vs Earth origin), the different time references (Mars time, Earth, universal time?) and others that could be a factor. In doing so it needs to be decided where we attempt to standardise and where we need to be able to provide the flexibility of choice.
Since I find easier to try to draw something of my idea, follows is a draft file format for the data:
<waypoints time_system="/universe/milky way/sol/earth:ISO-8601" coordinate_system="deg:deg:meters" geo_reference="/universe/milky way/sol/earth" time_base="2001-07-13T15:30:00" format="comma" > 13¡17'18",15¡17'18",42.4,T00:00:00 13¡17'18",16¡17'18",42.4,T00:40:00 13¡17'18",17¡17'18",42.4,T01:20:00 </waypoints>
What we see here are some of the elements that I am striving for. The first attribute is the "time system", which is meant to indicate what time format we are using and for what time based reference point and time format. The next attribute is the "coordinate system", which indicates what coordinate format we are using, since there may be several differents one used to represent a 'physical space' coordinate (one that does not include time). Next, is the "geographical reference", which is used to indicate relative to what point the coordinates are given. Next, is the "time base", which represents what the times in the coordinates are relative to, in the case non-absolute values are given. For example, the base value is 28 January 1977 at 15:32 and all times are relative to that. Next is the format used within the body of element. Defining comma would indicate one where part of the coordinate is separated by a comma. Another could be an XML attribute, for example:
<waypoints time_system="/universe/milky way/sol/earth:iso8601" coordinate_system="deg:deg:meters" geo_reference="/universe/milky way/sol/earth" time_base="2001-07-13T15:30:00" format="comma" > <coord x="13¡17'18\"" y="14¡17'18\"" z="42.4" t="T00:00:00"/> <coord x="13¡17'18\"" y="15¡17'18\"" z="42.4" t="T01:00:00"> <meta name="decription"> blah, blah </meta> </coord> <coord x="13¡17'18\"" y="16¡17'18\"" z="42.4" t="T02:40:00"> <meta name="url" value="http://www.esa.int" /> </coord> </waypoints>
Looking at both previous examples you will notice that I have defined Earth as "/universe/milky way/sol/earth". The idea here is to define astral bodies in relative terms to their 'astral parent'. This certainly makes the assumption that everything is dependent on some greater body. If this approach does stand up to real-life, then this would allow us to do quick transformation based on what we know of where each body is at the point of time in which we wish to do the transformation. As an example a space craft travelling from Earth to Mars would start off in a coordinate system relative to the Earth and end up in a coordinate system relative to Mars. To do this the transformation would probably be of the form:
As to the representation of the body identifier it may be better to use a language neutral identifier, though one advantage of the current approach is that it make the document easily readable.
There is still a lot of work to be done before a final version is reached. At this point I would appreciate any feedback and anyone wanting to collaborate with me on this.