Space-Time Coordinate Metadata RFCThis document will act as RFC centre for the Space-Time Metadata V1.30 Proposed Recommendation. In order to add a comment to the document, please edit this page and add your comment to the list below in the format used for the example (include your WikiName so authors can contact you for further information). When the author(s) of the document have considered the comment, they will provide a response after the comment. Discussion about any of the comments or responses should be conducted on the data model mailing list, dm@ivoa.net.g See also historic comments on V1.21.Comments
Referencing mechanisms withing STCThere is a potential problem with STC's use of xml ID and IDREF types for identifying and referring to coordinate systems within the xml instance, when individual instances are concatenated, as might happen within a registry for instance. This issue was discussed at length in the registry mailing list with the thread starting http://www.ivoa.net/forum/registry/0612/1764.htm and section 6.2.1 of the standard where the conclusion of discussion is effectively deferred by saying that that the naming conventions for the IDs will have to be agreed. I believe that for a schema that is primarily intended to be used as an imported component of other schemas it is fundamentally wrong to impose document-wide constraints that are inherited (ID and IDREF) as it restricts how STC can be used within instance documents of the inheriting schema whilst at the same time trying to make sure that the resulting documents XML valid. In fact the just about the only possible result of the retaining ID and IDREF is that there will be many more xml fragments in the world that all are trying to describe the same physical coordinate system, but each with a unique identfier - this cannot be a good thing, and is basically equivalent to Roy's complaint above that STC is verbose to describe the common venacular. Something based purely on the xlink mechanism could be more flexible (because the xml parser does not validate these references) and ultimately simpler because the mnajority of STC instance documents will use standard coordinate systems. There is really no need to have the two level identifier system that currently is defined in STC where an <AstroCoords> uses an IDREF to the ID of an <AstroCoordSystem> which can then use an xlink:href to a standard definition- it can all be done with just a direct xlink:href at the <AstroCoords> level. This xlink only mechanism would positively encourage the reuse of the standard URIs for coordinate systems and the publishing of new co-ordinate system definitions, and observatory locations at well known URIs, promoting reuse and reducing verbosity. For the smaller set of cases where a novel coordinate system does need to be defined within the STC document, then there is already a convention to refer to an coordinate system defined only locally within the document using the # 'fragment' notation of URIs. -- PaulHarrison - 04 May 2007 As was pointed out in that discussion, the proposed solution does not really solve the problem and, more importantly, this is an IVOA-wide issue, not just an STC quirk. The problem is simply that any unambiguous association mechanism in XML documents runs afoul of the no-ambiguity requirement when those documents are included in a larger document by a concatenating service (such as the Registry). We do need a mechanism that allows unambiguous association in XML documents and the ID/IDREF pairs are intended for that purpose and fit the bill precisely. The onus is on the concatenating services to ensure that unique associations remain unique. On the other hand, the criticism that this presents a significant burden on those services, since it requires checking all relevant schemata, is justified. What is needed is a convention that enables document readers to identify ID and IDREF attributes without having to resort to the schema. Two candidate conventions have been discussed: 1. By signifying it in the attribute's name:- Attributes of type ID will be identified by having their names start with "ID_". - Attributes of type IDREF will be identified by having their names start with "IDREF_". This option has the virtue of being simple. coord_system_id="MyCoordSystem" would become: IDREF_coord_system="MyCoordSystem" 2. By identifying specific attributes to be of a certain type through a specific attribute (minOccur=0, maxOccur="unbounded"): - The attribute ID_type (string) will contain the name of an attribute that is of type ID. - The attribute IDREF_type (string) will contain the name of an attribute that is of type IDREF. This option has the advantage that it is backward compatible, can be retrofitted, and makes it easier to fix documents; it's also easily extensible. coord_system_id="MyCoordSystem" would become: coord_system_id="MyCoordSystem", IDREF_type="coord_system_id" -- ArnoldRots - 09 May 2007 This issue was discussed today and the conclusion was that STC can go forward as currently defined. A more comprehensive solution involving a generally applicable convention will be worked out for a future version. -- ArnoldRots - 18 May 2007 Data model element namesThe UML diagrams and chapter names in the STC document refer to an item calledAstroCoordSys , and the schema defines a (presumably corresponding) element called AstroCoordSystem . There may be other instances of this kind of minor discrepancy, I haven't checked. I don't know if this is deliberate to distinguish the data model from the schema, but it can be confusing, especially if one is attempting to decide what utype string one should use to refer to this item.
-- MarkTaylor - 14 May 2007
Thank you for pointing this out; I have corrected this in my copy of the document; AstroCoordSystem is the correct name.
-- ArnoldRots - 15 May 2007
URIs and URLs of standard librariesIn Appendix C, the definition of standard libraries of
Various comments on the document
Set of comments from ReubenWright
Thank you for your careful reading; here are the individual responses:
Comments from the Working Group Chairs and Interest Group ChairsChairs should add their comments under their name.Mark Allen and Mark Taylor (Applications WG)Approved with the following comments: The STC formalism allows precise description of a wide variety of coordinate information of the kind which is needed in the VO, and we congratulate the author for attention to detail in this work. We note however that real use of STC in applications will require significant amount of effort to develop libraries and functions for coordinate transformations, and to ease it's implementation and use within tools. The standard looks sufficiently complicated that it appears as though it will be very hard to take a general STC description and do something useful with it. Questions like "tell me the name of the reference frame" may be straight forward by searching for the relevant XML attribute. But performing coordinate transformations, calculating distances, answering questions about coverage etc, where different coordinate systems are involved will be difficult. It seems unlikely that applications could attain full STC compliance. The flexibility of having a 'CustomFrame' is one aspect of this, but just considering the list of 'Standard Reference Frames' (Table 3), it would require significant effort to write a library which could perform general transformations between all coordinate systems specified by STC. The document does acknowledge that 'there are a few common coordinate systems that will serve the bulk of our data and we will make an effort to make their use as simple as possible'. We highlight the need for these ideas to be expanded and clearly explained 'somewhere' to guide implementation of STC for the common subset of coordinate systems. It is important that these common cases do not require too much overhead imposed by the flexibility of the STC structure. It is difficult to assess this from the document. The reference implementations provide some example usage, but are somewhat weak in terms of coordinate transformations. The comment concerning the reference implementation of the JHU Footprint Service, "Coordinate transformation are not supported, although it would not be difficult to add" seems to be overstated, as transformations for example between systems with reference frames of URANUS_G_III and SUPER_GALACTIC may be quite challenging. We approve the current STC because it provides the precise description of coordinates. From an applications point of view there is still much work to required for general libraries which can parse a general STC description and perform astronomically non-trivial operations on it. Minor comments: Section 5. meat ? 'Such a Projection or Mapping metadata object is very much like the meat in the FITS WCS' Sec 6.1.2.3: I think the bullet point nesting has lost a negative indent near "All non-Generic Coordinate Areas MUST...". But I could be wrong. Appendix A says: "The subsequent pages show the design of the Coordinates and Coordinate Area classes, though these represent the design of versions 1.2 and 1.3, and are therefore slightly outdated at this time; in particular, the Pixel Space is missing." It would be better if these were updated for an IVOA REC. B.4A ucd="whoknows" is not a good thing to see in an IVOA document.Christophe Arviset (TCG vice Chair)In general, the document offer a very exhaustive description of the STC metadata for the VO. Its intent to cover all areas may make it too complex, but my understanding is that specific bits of it can be used, not necessary the complete set. The section 7 conclusion and usage notes as well as the examples given in Appendix B are very useful to understand how to use this standard. Nonetheless, the document contains the description of the metadata which is fine, but it also covers some other areas which I don't believe belong to STC metadata but more to other IVOA standards, in particular: - 4.5.2 operations (probably more linked to ADQL specs) - 7.2.2 query constraints (probably more linked to ADQL specs) - 7.2.3 catalog entry (probably more linked to other DM) - 7.2.4 observational data(probably more linked to other DM) I believe these sections (and their corresponding examples if any) should be removed or at least a clear reference to the other IVOA standards should be mentioned. The document describes all possible STC metadata but does not indicate how to "convert" one coordinate / coordinate system to an other. So if 2 services implement STC, but using different coordinate / coordinate system, how do these 2 services be interoperable ?Matthew Graham (Grid & Web Services WG)I approve this document with the following comments: (!) It is not clear to me what the precise scope of STC is. Is it just for representing astronomical coordinates or is for any coordinate system - is it, in fact, the Coordinate data model? Can I legitimately report my data set in some multidimensional phase space in STC? Can STC be used for theoretical simulations to represent Eulerian or Lagrangian systems and should it be? (2) I would have liked at one least reference library supporting region handling and coordinate transformations that I can install on my laptop and use as one of the implementations. (3) It is no clear to me that STC can handle complex coordinate transformations: e.g. defining a coordinate system using cosmological comoving coordinates from the known Ra, Dec, redshift system. How would I specify the cosmological model I am using and the functional form of the metric?Bob Hanisch (Data Curation & Preservation IG)I approve this document. This is perhaps the most complicated of the VO standards, and only through more extensive use will we be able to ascertain properly how it needs to evolve further. We should move forward and deal with those revisions through the standard process.Gerard Lemson (Theory IG) | ||||||||
Changed: | ||||||||
< < | I approve of the model, but I must admit this is mainly because we apparently need a standard for STC "right now" | |||||||
> > | I approve of the model, but I must admit this is partly because we need a standard for STC "right now" and there is no alternative. | |||||||
Deleted: | ||||||||
< < | and there is no alternative. | |||||||
I will not comment on the contents too much as I am not an expert. But it is clear that Arnold has taken
great care in including all possible situations and has produced as comprehensive a model as he could.
I want to congratulate him on that.
My main comments are with the structure of the presented model.
I find it worrisome that the only result one can see as a standard that allows applications to be built against it etc
is the XML schema. It seems to me that we can not consider the UML diagrams as normative as they are way less detailed
then the schema, even though the latter is supposed to be only one serialisation of the model.
It is unclear how the various UML diagrams have to be interpreted. The colored onese are surely closer to an
understandable model than the white ones (which can be removed) and do indeed allow one to understand the structure
of the model better than reading the XML schema does.
I refer further to my TCG comment in the spectrum datamodel for more comments on the use of UML in the DM working group.
One problem I have with the schema is that it is very monolithic. It would be nice if the schema could be
modularised in separate namespaces, with their interdependency organised as a DAG, so that when wanting to
use only part of the model, say region, one needs not import all the stuff one is not interested in.
This has several advantages. As a natural first step in validating an XML document one should check it against
the corresponding schema. If the schema is a smaller module it is now not necessray to import the whole schema to do so.
Similarly, code generators, which form the simplest way to create an XML parser, do not need to create
400+ different classes corresponding to all the different complex and simple types and root elements if one
needs only a (small) subset of the whole model.
Another aspect I can not ignore to mention (as I did so before) is the design choices Arnold made in the XML schema.
His use of ref="" in element definitions instead of name=""+type="", has as a consequence that way more root elements
have to be introduced than would be necessary if a straighforward mapping from his UML diagrams would imply.
As an example, only because of this design choices do we now have root elements named Region and Region2,
as well as Union and Union2 etc. For they are to be referenced at by the two components in a union or an
intersection etc. I counted that there are about 300+ root elements, to the 100+ complex types.
Another potential problem with this choice is that a strict XML validation will allow STC documents that consist
of a single element | ||||||||
Changed: | ||||||||
< < | Again, I have nothing against the content, which I am sure is excellent, only against the form in which it has been | |||||||
> > | This said I do also think that we need to start using the model and not hesitate to change it in future versions. | |||||||
Deleted: | ||||||||
< < | expressed. | |||||||
Anita Richards in agreement with Mireille Louys (Data Models WG)I am very happy to approve STC as we need to carry on using the model and also refering instrument/data handling tool developers to its definitions. I have some comments which could be attended to in a future version. In some places it may be that I have overlooked or misunderstood what is already in the document, if so I apologise but maybe that indicates a need for clarification in those places. In general it's quite verbose. This can make it difficult for people who are slow reading English (although it is beautifully written!). A summary of the meat of Sections 1-3 in a couple of paras might help. 1) Specifying the handedness of axes Although RA and Dec and some other coordinate systems have an unambiguous 'handedness', this is not always the case. For example, if I need to use the positions of telescopes in a synthesis array, these may be given in array-centred coordinates in xyz metres offset from a reference position, but some arrays use left-handed and some arrays use right-handed coordinates. Bitter experience has shown that expecting users or publishers to adjust to a common conventions does not work, you have to be able to specify the convention. I think that GEO_D as in Table 3 p.20 covers this, or if not Generic 6.1.1 - in any case, I am not sure how to specify handedness. (The reference position should of course be in a well-defined conventional system). 2) In FK4, you need to be able to specify the epoch as well as the equinox for full accuracy and I don't see how to do that. 3) In the long term, generic coordinates should be allowed to be more than 3 dimensional, e.g. sometimes cosmologists want 4 interchangable space-time axes, or even more dimensions. 4) 4.4.2.2.4 error in RA always in units of arc angle... is this essential? My experience e.g. with people who publish data to Astroscope, is that people won;t convert. Hence it would be more foolproof to insist that units are given or at least allow them, so that if the errors are in time-like seconds there is no confusion. 5) 6.1.3.1 Is there some place to specify the units for Scaling? AnitaRichards for MireilleKeith Noddle (Data Access Layer WG)A formidable body of work! I recommend approval; some details need attaention (how could it be otherwise?) but no show stoppers.Francois Ochsenbein (VOTable WG)Pedro Osuna (VOQL WG)Ray Plante (Resource Registry WG)I recommend the approval of this document to Recommendation status; however, I would strongly encourage the following changes:
Andrea Preite-Martinez (Semantics WG)I congratulate the author for his remarkable work. I approve it for Recommendation.Roy Williams (VOEvent WG)It is not clear to me what, precisely, an STC instance is actually describing. It is a point in the sky, it is the orbit and/or ephemeris of a comet, it is the coverage of a survey, it is a query on a catalog. In spite of the great detail of the STC document, it does not mention relationships with other IVOA standards, does not talk of translations or equivalences, does not define where STC should and should not be used in the IVOA context. It is difficult for me to accept a recommendation that covers SO MUCH ground, but has had only ONE HAND in its creation. However I see no practical alternative, so I enthusiastically recommend STC as an IVOA standard. Having said this, two points that I believe should be corrected are: (1) Some of the examples in the document have Schema Location at Harvard. These should be copied to ivoa.net and the examples changed. (2) Use of textually meaningful ID/IDREF structures in IVOA protocols is now deprecated, and the STC examples do not show this. This line for example from Appendix C: <AstroCoordSystem id="TT-ICRS-TOPO" xlink:type="simple" xlink:href="ivo://STClib/CoordSys#TT-ICRS-TOPO"/> implies that a consumer of STC can detect the coordinate system by checking the coord_system_id, by splitting that into parts TT, ICRS, TOPO. But this is not true, since this token may have been changed in the registry. The correct check is on the href attribute of the xlink, and the sexample should change to imply this: <AstroCoordSystem id="b57ccd870cf4b" xlink:type="simple" xlink:href="ivo://STClib/CoordSys#TT-ICRS-TOPO"/><--
|