proposal to turn the tables
Ed Shaya
edward.j.shaya.1 at gsfc.nasa.gov
Mon Apr 28 10:25:40 PDT 2003
Technically one can shove columns into TD elements, but it does not
carry the same semantic meaning. Arrays placed into TD do not
necessarily have a relation between all of the Nth elements. If a table
has a column with a spectrum and another column with a list of URLs,
there is no implicit relation between the 23 pixel of the spectrum and
the 23 URL. That is why I suggest that we add a new element TFIELD to
explicitly state that these are still the table's fields and record
relationships between the fields still holds. Using TDs to do both
creates a case of ambiguous overriding.
As to the size, using the FIELD/@arraysize attribute is reasonable.
When the application sees that there are TFIELDS instead of TR/TD it
can safely assume the arraysize pertains to them.
I am confused by the char/string situation in VOTABLE. Is char a single
char, or does it mean character data in general (string), or is it
character data without a space? If you say you need string data in
addition to char data, then the existing VOTABLE spec is missing
something.
Perhaps Francois is asking what to do about spaces in string lists.
Schema listTypes in XML are delimited by spaces. So if an atom of data
has a string in it you need to do something about that. Up to now most
of us have just put "_" underscores between words to hold them in a
nmtoken. But, we can do better than that. One can use any specal
character and simply have a FIELD/@spaceChar to indicate it. But the
best way is to use the entity which means "no break space" which
is what it is! It is then necessary that the character be
defined at least in the schema. For non-validating browsers (Mozilla)
it needs to be defined at the top of the document.
The nil would require a noData attribute as I believe that, in elements,
double spaces get normalized to a single space. Since bit data takes
only 0 and 1 one would not have a nil there. One could change bitList
to takes -1,0,1 and use -1 for nil. But, I don't think that bit data
needs this much. Perhaps we could have an additional type: bitsyType.
Remember that this would all be optional. If for certain types of data
or uses of data it is better to use td cells then one still could.
Finally, I am making this suggestions only after being told that
suggestions are being taken for the next version of VOTABLE. Presumably
some day there will be changes made to VOTABLE and certainly that will
require some effort on the part of the implementors.
Ed
More information about the votable
mailing list