Can we build SEDs from the results of the three services?
Not simply; photometry metadata in the VO isn’t quite sufficient for that yet. However, UCDs let us do a workaround:
UCD_TO_WL = { "phot.mag;em.opt.u": 3.5e-7, "phot.mag;em.opt.b": 4.5e-7, "phot.mag;em.opt.v": 5.5e-7, "phot.mag;em.opt.r": 6.75e-7, ... for row in rows: for index, col in enumerate(row): ucd = row.columns[index].meta.get("ucd", "").lower()) if ucd.startswith("phot.mag"): if ucd in UCD_TO_WL: phots.append((UCD_TO_WL[ucd], col))
UCDs (“Unified Content Descriptors”) are VO-standardised strings defining the physics contained in columns. They even have a bit of syntax. In our example, we can see that first, we have magnitudes (“phot.mag”) and then that they were taken in a certain band.
Similarly, “pos.eq.ra” would tell you that something is a right ascension as part of an equatorial position; since tables sometimes have multiple positions in a single row (e.g., different reduction, position in some reference catalog, or position of a sub-feature), you may want to single out a particular column as your preferred, primary, default, or whatever RA. For that, use “pos.eq.ra;meta.main”.
UCDs are particularly nifty in data discovery when you’re looking for tables that have a certain kind of physics. Of course, that only works when people properly mark up their tables with UCDs – be sure to do that on your data whenever you let a VOTable leave your disk. The full list of UCD atoms is available from the IVOA document respository.
The clean way, incidentally, is a proper annotation of the columns in question with full photometry metadata (e.g., central wavelength, bandwidth, perhaps a URL of the detector’s response curve, etc). The details are hellish, but there actually is a photometry DM in the VO. There’s just not a good way to put that info into a VOTable yet. If you’re looking for something to contribute to the VO: this would be a good task. Just ask on the IVOA’s data models mailing list.
(1)
Can you figure out what the UCD for a B-V colour would be?