Skip to content

Commit 788f268

Browse files
author
dragon-ai-agent
committed
Fix: Use single base metaclass and remove Python 3.9 from CI
Changes: - Changed all enums to use `valuesets_meta:ValueSetEnumDefinition` instead of `ValueSetEnumDefinitionWithStewardship` - Single base metaclass is simpler and cleaner - Stewardship metadata remains via annotations block - Removed Python 3.9 from CI test matrix (EOL) - Updated 6 schema files: GO (3), INSDC (2), Phenopackets (1) - Regenerated Python datamodels All enums now consistently use the same base metaclass while maintaining stewardship annotations where appropriate.
1 parent 0c65ec6 commit 788f268

24 files changed

Lines changed: 1577 additions & 125 deletions

.github/workflows/main.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
runs-on: ubuntu-latest
2020
strategy:
2121
matrix:
22-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
22+
python-version: ["3.10", "3.11", "3.12", "3.13"]
2323
fail-fast: false
2424

2525
steps:

cache/envo/terms.csv

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,4 +46,14 @@ ENVO:00000080,mountain range,2025-11-03T17:34:10.519896
4646
ENVO:01001899,reef,2025-11-03T17:34:10.520210
4747
ENVO:00000264,seamount,2025-11-03T17:34:10.520572
4848
ENVO:00000267,submarine canyon,2025-11-03T17:34:10.520770
49-
ENVO:00000247,volcano,2025-11-03T17:34:10.520956
49+
ENVO:00000247,volcano,2025-11-03T17:34:10.520956ENVO:00002030,aquatic biome,2025-11-25T07:59:01.134445
50+
ENVO:00002229,arenosol,2025-11-25T07:59:01.134917
51+
ENVO:00000134,permafrost,2025-11-25T07:59:01.135208
52+
ENVO:00002269,thermocline,2025-11-25T07:59:01.135467
53+
ENVO:00000133,glacier,2025-11-25T07:59:01.135704
54+
ENVO:00002234,acrisol,2025-11-25T07:59:01.135959
55+
ENVO:00005774,peat soil,2025-11-25T07:59:01.136199
56+
ENVO:00005767,manured soil,2025-11-25T07:59:01.136442
57+
ENVO:00002273,fluvisol,2025-11-25T07:59:01.136678
58+
ENVO:00000873,freshwater biome,2025-11-25T07:59:01.137110
59+
ENVO:00002030,aquatic biome,2025-11-25T08:16:30.607490

