Generated model schemas¶
This page is generated from the installed pydantic data models during every
MkDocs build. It therefore documents the same table and column definitions that
the service creates and registers in TAP_SCHEMA at startup.
The tables are rendered for the pgsphere geometry backend: each
s_region_geom footprint column is a spoly, and it is skyregion under TAP_GEOMETRY_BACKEND=skycell instead (see Deployment).
odp¶
Root model: ska_src_mm_notification.models.schemas.srcnet_ingestion.SRCIngestionNotification
SQL schema: srcnet
JSON ingest endpoint: /api/v1/notifications
srcnet.projects¶
Model: ska_src_mm_notification.models.schemas.srcnet_ingestion.SRCIngestionNotification
Primary key: project_id
| Column | Model field | SQL type | TAP type | Nullable | Key | Constraints | Description |
|---|---|---|---|---|---|---|---|
schema_version |
schema_version |
text |
char[*] |
no | no | — | Version of the schema this payload conforms to |
project_id |
project_id |
text |
char[*] |
no | yes | — | Project identifier |
group_ids |
group_ids |
jsonb |
char[*] |
no | no | — | Group IDs that have access to this data |
project_title |
project_title |
text |
char[*] |
yes | no | — | Human-readable title for the project |
pi_name |
pi_name |
text |
char[*] |
yes | no | — | Principal Investigator name |
data_rights |
data_rights |
text |
char[*] |
yes | no | data_rights IN ('public', 'proprietary', 'private') | Access rights for the data (public, proprietary, private) |
srcnet.observations¶
Model: ska_src_mm_notification.models.schemas.srcnet_ingestion.Observation
Primary key: project_id, obs_id
| Column | Model field | SQL type | TAP type | Nullable | Key | Constraints | Description |
|---|---|---|---|---|---|---|---|
project_id |
project_id |
text |
char[*] |
no | yes | — | — |
obs_id |
obs_id |
text |
char[*] |
no | yes | — | Observation identifier (namespace/scope, e.g., SKA-Mid.integration) |
obs_title |
obs_title |
text |
char[*] |
no | no | — | Human-readable title for the observation |
collection |
collection |
text |
char[*] |
yes | no | — | Collection identifier (es=early science, sv=science verification, cycle-N=observation cycle) |
instrument_name |
instrument_name |
text |
char[*] |
yes | no | — | Name of the instrument used (e.g., SKA-Mid, SKA-Low) |
facility_name |
facility_name |
text |
char[*] |
yes | no | — | Name of the facility/observatory |
srcnet.scheduling_blocks¶
Model: ska_src_mm_notification.models.schemas.srcnet_ingestion.SchedulingBlock
Primary key: project_id, obs_id, sbd_id
| Column | Model field | SQL type | TAP type | Nullable | Key | Constraints | Description |
|---|---|---|---|---|---|---|---|
project_id |
project_id |
text |
char[*] |
no | yes | — | — |
obs_id |
obs_id |
text |
char[*] |
no | yes | — | — |
sbd_id |
sbd_id |
text |
char[*] |
no | yes | — | Scheduling block definition identifier |
srcnet.execution_blocks¶
Model: ska_src_mm_notification.models.schemas.srcnet_ingestion.ExecutionBlock
Primary key: project_id, obs_id, sbd_id, eb_id
| Column | Model field | SQL type | TAP type | Nullable | Key | Constraints | Description |
|---|---|---|---|---|---|---|---|
project_id |
project_id |
text |
char[*] |
no | yes | — | — |
obs_id |
obs_id |
text |
char[*] |
no | yes | — | — |
sbd_id |
sbd_id |
text |
char[*] |
no | yes | — | — |
eb_id |
eb_id |
text |
char[*] |
no | yes | — | Execution block identifier |
srcnet.data_products¶
Model: ska_src_mm_notification.models.schemas.srcnet_ingestion.DataProduct
Primary key: project_id, obs_id, sbd_id, eb_id, product_id
| Column | Model field | SQL type | TAP type | Nullable | Key | Constraints | Description |
|---|---|---|---|---|---|---|---|
project_id |
project_id |
text |
char[*] |
no | yes | — | — |
obs_id |
obs_id |
text |
char[*] |
no | yes | — | — |
sbd_id |
sbd_id |
text |
char[*] |
no | yes | — | — |
eb_id |
eb_id |
text |
char[*] |
no | yes | — | — |
product_id |
product_id |
text |
char[*] |
no | yes | — | Unique identifier for the data product |
data_product_origin |
data_product_origin |
text |
char[*] |
yes | no | data_product_origin IN ('ODP', 'ADP') | Origin of the data product: ODP (Observatory Data Product) or ADP (Advanced Data Product) |
o_ucd |
o_ucd |
text |
char[*] |
no | no | — | Unified Content Descriptor for the observable (e.g., phot.flux.density;em.radio) |
dataproduct_type |
dataproduct_type |
text |
char[*] |
no | no | dataproduct_type IN ('image', 'cube', 'spectrum', 'visibility', 'sed', 'timeseries', 'table') | Type of data product |
calib_level |
calib_level |
bigint |
long |
no | no | calib_level >= 0; calib_level <= 3 | Calibration level (0=raw, 1=calibrated, 2=science-ready, 3=analysis) |
target_name |
target_name |
text |
char[*] |
yes | no | — | Name of the observed target |
is_calibrator |
is_calibrator |
boolean |
boolean |
yes | no | — | Whether this target is a calibrator |
calibrator_type |
calibrator_type |
text |
char[*] |
yes | no | calibrator_type IN ('flux', 'bandpass', 'phase', 'polarization', 'delay') | Type of calibrator if is_calibrator is true |
em_band |
em_band |
text |
char[*] |
yes | no | — | Electromagnetic band (e.g., Radio, Optical) |
s_ra |
s_ra |
double precision |
double |
yes | no | s_ra >= 0.0; s_ra <= 360.0 | Right ascension of product center in degrees (computed from artifacts) |
s_dec |
s_dec |
double precision |
double |
yes | no | s_dec >= -90.0; s_dec <= 90.0 | Declination of product center in degrees (computed from artifacts) |
s_fov |
s_fov |
double precision |
double |
yes | no | s_fov > 0.0; s_fov <= 10.0 | Field of view diameter in degrees (computed from artifacts, must be > 0) |
s_region |
s_region |
text |
char[*] |
yes | no | — | Spatial region as STC-S in ICRS frame, degrees (computed from artifacts) |
s_region_geom |
derived from s_region |
spoly |
char[*] |
yes | no | — | pgsphere footprint derived from s_region at ingestion; query it with INTERSECTS/CONTAINS |
em_wlen |
em_wlen |
double precision |
double |
yes | no | em_wlen >= 0.0 | Representative wavelength in meters (computed from artifacts) |
em_min |
em_min |
double precision |
double |
yes | no | em_min >= 0.0195; em_min <= 6.0 | Minimum wavelength in meters (computed from artifacts) |
em_max |
em_max |
double precision |
double |
yes | no | em_max >= 0.0195; em_max <= 6.0 | Maximum wavelength in meters (computed from artifacts) |
t_min |
t_min |
double precision |
double |
yes | no | t_min >= 0 | Start time in MJD (computed from artifacts) |
t_max |
t_max |
double precision |
double |
yes | no | t_max >= 0 | End time in MJD (computed from artifacts) |
t_exptime |
t_exptime |
double precision |
double |
yes | no | t_exptime >= 0.0 | Total exposure time in seconds (sum from artifacts) |
s_xel1 |
s_xel1 |
bigint |
long |
yes | no | s_xel1 >= 1 | Number of elements along spatial axis 1 |
s_xel2 |
s_xel2 |
bigint |
long |
yes | no | s_xel2 >= 1 | Number of elements along spatial axis 2 |
em_xel |
em_xel |
bigint |
long |
yes | no | em_xel >= 1 | Number of spectral samples |
t_xel |
t_xel |
bigint |
long |
yes | no | t_xel >= 1 | Number of time samples |
baseline_min |
baseline_min |
double precision |
double |
yes | no | baseline_min >= 0.0 | Minimum baseline length in meters |
baseline_max |
baseline_max |
double precision |
double |
yes | no | baseline_max >= 0.0 | Maximum baseline length in meters for interferometry observations |
num_baselines |
num_baselines |
bigint |
long |
yes | no | num_baselines >= 0 | Number of baselines |
num_antennas |
num_antennas |
bigint |
long |
yes | no | num_antennas >= 0 | Number of antennas |
beam_size |
beam_size |
double precision |
double |
yes | no | beam_size >= 0.0 | Synthesized beam size in arcseconds |
beam_maj |
beam_maj |
double precision |
double |
yes | no | beam_maj > 0.0 | Beam major axis FWHM in degrees (synthesized beam for interferometry, PSF for single dish) |
beam_min |
beam_min |
double precision |
double |
yes | no | beam_min > 0.0 | Beam minor axis FWHM in degrees (synthesized beam for interferometry, PSF for single dish) |
beam_pa |
beam_pa |
double precision |
double |
yes | no | beam_pa >= -180.0; beam_pa <= 180.0 | Beam position angle in degrees (measured East of North) |
pol_states |
pol_states |
text |
char[*] |
yes | no | — | Polarization states as concatenated codes (e.g., 'IQUV', 'XXYXYXYX') |
pol_xel |
pol_xel |
bigint |
long |
yes | no | pol_xel >= 1 | Number of polarization dimensions/axes in the data product |
baselines |
baselines |
jsonb |
char[*] |
yes | no | — | List of unique baseline identifiers |
calibrator_targets |
calibrator_targets |
jsonb |
char[*] |
yes | no | — | Names of ancillary targets used for calibration (e.g., bandpass calibrators, flux calibrators) |
srcnet.artifacts¶
Model: ska_src_mm_notification.models.schemas.srcnet_ingestion.Artifact
Primary key: project_id, obs_id, sbd_id, eb_id, product_id, artifact_id
| Column | Model field | SQL type | TAP type | Nullable | Key | Constraints | Description |
|---|---|---|---|---|---|---|---|
project_id |
project_id |
text |
char[*] |
no | yes | — | — |
obs_id |
obs_id |
text |
char[*] |
no | yes | — | — |
sbd_id |
sbd_id |
text |
char[*] |
no | yes | — | — |
eb_id |
eb_id |
text |
char[*] |
no | yes | — | — |
product_id |
product_id |
text |
char[*] |
no | yes | — | — |
artifact_id |
artifact_id |
text |
char[*] |
no | yes | — | Unique identifier for the artifact |
access_url |
access_url |
text |
char[*] |
no | no | — | URL or path to access the artifact (e.g., file://staging/data/file.fits) |
access_format |
access_format |
text |
char[*] |
no | no | — | MIME type of the artifact (e.g., image/fits, application/fits) |
access_estsize |
access_estsize |
bigint |
long |
no | no | access_estsize >= 0 | Estimated size of the artifact in bytes |
path_to_parent |
path_to_parent |
text |
char[*] |
yes | no | — | Virtual path to parent directory for organizing artifacts (e.g., ./cubes/) |
semantics |
semantics |
text |
char[*] |
yes | no | semantics IN ('science', 'auxiliary', 'noise', 'calibration') | Semantic type of the artifact (science, auxiliary, noise, calibration) |
s_ra |
s_ra |
double precision |
double |
yes | no | s_ra >= 0.0; s_ra <= 360.0 | Right ascension of artifact center in degrees |
s_dec |
s_dec |
double precision |
double |
yes | no | s_dec >= -90.0; s_dec <= 90.0 | Declination of artifact center in degrees |
s_fov |
s_fov |
double precision |
double |
yes | no | s_fov > 0.0; s_fov <= 10.0 | Field of view diameter in degrees (must be > 0) |
s_region |
s_region |
text |
char[*] |
yes | no | — | STC-S region in ICRS frame, degrees: CIRCLE|POLYGON|POSITION (e.g. 'CIRCLE 3.5867 -30.4 0.25') |
s_region_geom |
derived from s_region |
spoly |
char[*] |
yes | no | — | pgsphere footprint derived from s_region at ingestion; query it with INTERSECTS/CONTAINS |
em_wlen |
em_wlen |
double precision |
double |
yes | no | em_wlen >= 0.0 | Representative wavelength in meters |
em_min |
em_min |
double precision |
double |
yes | no | em_min >= 0.0195; em_min <= 6.0 | Minimum wavelength in meters (SKA range: 0.0195m to 6m) |
em_max |
em_max |
double precision |
double |
yes | no | em_max >= 0.0195; em_max <= 6.0 | Maximum wavelength in meters (SKA range: 0.0195m to 6m) |
t_min |
t_min |
double precision |
double |
yes | no | t_min >= 0 | Start time in MJD (Modified Julian Date, days) |
t_max |
t_max |
double precision |
double |
yes | no | t_max >= 0 | End time in MJD (days) |
t_exptime |
t_exptime |
double precision |
double |
yes | no | t_exptime >= 0.0 | Exposure time in seconds |
pol_states |
pol_states |
text |
char[*] |
yes | no | — | Polarization states present in the artifact as concatenated codes (e.g., 'IQUV', 'XXYXYXYX') |
pol_xel |
pol_xel |
bigint |
long |
yes | no | pol_xel >= 1 | Number of polarization samples in artifact |
software¶
Root model: ska_src_sdm.software.Software
SQL schema: srcnet
JSON ingest endpoint: /api/v1/software
srcnet.software¶
Model: ska_src_sdm.software.Software
Primary key: uri
| Column | Model field | SQL type | TAP type | Nullable | Key | Constraints | Description |
|---|---|---|---|---|---|---|---|
uri |
uri |
text |
char[*] |
no | yes | — | Format: {publisher}:{name}:{version} where version is semver |
description |
description |
text |
char[*] |
yes | no | — | — |
release_date |
release_date |
timestamptz |
char[*] |
yes | no | — | — |
changelog |
changelog |
text |
char[*] |
yes | no | — | — |
status |
status |
text |
char[*] |
yes | no | status IN ('ALPHA', 'BETA', 'TESTING', 'STABLE', 'DEPRECATED') | — |
discovery_science_category |
discovery.science_category |
jsonb |
char[*] |
yes | no | — | — |
discovery_function_category |
discovery.function_category |
jsonb |
char[*] |
yes | no | — | — |
discovery_science_working_group |
discovery.science_working_group |
jsonb |
char[*] |
yes | no | — | — |
discovery_tools_included |
discovery.tools_included |
jsonb |
char[*] |
yes | no | — | — |
data_compatibility_data_input_type |
data_compatibility.data_input_type |
jsonb |
char[*] |
yes | no | — | — |
data_compatibility_data_output_type |
data_compatibility.data_output_type |
jsonb |
char[*] |
yes | no | — | — |
resources_requires_gpu |
resources.requires_gpu |
boolean |
boolean |
yes | no | — | — |
resources_min_memory |
resources.min_memory |
bigint |
long |
yes | no | resources_min_memory >= 1 | — |
resources_recommended_memory |
resources.recommended_memory |
bigint |
long |
yes | no | resources_recommended_memory >= 1 | — |
provenance_repository_url |
provenance.repository_url |
text |
char[*] |
yes | no | — | — |
provenance_registered_by |
provenance.registered_by |
text |
char[*] |
yes | no | — | — |
provenance_registration_date |
provenance.registration_date |
timestamptz |
char[*] |
yes | no | — | — |
srcnet.software_artifacts¶
Model: ska_src_sdm.software.Artifact
Primary key: uri, location
| Column | Model field | SQL type | TAP type | Nullable | Key | Constraints | Description |
|---|---|---|---|---|---|---|---|
uri |
uri |
text |
char[*] |
no | yes | — | — |
kind |
kind |
text |
char[*] |
no | no | kind IN ('DOCKER', 'SINGULARITY', 'OCI') | — |
location |
location |
text |
char[*] |
no | yes | — | — |
cpu_architecture |
cpu_architecture |
jsonb |
char[*] |
no | no | — | — |
digest |
digest |
text |
char[*] |
yes | no | — | — |
entrypoint |
entrypoint |
text |
char[*] |
yes | no | — | — |
supported_modes |
supported_modes |
jsonb |
char[*] |
yes | no | — | — |