"""Sidebar dataset catalog and Chinese display metadata. Keep static routing/catalog data outside ``ui_server.py`` so UI work does not accidentally alter the Ocean/Fisheries data-plane rules. """ FISHERY_TERMS = ( "柔鱼", "鱿鱼", "squid", "金枪鱼", "tuna", "wcpfc", "sprfmo", "npfc", "iattc", "iccat", "iotc", "ccsbt", "effdis", "金枪鱼委员会", "fao", "sea around", "ram legacy", "ram", "gfw", "global fishing watch", "viirs", "vbd", "捕捞", "努力量", "cpue", "渔船", "资源评估", "biomass", "recruitment", ) OCEAN_TOOL_TERMS = ( "cmems", "era5", "oisst", "oc-cci", "occci", "sst", "海温", "温度", "盐度", "thetao", "流速", "uo", "vo", "mlotst", "混合层", "zos", "海面高度", "bgc", "叶绿素", "chlor", "chlor_a", "spco2", "碳酸盐", "v10", "u10", "t2m", "msl", "slhf", "sshf", "ssrd", "strd", "tp", "no3", "nppv", "o2", "po4", "anom", "10米风", "10 米风", "经向风", "纬向风", "ocean 数据", "ocean数据", "海洋环境", "学校海洋数据", "海洋数据服务器", ) OCEAN_STATUS_TERMS = ( "三个数据中心", "ocean 状态", "ocean状态", "下载进度", "当前状态和存储量", "海洋数据中心", ) HF_SOURCE_ALIASES = { "WCPFC": ("wcpfc", "中西太平洋"), "SPRFMO": ("sprfmo", "南太平洋区域渔业"), "NPFC": ("npfc", "北太平洋渔业"), "FAO": ("fao",), "Sea Around Us": ("sea around", "sea_around", "seaaroundus"), "RAM Legacy": ("ram legacy", "ram_legacy", "ramldb", "/ram", "ram "), "GFW": ("gfw", "global fishing watch"), "VIIRS": ("viirs", "vbd"), "IATTC": ("iattc", "美洲热带金枪鱼"), "ICCAT": ("iccat", "大西洋金枪鱼"), "IOTC": ("iotc", "印度洋金枪鱼"), "CCSBT": ("ccsbt", "南方蓝鳍金枪鱼"), "GBIF": ("gbif",), "OBIS": ("obis",), "IMARPE": ("imarpe",), "INIDEP": ("inidep", "marabierto"), "NOAA": ("noaa", "dismap", "neus_fal", "neus_spr"), "CCAMLR": ("ccamlr", "commission for the conservation of antarctic marine living resources"), "Ommastrephidae v2": ("v2/ommastrephidae/data/", "ommastrephidae/data/"), } OCEAN_CATALOG = ( ("cmems_physics", "CMEMS Physics", "CMEMS 海洋物理", ("so", "thetao", "uo", "vo")), ("cmems_surface", "CMEMS Surface", "CMEMS 海表参数", ("mlotst", "zos")), ("cmems_bgc", "CMEMS BGC", "CMEMS 生物地球化学", ("chl", "no3", "nppv", "o2", "po4", "si")), ("cmems_carbonate", "CMEMS Carbonate", "CMEMS 碳酸盐系统", ("ph", "spco2")), ("era5", "ERA5", "ERA5 大气再分析", ("msl", "t2m", "u10", "v10")), ("era5_accum", "ERA5 Accumulation", "ERA5 累积量与通量", ("e", "slhf", "sshf", "ssrd", "strd", "tp")), ("occci", "OC-CCI", "海色气候变化倡议", ("chlor_a", "chlor_a_log10_bias", "chlor_a_log10_rmsd", "total_nobs_sum")), ("oisst", "OISST", "最优插值海表温度", ("sst", "anom", "err", "ice")), ) OCEAN_SOURCE_DETAILS = { "cmems_physics": {"description": "CMEMS 海洋物理三维场,供温度、盐度与海流分析。", "data_shape": "三维海洋场;部分导出格式需要指定深度"}, "cmems_surface": {"description": "CMEMS 海表与上层海洋参数,供混合层和海面高度分析。", "data_shape": "二维海表 / 上层海洋场"}, "cmems_bgc": {"description": "CMEMS 生物地球化学场,包含营养盐、叶绿素、溶解氧和初级生产力。", "data_shape": "三维生物地球化学场;部分导出格式需要指定深度"}, "cmems_carbonate": {"description": "CMEMS 海洋碳酸盐系统数据,供海洋酸化与碳循环分析。", "data_shape": "海表 / 三维变量以学校服务器实际产品为准"}, "era5": {"description": "ERA5 大气再分析瞬时场,包含气压、近地面气温和风场。", "data_shape": "二维大气表面场"}, "era5_accum": {"description": "ERA5 累积量与通量,包含降水、蒸发、辐射和热通量。", "data_shape": "二维大气表面累积 / 通量场"}, "occci": {"description": "ESA Ocean Colour CCI 海色数据,供叶绿素及观测质量分析。", "data_shape": "二维海表遥感场"}, "oisst": {"description": "NOAA 最优插值海表温度,包含海温、距平、误差和海冰浓度。", "data_shape": "二维海表格点场"}, } FISHERIES_SOURCE_DETAILS = { "WCPFC": "中西部太平洋金枪鱼及相关渔业统计与空间数据。", "SPRFMO": "南太平洋公海渔业捕捞量与努力量资料。", "NPFC": "北太平洋公海渔业统计与管理资料。", "FAO": "联合国粮农组织全球捕捞产量统计。", "Sea Around Us": "全球历史重建捕捞量及空间分布数据。", "RAM Legacy": "全球渔业种群评估、资源量与补充量数据。", "GFW": "基于 AIS 与模型推断的全球表观捕捞活动数据。", "VIIRS": "夜光船探测和卫星观测机会数据;不能直接等同于捕捞量。", "IATTC": "东太平洋金枪鱼区域渔业管理资料。", "ICCAT": "大西洋金枪鱼及相关物种渔业资料。", "IOTC": "印度洋金枪鱼及相关物种渔业资料。", "CCSBT": "南方蓝鳍金枪鱼养护与资源评估资料。", "GBIF": "全球生物多样性出现记录,可用于物种分布与出现点分析。", "OBIS": "海洋生物出现记录与相关元数据,可用于海洋物种分布研究。", "IMARPE": "秘鲁海洋研究所发布的渔业调查、资源评估与技术资料。", "INIDEP": "阿根廷国家渔业研究与发展研究所发布的渔业调查与研究资料。", "NOAA": "美国国家海洋和大气管理局发布的海洋、渔业调查和空间分布资料。", "CCAMLR": "南极海洋生物资源养护委员会发布的区域渔业统计和管理资料。", "Ommastrephidae v2": "柔鱼科 v2 区域业务数据集合,用于承接尚不能可靠归属到单一机构的登陆量、区域统计等文件。", } OCEAN_VARIABLE_NAMES_ZH = { "so": "盐度", "thetao": "海水温度", "uo": "东向流速", "vo": "北向流速", "mlotst": "混合层深度", "zos": "海面高度", "chl": "叶绿素", "no3": "硝酸盐", "nppv": "净初级生产力", "o2": "溶解氧", "po4": "磷酸盐", "si": "硅酸盐", "ph": "酸碱度", "spco2": "海表二氧化碳分压", "msl": "海平面气压", "t2m": "2米气温", "u10": "10米东向风", "v10": "10米北向风", "e": "蒸发", "slhf": "潜热通量", "sshf": "感热通量", "ssrd": "地表太阳辐射", "strd": "地表热辐射", "tp": "总降水", "chlor_a": "叶绿素a", "chlor_a_log10_bias": "叶绿素偏差", "chlor_a_log10_rmsd": "叶绿素均方根差", "total_nobs_sum": "有效观测数", "sst": "海表温度", "anom": "温度距平", "err": "估计误差", "ice": "海冰浓度", } HF_SOURCE_NAMES_ZH = { "WCPFC": "中西部太平洋渔业委员会", "SPRFMO": "南太平洋区域渔业管理组织", "NPFC": "北太平洋渔业委员会", "FAO": "联合国粮农组织", "Sea Around Us": "海洋环绕我们数据库", "RAM Legacy": "RAM 渔业资源评估数据库", "GFW": "全球渔业观察", "VIIRS": "可见光红外成像辐射仪", "IATTC": "美洲热带金枪鱼委员会", "ICCAT": "大西洋金枪鱼养护委员会", "IOTC": "印度洋金枪鱼委员会", "CCSBT": "南方蓝鳍金枪鱼养护委员会", "GBIF": "全球生物多样性信息网络", "OBIS": "海洋生物地理信息系统", "IMARPE": "秘鲁海洋研究所", "INIDEP": "阿根廷国家渔业研究与发展研究所", "NOAA": "美国国家海洋和大气管理局", "CCAMLR": "南极海洋生物资源养护委员会", "Ommastrephidae v2": "柔鱼科区域渔业数据集 v2", } HF_SOURCE_CATEGORIES = { "WCPFC": ("tuna", "金枪鱼区域组织"), "IATTC": ("tuna", "金枪鱼区域组织"), "ICCAT": ("tuna", "金枪鱼区域组织"), "IOTC": ("tuna", "金枪鱼区域组织"), "CCSBT": ("tuna", "金枪鱼区域组织"), "SPRFMO": ("squid", "柔鱼及区域渔业组织"), "NPFC": ("squid", "柔鱼及区域渔业组织"), "FAO": ("general", "综合渔业统计"), "Sea Around Us": ("general", "综合渔业统计"), "RAM Legacy": ("general", "资源评估数据"), "GFW": ("observation", "捕捞活动观测"), "VIIRS": ("observation", "船舶活动遥感观测"), "GBIF": ("general", "生物多样性记录"), "OBIS": ("general", "海洋生物出现记录"), "IMARPE": ("squid", "南美渔业研究机构"), "INIDEP": ("squid", "南美渔业研究机构"), "NOAA": ("observation", "海洋与渔业调查"), "CCAMLR": ("squid", "南极区域渔业组织"), "Ommastrephidae v2": ("squid", "柔鱼区域业务数据"), } EXPECTED_METADATA_FIELDS = ( "time_range", "temporal_resolution", "spatial_resolution", "spatial_coverage", "depth_range", "units", "updated_at", )