diff --git a/documentation/meta/media_properties/catalog.md b/documentation/meta/media_properties/catalog.md index 082b3a35fdf..e0b229a1464 100644 --- a/documentation/meta/media_properties/catalog.md +++ b/documentation/meta/media_properties/catalog.md @@ -13,69 +13,69 @@ noted otherwise in the Python column's name property. | Name | DB Field | Python Column | | ----------------------------------------------------- | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [`identifier`](#identifier) | uuid, nullable | [UUIDColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L500-L517) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`created_on`](#created_on) | timestamp with time zone, non-nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L520-L547) (`upsert_strategy=no_change, nullable=False, required=True`) | -| [`updated_on`](#updated_on) | timestamp with time zone, non-nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L520-L547) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | -| [`ingestion_type`](#ingestion_type) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`provider`](#provider) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`source`](#source) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`foreign_identifier`](#foreign_identifier) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | -| [`foreign_landing_url`](#foreign_landing_url) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L550-L596) (`upsert_strategy=newest_non_null, nullable=True, required=True`) | -| [`url`](#url) | text, non-nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L550-L596) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | -| [`thumbnail`](#thumbnail) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L550-L596) (`name="thumbnail_url", upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`width`](#width) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L216-L256) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`height`](#height) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L216-L256) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`filesize`](#filesize) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L216-L256) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`license`](#license) | character varying (50), non-nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`name="license_", upsert_strategy=newest_non_null, nullable=False, required=True`) | -| [`license_version`](#license_version) | character varying (25), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | -| [`creator`](#creator) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`creator_url`](#creator_url) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L550-L596) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`title`](#title) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`meta_data`](#meta_data) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L388-L454) (`upsert_strategy=merge_jsonb_objects, nullable=True, required=False`) | -| [`tags`](#tags) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L388-L454) (`upsert_strategy=merge_jsonb_arrays, nullable=True, required=False`) | -| [`watermarked`](#watermarked) | boolean, nullable | [BooleanColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L340-L385) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`last_synced_with_source`](#last_synced_with_source) | timestamp with time zone, nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L520-L547) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`removed_from_source`](#removed_from_source) | boolean, non-nullable | [BooleanColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L340-L385) (`upsert_strategy=false, nullable=False, required=True`) | -| [`filetype`](#filetype) | character varying (5), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`category`](#category) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`standardized_popularity`](#standardized_popularity) | double precision, nullable | [CalculatedColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L259-L337) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`identifier`](#identifier) | uuid, nullable | [UUIDColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L538-L555) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`created_on`](#created_on) | timestamp with time zone, non-nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L558-L585) (`upsert_strategy=no_change, nullable=False, required=True`) | +| [`updated_on`](#updated_on) | timestamp with time zone, non-nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L558-L585) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | +| [`ingestion_type`](#ingestion_type) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`provider`](#provider) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`source`](#source) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`foreign_identifier`](#foreign_identifier) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | +| [`foreign_landing_url`](#foreign_landing_url) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L588-L634) (`upsert_strategy=newest_non_null, nullable=True, required=True`) | +| [`url`](#url) | text, non-nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L588-L634) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | +| [`thumbnail`](#thumbnail) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L588-L634) (`name="thumbnail_url", upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`width`](#width) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L254-L294) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`height`](#height) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L254-L294) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`filesize`](#filesize) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L254-L294) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`license`](#license) | character varying (50), non-nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`name="license_", upsert_strategy=newest_non_null, nullable=False, required=True`) | +| [`license_version`](#license_version) | character varying (25), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | +| [`creator`](#creator) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`creator_url`](#creator_url) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L588-L634) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`title`](#title) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`meta_data`](#meta_data) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L426-L492) (`upsert_strategy=merge_jsonb_objects, nullable=True, required=False`) | +| [`tags`](#tags) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L426-L492) (`upsert_strategy=merge_tags, nullable=True, required=False`) | +| [`watermarked`](#watermarked) | boolean, nullable | [BooleanColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L378-L423) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`last_synced_with_source`](#last_synced_with_source) | timestamp with time zone, nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L558-L585) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`removed_from_source`](#removed_from_source) | boolean, non-nullable | [BooleanColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L378-L423) (`upsert_strategy=false, nullable=False, required=True`) | +| [`filetype`](#filetype) | character varying (5), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`category`](#category) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`standardized_popularity`](#standardized_popularity) | double precision, nullable | [CalculatedColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L297-L375) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | ## Audio Properties | Name | DB Field | Python Column | | --------------------------------------------------------------- | ----------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [`identifier`](#identifier) | uuid, nullable | [UUIDColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L500-L517) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`created_on`](#created_on) | timestamp with time zone, non-nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L520-L547) (`upsert_strategy=no_change, nullable=False, required=True`) | -| [`updated_on`](#updated_on) | timestamp with time zone, non-nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L520-L547) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | -| [`ingestion_type`](#ingestion_type) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`provider`](#provider) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`source`](#source) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`foreign_identifier`](#foreign_identifier) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | -| [`foreign_landing_url`](#foreign_landing_url) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L550-L596) (`upsert_strategy=newest_non_null, nullable=True, required=True`) | -| [`url`](#url) | text, non-nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L550-L596) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | -| [`thumbnail`](#thumbnail) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L550-L596) (`name="thumbnail_url", upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`filetype`](#filetype) | character varying (5), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`duration`](#duration) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L216-L256) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`bit_rate`](#bit_rate) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L216-L256) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`sample_rate`](#sample_rate) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L216-L256) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`category`](#category) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`genres`](#genres) | array of character varying (80), nullable | [ArrayColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L599-L651) (`upsert_strategy=merge_array, base_column=StringColumn, nullable=True, required=False`) | -| [`audio_set`](#audio_set) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L388-L454) (`upsert_strategy=merge_jsonb_objects, nullable=True, required=False`) | -| [`set_position`](#set_position) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L216-L256) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`alt_files`](#alt_files) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L388-L454) (`upsert_strategy=merge_jsonb_arrays, nullable=True, required=False`) | -| [`filesize`](#filesize) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L216-L256) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`license`](#license) | character varying (50), non-nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`name="license_", upsert_strategy=newest_non_null, nullable=False, required=True`) | -| [`license_version`](#license_version) | character varying (25), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | -| [`creator`](#creator) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`creator_url`](#creator_url) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L550-L596) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`title`](#title) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`meta_data`](#meta_data) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L388-L454) (`upsert_strategy=merge_jsonb_objects, nullable=True, required=False`) | -| [`tags`](#tags) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L388-L454) (`upsert_strategy=merge_jsonb_arrays, nullable=True, required=False`) | -| [`watermarked`](#watermarked) | boolean, nullable | [BooleanColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L340-L385) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`last_synced_with_source`](#last_synced_with_source) | timestamp with time zone, nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L520-L547) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`removed_from_source`](#removed_from_source) | boolean, non-nullable | [BooleanColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L340-L385) (`upsert_strategy=false, nullable=False, required=True`) | -| [`standardized_popularity`](#standardized_popularity) | double precision, nullable | [CalculatedColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L259-L337) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | -| [`audio_set_foreign_identifier`](#audio_set_foreign_identifier) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L457-L497) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`identifier`](#identifier) | uuid, nullable | [UUIDColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L538-L555) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`created_on`](#created_on) | timestamp with time zone, non-nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L558-L585) (`upsert_strategy=no_change, nullable=False, required=True`) | +| [`updated_on`](#updated_on) | timestamp with time zone, non-nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L558-L585) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | +| [`ingestion_type`](#ingestion_type) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`provider`](#provider) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`source`](#source) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`foreign_identifier`](#foreign_identifier) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | +| [`foreign_landing_url`](#foreign_landing_url) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L588-L634) (`upsert_strategy=newest_non_null, nullable=True, required=True`) | +| [`url`](#url) | text, non-nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L588-L634) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | +| [`thumbnail`](#thumbnail) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L588-L634) (`name="thumbnail_url", upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`filetype`](#filetype) | character varying (5), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`duration`](#duration) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L254-L294) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`bit_rate`](#bit_rate) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L254-L294) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`sample_rate`](#sample_rate) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L254-L294) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`category`](#category) | character varying (80), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`genres`](#genres) | array of character varying (80), nullable | [ArrayColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L637-L689) (`upsert_strategy=merge_array, base_column=StringColumn, nullable=True, required=False`) | +| [`audio_set`](#audio_set) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L426-L492) (`upsert_strategy=merge_jsonb_objects, nullable=True, required=False`) | +| [`set_position`](#set_position) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L254-L294) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`alt_files`](#alt_files) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L426-L492) (`upsert_strategy=merge_jsonb_arrays, nullable=True, required=False`) | +| [`filesize`](#filesize) | integer, nullable | [IntegerColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L254-L294) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`license`](#license) | character varying (50), non-nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`name="license_", upsert_strategy=newest_non_null, nullable=False, required=True`) | +| [`license_version`](#license_version) | character varying (25), nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=False, required=True`) | +| [`creator`](#creator) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`creator_url`](#creator_url) | text, nullable | [URLColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L588-L634) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`title`](#title) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`meta_data`](#meta_data) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L426-L492) (`upsert_strategy=merge_jsonb_objects, nullable=True, required=False`) | +| [`tags`](#tags) | jsonb, nullable | [JSONColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L426-L492) (`upsert_strategy=merge_tags, nullable=True, required=False`) | +| [`watermarked`](#watermarked) | boolean, nullable | [BooleanColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L378-L423) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`last_synced_with_source`](#last_synced_with_source) | timestamp with time zone, nullable | [TimestampColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L558-L585) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`removed_from_source`](#removed_from_source) | boolean, non-nullable | [BooleanColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L378-L423) (`upsert_strategy=false, nullable=False, required=True`) | +| [`standardized_popularity`](#standardized_popularity) | double precision, nullable | [CalculatedColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L297-L375) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | +| [`audio_set_foreign_identifier`](#audio_set_foreign_identifier) | text, nullable | [StringColumn](https://github.com/WordPress/openverse/blob/main/catalog/dags/common/storage/columns.py#L495-L535) (`upsert_strategy=newest_non_null, nullable=True, required=False`) | ## Media Property Descriptions