cache/ncbitaxon/terms.csv

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -217,3 +217,131 @@ NCBITaxon:920,Acidithiobacillus ferrooxidans,2025-10-19T07:20:50.733817
217217
NCBITaxon:2705,,2025-10-19T07:20:50.734601
218218
NCBITaxon:5061,Aspergillus niger,2025-10-19T07:20:50.735200
219219
NCBITaxon:180,Leptospirillum ferrooxidans,2025-10-19T07:42:42.936346
220+
NCBITaxon:575584,Acinetobacter baumannii ATCC 19606 = CIP 70.34 = JCM 6841,2025-11-25T07:58:49.063394
221+
NCBITaxon:28377,Anolis carolinensis,2025-11-25T07:58:49.064465
222+
NCBITaxon:7165,Anopheles gambiae,2025-11-25T07:58:49.065376
223+
NCBITaxon:224324,Aquifex aeolicus VF5,2025-11-25T07:58:49.066183
224+
NCBITaxon:330879,Aspergillus fumigatus Af293,2025-11-25T07:58:49.067073
225+
NCBITaxon:1392,Bacillus anthracis,2025-11-25T07:58:49.067983
226+
NCBITaxon:226900,Bacillus cereus ATCC 14579,2025-11-25T07:58:49.068706
227+
NCBITaxon:226186,Bacteroides thetaiotaomicron VPI-5482,2025-11-25T07:58:49.069375
228+
NCBITaxon:684364,Batrachochytrium dendrobatidis JAM81,2025-11-25T07:58:49.070006
229+
NCBITaxon:3711,Brassica rapa,2025-11-25T07:58:49.070706
230+
NCBITaxon:15368,Brachypodium distachyon,2025-11-25T07:58:49.071449
231+
NCBITaxon:224911,Bradyrhizobium diazoefficiens USDA 110,2025-11-25T07:58:49.072116
232+
NCBITaxon:7739,Branchiostoma floridae,2025-11-25T07:58:49.072843
233+
NCBITaxon:6238,Caenorhabditis briggsae,2025-11-25T07:58:49.073496
234+
NCBITaxon:192222,Campylobacter jejuni subsp. jejuni NCTC 11168 = ATCC 700819,2025-11-25T07:58:49.074143
235+
NCBITaxon:237561,Candida albicans SC5314,2025-11-25T07:58:49.074796
236+
NCBITaxon:1136231,Candida orthopsilosis Co 90-125,2025-11-25T07:58:49.075428
237+
NCBITaxon:573826,Candida dubliniensis CD36,2025-11-25T07:58:49.076012
238+
NCBITaxon:284593,Nakaseomyces glabratus CBS 138,2025-11-25T07:58:49.076722
239+
NCBITaxon:578454,Candida parapsilosis CDC317,2025-11-25T07:58:49.077472
240+
NCBITaxon:294747,Candida tropicalis MYA-3404,2025-11-25T07:58:49.078175
241+
NCBITaxon:324602,Chloroflexus aurantiacus J-10-fl,2025-11-25T07:58:49.078858
242+
NCBITaxon:272561,Chlamydia trachomatis D/UW-3/CX,2025-11-25T07:58:49.079602
243+
NCBITaxon:7719,Ciona intestinalis,2025-11-25T07:58:49.080086
244+
NCBITaxon:290338,Citrobacter koseri ATCC BAA-895,2025-11-25T07:58:49.080657
245+
NCBITaxon:306902,Clavispora lusitaniae ATCC 42720,2025-11-25T07:58:49.081298
246+
NCBITaxon:441771,Clostridium botulinum A str. Hall,2025-11-25T07:58:49.081986
247+
NCBITaxon:227377,Coxiella burnetii RSA 493,2025-11-25T07:58:49.082551
248+
NCBITaxon:214684,Cryptococcus deneoformans JEC21,2025-11-25T07:58:49.083203
249+
NCBITaxon:6669,Daphnia pulex,2025-11-25T07:58:49.083997
250+
NCBITaxon:284592,Debaryomyces hansenii CBS767,2025-11-25T07:58:49.084428
251+
NCBITaxon:243230,Deinococcus radiodurans R1 = ATCC 13939 = DSM 20539,2025-11-25T07:58:49.085143
252+
NCBITaxon:5786,Dictyostelium purpureum,2025-11-25T07:58:49.085676
253+
NCBITaxon:515635,Dictyoglomus turgidum DSM 6724,2025-11-25T07:58:49.086429
254+
NCBITaxon:83334,Escherichia coli O157:H7,2025-11-25T07:58:49.087039
255+
NCBITaxon:227321,Aspergillus nidulans FGSC A4,2025-11-25T07:58:49.087501
256+
NCBITaxon:565655,Enterococcus casseliflavus EC20,2025-11-25T07:58:49.088032
257+
NCBITaxon:226185,Enterococcus faecalis V583,2025-11-25T07:58:49.088340
258+
NCBITaxon:1353,Enterococcus gallinarum,2025-11-25T07:58:49.088879
259+
NCBITaxon:294381,Entamoeba histolytica HM-1:IMSS,2025-11-25T07:58:49.089530
260+
NCBITaxon:284811,Eremothecium gossypii ATCC 10895,2025-11-25T07:58:49.090373
261+
NCBITaxon:12118,Foot-and-mouth disease virus O,2025-11-25T07:58:49.091008
262+
NCBITaxon:190304,Fusobacterium nucleatum subsp. nucleatum ATCC 25586,2025-11-25T07:58:49.091581
263+
NCBITaxon:243231,Geobacter sulfurreducens PCA,2025-11-25T07:58:49.091903
264+
NCBITaxon:184922,Giardia lamblia ATCC 50803,2025-11-25T07:58:49.092617
265+
NCBITaxon:251221,Gloeobacter violaceus PCC 7421,2025-11-25T07:58:49.093423
266+
NCBITaxon:3635,Gossypium hirsutum,2025-11-25T07:58:49.094083
267+
NCBITaxon:71421,Haemophilus influenzae Rd KW20,2025-11-25T07:58:49.094743
268+
NCBITaxon:272558,Halalkalibacterium halodurans C-125,2025-11-25T07:58:49.095143
269+
NCBITaxon:64091,Halobacterium salinarum NRC-1,2025-11-25T07:58:49.095738
270+
NCBITaxon:928302,Hepatitis B virus C/ayr human/Japan/Okamoto,2025-11-25T07:58:49.096397
271+
NCBITaxon:10360,Human herpesvirus 5 strain AD169,2025-11-25T07:58:49.097196
272+
NCBITaxon:295027,Human herpesvirus 5 strain Merlin,2025-11-25T07:58:49.097940
273+
NCBITaxon:63746,Hepatitis C virus (isolate H77),2025-11-25T07:58:49.098677
274+
NCBITaxon:4232,Helianthus annuus,2025-11-25T07:58:49.099381
275+
NCBITaxon:6412,Helobdella robusta,2025-11-25T07:58:49.100109
276+
NCBITaxon:10299,Human alphaherpesvirus 1 strain 17,2025-11-25T07:58:49.100771
277+
NCBITaxon:112509,Hordeum vulgare subsp. vulgare,2025-11-25T07:58:49.101549
278+
NCBITaxon:333760,Human papillomavirus 16,2025-11-25T07:58:49.102228
279+
NCBITaxon:327105,HIV-1 O_ANT70,2025-11-25T07:58:49.102836
280+
NCBITaxon:6945,Ixodes scapularis,2025-11-25T07:58:49.103438
281+
NCBITaxon:51240,Juglans regia,2025-11-25T07:58:49.103912
282+
NCBITaxon:105231,Klebsormidium nitens,2025-11-25T07:58:49.104542
283+
NCBITaxon:1125630,Klebsiella pneumoniae subsp. pneumoniae HS11286,2025-11-25T07:58:49.105222
284+
NCBITaxon:574,Klebsiella pneumoniae subsp. ozaenae,2025-11-25T07:58:49.105835
285+
NCBITaxon:374847,Candidatus Korarchaeum cryptofilum OPF8,2025-11-25T07:58:49.106446
286+
NCBITaxon:4236,Lactuca sativa,2025-11-25T07:58:49.107041
287+
NCBITaxon:189518,Leptospira interrogans serovar Lai str. 56601,2025-11-25T07:58:49.107789
288+
NCBITaxon:7918,Lepisosteus oculatus,2025-11-25T07:58:49.108404
289+
NCBITaxon:169963,Listeria monocytogenes EGD-e,2025-11-25T07:58:49.109095
290+
NCBITaxon:379508,Lodderomyces elongisporus NRRL YB-4239,2025-11-25T07:58:49.109736
291+
NCBITaxon:3983,Manihot esculenta,2025-11-25T07:58:49.110502
292+
NCBITaxon:3197,Marchantia polymorpha,2025-11-25T07:58:49.111039
293+
NCBITaxon:645098,Measles virus strain Ichinose-B95a,2025-11-25T07:58:49.111673
294+
NCBITaxon:188937,Methanosarcina acetivorans C2A,2025-11-25T07:58:49.112292
295+
NCBITaxon:243232,Methanocaldococcus jannaschii DSM 2661,2025-11-25T07:58:49.112647
296+
NCBITaxon:81824,Monosiga brevicollis,2025-11-25T07:58:49.113261
297+
NCBITaxon:13616,Monodelphis domestica,2025-11-25T07:58:49.114005
298+
NCBITaxon:243273,Mycoplasmoides genitalium G37,2025-11-25T07:58:49.114881
299+
NCBITaxon:5270,Mycosarcoma maydis,2025-11-25T07:58:49.115646
300+
NCBITaxon:272634,Mycoplasmoides pneumoniae M129,2025-11-25T07:58:49.116197
301+
NCBITaxon:419947,Mycobacterium tuberculosis H37Ra,2025-11-25T07:58:49.116818
302+
NCBITaxon:4432,Nelumbo nucifera,2025-11-25T07:58:49.117816
303+
NCBITaxon:45351,Nematostella vectensis,2025-11-25T07:58:49.118616
304+
NCBITaxon:367110,Neurospora crassa OR74A,2025-11-25T07:58:49.119311
305+
NCBITaxon:436308,Nitrosopumilus maritimus SCM1,2025-11-25T07:58:49.119945
306+
NCBITaxon:9258,Ornithorhynchus anatinus,2025-11-25T07:58:49.120565
307+
NCBITaxon:321614,Parastagonospora nodorum SN15,2025-11-25T07:58:49.121253
308+
NCBITaxon:3218,Physcomitrium patens,2025-11-25T07:58:49.121792
309+
NCBITaxon:164328,Phytophthora ramorum,2025-11-25T07:58:49.122596
310+
NCBITaxon:294746,Meyerozyma guilliermondii ATCC 6260,2025-11-25T07:58:49.123078
311+
NCBITaxon:3694,Populus trichocarpa,2025-11-25T07:58:49.123867
312+
NCBITaxon:54126,Pristionchus pacificus,2025-11-25T07:58:49.124618
313+
NCBITaxon:3760,Prunus persica,2025-11-25T07:58:49.125221
314+
NCBITaxon:418459,Puccinia graminis f. sp. tritici CRL 75-36-700-3,2025-11-25T07:58:49.125841
315+
NCBITaxon:178306,Pyrobaculum aerophilum str. IM2,2025-11-25T07:58:49.126579
316+
NCBITaxon:243090,Rhodopirellula baltica SH 1,2025-11-25T07:58:49.127229
317+
NCBITaxon:273057,Saccharolobus solfataricus P2,2025-11-25T07:58:49.127891
318+
NCBITaxon:99287,Salmonella enterica subsp. enterica serovar Typhimurium str. LT2,2025-11-25T07:58:49.128644
319+
NCBITaxon:402676,Schizosaccharomyces japonicus yFS275,2025-11-25T07:58:49.129321
320+
NCBITaxon:665079,Sclerotinia sclerotiorum 1980 UF-70,2025-11-25T07:58:49.130029
321+
NCBITaxon:211586,Shewanella oneidensis MR-1,2025-11-25T07:58:49.130811
322+
NCBITaxon:623,Shigella flexneri,2025-11-25T07:58:49.131448
323+
NCBITaxon:4558,Sorghum bicolor,2025-11-25T07:58:49.132057
324+
NCBITaxon:3562,Spinacia oleracea,2025-11-25T07:58:49.132717
325+
NCBITaxon:1901,Streptomyces clavuligerus,2025-11-25T07:58:49.133461
326+
NCBITaxon:100226,Streptomyces coelicolor A3(2),2025-11-25T07:58:49.134176
327+
NCBITaxon:301447,Streptococcus pyogenes serotype M1,2025-11-25T07:58:49.135049
328+
NCBITaxon:373153,Streptococcus pneumoniae D39,2025-11-25T07:58:49.135791
329+
NCBITaxon:7668,Strongylocentrotus purpuratus,2025-11-25T07:58:49.136320
330+
NCBITaxon:1111708,Synechocystis sp. PCC 6803 substr. Kazusa,2025-11-25T07:58:49.136967
331+
NCBITaxon:35128,Thalassiosira pseudonana,2025-11-25T07:58:49.137483
332+
NCBITaxon:3641,Theobroma cacao,2025-11-25T07:58:49.137980
333+
NCBITaxon:69014,Thermococcus kodakarensis KOD1,2025-11-25T07:58:49.138585
334+
NCBITaxon:243274,Thermotoga maritima MSB8,2025-11-25T07:58:49.138986
335+
NCBITaxon:289376,Thermodesulfovibrio yellowstonii DSM 11347,2025-11-25T07:58:49.139613
336+
NCBITaxon:10228,Trichoplax adhaerens,2025-11-25T07:58:49.140130
337+
NCBITaxon:7070,Tribolium castaneum,2025-11-25T07:58:49.140719
338+
NCBITaxon:412133,Trichomonas vaginalis G3,2025-11-25T07:58:49.141336
339+
NCBITaxon:10254,Vaccinia virus WR,2025-11-25T07:58:49.141954
340+
NCBITaxon:587200,Variola virus human/India/Ind3/1967,2025-11-25T07:58:49.142570
341+
NCBITaxon:243277,Vibrio cholerae O1 biovar El Tor str. N16961,2025-11-25T07:58:49.142992
342+
NCBITaxon:29760,Vitis vinifera,2025-11-25T07:58:49.143594
343+
NCBITaxon:10338,Human herpesvirus 3 strain Dumas,2025-11-25T07:58:49.144182
344+
NCBITaxon:190485,Xanthomonas campestris pv. campestris str. ATCC 33913,2025-11-25T07:58:49.144783
345+
NCBITaxon:284591,Yarrowia lipolytica CLIB122,2025-11-25T07:58:49.145309
346+
NCBITaxon:632,Yersinia pestis,2025-11-25T07:58:49.145944
347+
NCBITaxon:64320,Zika virus,2025-11-25T07:58:49.146541

justfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ clean: _clean_project
7676

7777
# (Re-)Generate project and documentation locally
7878
[group('model development')]
79-
site: gen-project gen-doc
79+
site: gen-project gen-doc gen-slides
8080

8181
# Deploy documentation site to Github Pages
8282
[group('deployment')]

project/jsonschema/valuesets.schema.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5934,7 +5934,7 @@
59345934
"type": "string"
59355935
},
59365936
"PresenceEnum": {
5937-
"description": "",
5937+
"description": "Classification of whether an entity is present, absent, or at detection limits",
59385938
"enum": [
59395939
"PRESENT",
59405940
"ABSENT",
@@ -6689,7 +6689,7 @@
66896689
"type": "string"
66906690
},
66916691
"RelativeTimeEnum": {
6692-
"description": "",
6692+
"description": "Temporal relationships between events or time points",
66936693
"enum": [
66946694
"BEFORE",
66956695
"AFTER",

src/valuesets/datamodel/valuesets.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,16 +55,25 @@ def __contains__(self, key: str) -> bool:
5555
linkml_meta = LinkMLMeta({'default_prefix': 'valuesets', 'description': 'A collection of commonly used value sets', 'id': 'https://w3id.org/linkml/valuesets', 'name': 'valuesets', 'title': 'valuesets'})
5656

5757
class RelativeTimeEnum(RichEnum):
58+
"""
59+
Temporal relationships between events or time points
60+
"""
5861
# Enum members
5962
BEFORE = "BEFORE"
6063
AFTER = "AFTER"
6164
AT_SAME_TIME_AS = "AT_SAME_TIME_AS"
6265

6366
# Set metadata after class creation to avoid it becoming an enum member
6467
RelativeTimeEnum._metadata = {
68+
"BEFORE": {'description': 'Occurs before the reference time point'},
69+
"AFTER": {'description': 'Occurs after the reference time point'},
70+
"AT_SAME_TIME_AS": {'description': 'Occurs at the same time as the reference time point'},
6571
}
6672

6773
class PresenceEnum(RichEnum):
74+
"""
75+
Classification of whether an entity is present, absent, or at detection limits
76+
"""
6877
# Enum members
6978
PRESENT = "PRESENT"
7079
ABSENT = "ABSENT"
@@ -127,8 +136,8 @@ class DataAbsentEnum(RichEnum):
127136
"AS_TEXT": {'description': 'The content of the data is represented in the resource narrative.', 'meaning': 'fhir_data_absent_reason:as-text'},
128137
"ERROR": {'description': 'Some system or workflow process error means that the information is not available.', 'meaning': 'fhir_data_absent_reason:error'},
129138
"NOT_A_NUMBER": {'description': 'The numeric value is undefined or unrepresentable due to a floating point processing error.', 'meaning': 'fhir_data_absent_reason:not-a-number'},
130-
"NEGATIVE_INFINITY": {'description': 'The numeric value is excessively low and unrepresentable due to a floating point processing error.', 'meaning': 'fhir_data_absent_reason:negative-infinity'},
131-
"POSITIVE_INFINITY": {'description': 'The numeric value is excessively high and unrepresentable due to a floating point processing error.', 'meaning': 'fhir_data_absent_reason:positive-infinity'},
139+
"NEGATIVE_INFINITY": {'description': 'The numeric value is excessively low and unrepresentable due to a floating point processing error.', 'meaning': 'fhir_data_absent_reason:negative-infinity'},
140+
"POSITIVE_INFINITY": {'description': 'The numeric value is excessively high and unrepresentable due to a floating point processing error.', 'meaning': 'fhir_data_absent_reason:positive-infinity'},
132141
"NOT_PERFORMED": {'description': 'The value is not available because the observation procedure (test, etc.) was not performed.', 'meaning': 'fhir_data_absent_reason:not-performed'},
133142
"NOT_PERMITTED": {'description': 'The value is not permitted in this context (e.g. due to profiles, or the base data types).', 'meaning': 'fhir_data_absent_reason:not-permitted'},
134143
}

0 commit comments

Comments
 (0)