gavo.rscdef.coverage module

The coverage RD element.

Most code to obtain coverage information from actual resources is in gavo.user.info.

class gavo.rscdef.coverage.Coverage(parent, **kwargs)[source]

Bases: Structure

The coverage of a resource.

For now, this is attached to the complete resource rather than the table, since this is where it sits in VOResource. DaCHS could be a bit more flexible, allowing different coverages per publish element. It is not right now, though.

Note: Technically, this will introduce or amend the coverage meta element. The information given here will be masked if you define a coverage meta on the service or table level. Just do not do that.

attrSeq = [<gavo.base.attrdef.UnicodeAttribute object>, <gavo.base.parsecontext.IdAttribute object>, <gavo.base.attrdef.UnicodeAttribute object>, <gavo.rscdef.coverage.Ranges object>, <gavo.rscdef.coverage.Ranges object>, <gavo.base.complexattrs.StructAttribute object>]
completeElement(ctx)[source]
completedCallbacks = []
managedAttrs = {'fallbackTo': <gavo.base.attrdef.UnicodeAttribute object>, 'id': <gavo.base.parsecontext.IdAttribute object>, 'spatial': <gavo.base.attrdef.UnicodeAttribute object>, 'spectral': <gavo.rscdef.coverage.Ranges object>, 'temporal': <gavo.rscdef.coverage.Ranges object>, 'updater': <gavo.base.complexattrs.StructAttribute object>}
name_ = 'coverage'
onParentComplete()[source]
class gavo.rscdef.coverage.FloatInterval(name, default=None, description='Undocumented', copyable=False, aliases=None, callbacks=None, before=None)[source]

Bases: AtomicAttribute

An attribute keeping a floating-point attribute.

The literal of these is as in VOTable: a whitespace-separated pair for decimal floating-point literals.

parse(value)[source]

returns a typed python value for the string representation value.

value can be expected to be a unicode string.

typeDesc_ = 'A float interval (i.e., a space-separated pair of floats)'
unparse(value)[source]

returns a typed python value for the string representation value.

value can be expected to be a unicode string.

class gavo.rscdef.coverage.FloatOrDateInterval(name, default=None, description='Undocumented', copyable=False, aliases=None, callbacks=None, before=None)[source]

Bases: FloatInterval

An attribute keeping a temporal interval as MJD.

On literal input, we also allow ISO-like timestamps. You cannot mix MJD and ISO, though.

parse(value)[source]

returns a typed python value for the string representation value.

value can be expected to be a unicode string.

typeDesc_ = 'A float or ISO timestamp interval (values separated by space)'
class gavo.rscdef.coverage.Ranges(name, intervalAttr, default=[], **kwargs)[source]

Bases: ListOfAtomsAttribute

An attribute definition for a list of intervals.

feedFromArray(instance, arr)[source]

defines the intervals from a flat array by constructing each interval from consecuive pairs.

typeDesc_ = 'A sequence of intervals (a space-separated pair of floats'
class gavo.rscdef.coverage.Updater(parent, **kwargs)[source]

Bases: Structure

Information on where and how to update a piece of coverage information.

attrSeq = [<gavo.base.parsecontext.IdAttribute object>, <gavo.base.attrdef.IntAttribute object>, <gavo.base.parsecontext.ReferenceAttribute object>, <gavo.base.parsecontext.ReferenceAttribute object>, <gavo.base.parsecontext.ReferenceAttribute object>, <gavo.base.parsecontext.ReferenceAttribute object>]
completedCallbacks = []
managedAttrs = {'id': <gavo.base.parsecontext.IdAttribute object>, 'mocOrder': <gavo.base.attrdef.IntAttribute object>, 'sourceTable': <gavo.base.parsecontext.ReferenceAttribute object>, 'spaceTable': <gavo.base.parsecontext.ReferenceAttribute object>, 'spectralTable': <gavo.base.parsecontext.ReferenceAttribute object>, 'timeTable': <gavo.base.parsecontext.ReferenceAttribute object>}
name_ = 'updater'