VOTable for Images
Mark Taylor
M.B.Taylor at bristol.ac.uk
Thu Oct 17 01:27:16 CEST 2019
Mark,
I don't think this is going to work. The <FITS> element in VOTable
is only designed to point at a FITS Binary Table (BINTABLE extension),
not a FITS image (primary HDU or IMAGE extension). The reason that
the extnum has to be >0 is that you can't put a BINTABLE in the primary
HDU, only in one of the later extensions. If a VOTable parser gets
directed from the FITS element to an HDU that does not contain
a BINTABLE, it's going to fail to understand it; that's certainly
true of my parser, and I'd say it's the clear intention of the
standard, e.g. (VOTable 1.3 section 2.3):
Henceforth, we shall abbreviate "FITS Binary Table and its Conventions"
simply by the word "FITS".
If you wanted to insert the content of an image dataset into a VOTable
document, you'd have to do something like use a cell of a table
with multi-dimensional array type.
Mark
On Wed, 16 Oct 2019, CresitelloDittmar, Mark wrote:
> All,
>
> In my presentation at the interop (DM session), I mentioned that the
> VOTable serializations of the 2D and 4D image fail validation.
>
> I'm not terribly surprised (it is VO*Table* after all), but I have some
> small hope of working up to some usage work on the Cube-Image in the near
> future and am not sure what the strategy is for serializing/annotating
> image datasets.
>
> Looking for suggestions..
>
> Basically, I'm currently using the same mode that I do with tabular
> datasets. Include the header metadata, describe the content, point to the
> FITS file.
>
> <FIELD ID="_col-image" name="image" datatype="int"/>
> <DATA>
> <FITS extnum="0">
> <STREAM
> href="file:///data/vao/staff/mcd/docs/models/dm/Cube/examples/src/chandra_2Dsky_image.fits"/>
> </FITS>
> </DATA>
>
> 1) obviously, there is no field named "image" in the dataset, I could use
> the block name, but it's still a hack
> 2) extnum="0"
> The VOTable spec is pretty clear that the extensions are "numbered from 1
> up, the main header being numbered 0".
> So, it's no surprise that I get the following validation error on this:
> (using votlint in stilts_3.0-9)
> ERROR (l.293, c.26): cvc-minInclusive-valid: Value '0' is not
> facet-valid with respect to minInclusive '1' for type 'positiveInteger'.
> ERROR (l.293, c.26): cvc-attribute.3: The value '0' of attribute
> 'extnum' on element 'FITS' is not valid with respect to its type,
> 'positiveInteger'.
> ERROR (l.294, c.112): Non-positive extension number extnum=0
> WARNING (l.294, c.112): Read error for external stream
> uk.ac.starlink.table.TableFormatException: Can't read FITS header
>
> And, if I point it at a non-table HDU in later extensions...
> WARNING (l.294, c.93): Read error for external stream
> java.io.IOException: No table HDU at extension 2
>
> I suppose I could do it with the <BINARY> node, but it'd be nice for the
> redirect to work.
>
> Mark
>
--
Mark Taylor Astronomical Programmer Physics, Bristol University, UK
m.b.taylor at bris.ac.uk +44-117-9288776 http://www.star.bris.ac.uk/~mbt/
More information about the apps
mailing list