Package uk.ac.starlink.vo

## Interface TapCapability

-     public interface TapCapability

  Describes the capabilities of a TAP service as serialized by the TAPRegExt schema.
  Since:
    7 Mar 2011
  Author:
    Mark Taylor

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.String` | `ADQLGEO_FEATURE_TYPE` | Feature type key for ADQL geometrical functions.
    `static java.lang.String` | `TAPREGEXT_STD_URI` | IVO ID for the TAPRegExt standard registry record "ivo://ivoa.net/std/TAPRegExt".
    `static java.lang.String` | `UDF_FEATURE_TYPE` | Feature type key for ADQL(-like) User-Defined Functions.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.String[]` | `getDataModels()` | Returns an array of data models known by this capability.
    `TapLimit[]` | `getExecutionLimits()` | Returns an array of limit values representing the time limits for query execution.
    `TapLanguage[]` | `getLanguages()` | Returns an array of query language specifiers known by this capability.
    `OutputFormat[]` | `getOutputFormats()` | Returns an array of output format options declared by this capability.
    `TapLimit[]` | `getOutputLimits()` | Returns an array of limit values representing the data limits for result tables.
    `TapLimit[]` | `getRetentionLimits()` | Returns an array of limit values representing the time limits for query retention.
    `TapLimit[]` | `getUploadLimits()` | Returns an array of limit values representing the data limits for uploaded tables.
    `java.lang.String[]` | `getUploadMethods()` | Returns an array of upload methods known by this capability.

- - ### Field Detail

    - #### TAPREGEXT_STD_URI

          static final java.lang.String TAPREGEXT_STD_URI

      IVO ID for the TAPRegExt standard registry record "ivo://ivoa.net/std/TAPRegExt". This forms the base URI onto which fragment parts are appended to generate StandardsRegExt StandardKey-style keys to describe some concepts used by TAPRegExt standard.
      See Also:
        Constant Field Values

    - #### UDF_FEATURE_TYPE

          static final java.lang.String UDF_FEATURE_TYPE

      Feature type key for ADQL(-like) User-Defined Functions. "ivo://ivoa.net/std/TAPRegExt#features-udf"
      See Also:
        Constant Field Values

    - #### ADQLGEO_FEATURE_TYPE

          static final java.lang.String ADQLGEO_FEATURE_TYPE

      Feature type key for ADQL geometrical functions. "ivo://ivoa.net/std/TAPRegExt#features-adqlgeo"
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getUploadMethods

          java.lang.String[] getUploadMethods()

      Returns an array of upload methods known by this capability.
      Returns:
        uploadMethod element ivo-id attribute values

    - #### getLanguages

          TapLanguage[] getLanguages()

      Returns an array of query language specifiers known by this capability.
      Returns:
        array of language objects

    - #### getOutputFormats

          OutputFormat[] getOutputFormats()

      Returns an array of output format options declared by this capability.
      Returns:
        array of output formats

    - #### getDataModels

          java.lang.String[] getDataModels()

      Returns an array of data models known by this capability.
      Returns:
        dataModel element ivo-id attribute values

    - #### getOutputLimits

          TapLimit[] getOutputLimits()

      Returns an array of limit values representing the data limits for result tables. Legal values for limit units are "row" or "byte".
      Returns:
        output table limits

    - #### getUploadLimits

          TapLimit[] getUploadLimits()

      Returns an array of limit values representing the data limits for uploaded tables. Legal values for limit units are "row" or "byte".
      Returns:
        upload table limits

    - #### getExecutionLimits

          TapLimit[] getExecutionLimits()

      Returns an array of limit values representing the time limits for query execution. The limit units will be "seconds".
      Returns:
        execution time limits

    - #### getRetentionLimits

          TapLimit[] getRetentionLimits()

      Returns an array of limit values representing the time limits for query retention. The limit units will be "seconds".
      Returns:
        retention time limits