From 9658c18c09f1d788b1d2216bc3e614ff1b2c786e Mon Sep 17 00:00:00 2001 From: Mark Andrew Miller Date: Mon, 1 Jun 2026 21:49:14 -0400 Subject: [PATCH] fix(iri): collapse doubled version IRI (#436); declare w3id canonical (#435) #436: the generated src/ontology/Makefile still had the pre-#458 URIBASE (https://w3id.org/metpo) and a hardcoded doubled ONTBASE (https://w3id.org/metpo/metpo), so version and product IRIs came out as https://w3id.org/metpo/metpo/releases/... even though metpo-odk.yaml already set uribase: https://w3id.org. Aligned the generated Makefile to odk.yaml (URIBASE=https://w3id.org, ONTBASE=https://w3id.org/metpo) and rebuilt. Version IRIs are now single-metpo (https://w3id.org/metpo/releases/2026-06-02/metpo.owl), products at https://w3id.org/metpo/metpo-{base,full}.owl, main ontology IRI https://w3id.org/metpo.owl. Zero metpo/metpo/ doubling remains. #435: documented https://w3id.org/metpo/ as the only canonical resolution base in the README and explicitly steered users away from http://purl.obolibrary.org/obo/METPO_ PURLs, which 404 because METPO is not registered in the OBO Foundry. (Adopts option 2 from #435; option 1, OBO registration, is out of scope.) Rebuilds all release artifacts. Term IRIs unchanged (https://w3id.org/metpo/). Co-Authored-By: Claude Opus 4.8 --- README.md | 10 ++++++++++ metpo-base.json | 4 ++-- metpo-base.obo | 4 ++-- metpo-base.owl | 8 ++++---- metpo-full.json | 4 ++-- metpo-full.obo | 4 ++-- metpo-full.owl | 8 ++++---- metpo.json | 4 ++-- metpo.obo | 4 ++-- metpo.owl | 8 ++++---- src/ontology/Makefile | 4 ++-- src/ontology/components/metpo_sheet.owl | 6 +++--- 12 files changed, 39 insertions(+), 29 deletions(-) diff --git a/README.md b/README.md index 029a6f74..e263cf34 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,16 @@ METPO releases are available from multiple sources: Editors of this ontology should use the edit version, [src/ontology/metpo-edit.owl](src/ontology/metpo-edit.owl) +## Identifiers and resolution + +The canonical IRI for every METPO term is under the `https://w3id.org/metpo/` namespace, with a bare 7-digit local identifier: + +- Term IRI: `https://w3id.org/metpo/` (e.g. `https://w3id.org/metpo/1000482`) +- The ontology prefix `METPO:` expands to `https://w3id.org/metpo/` +- Ontology document IRI: `https://w3id.org/metpo.owl` (release products and version IRIs live under `https://w3id.org/metpo/`, e.g. `https://w3id.org/metpo/releases//metpo.owl`) + +**Do not use `http://purl.obolibrary.org/obo/METPO_`.** METPO is not registered in the OBO Foundry, so those PURLs do not resolve (HTTP 404) and are not METPO identifiers. `https://w3id.org/` is the only canonical resolution base for METPO. (Term-IRI resolution behavior is still being finalized; see issues #450 and #435.) + ## Contact Please use this GitHub repository's [Issue tracker](https://github.com/berkeleybop/metpo/issues) to request new terms/classes or report errors or specific concerns related to the ontology. diff --git a/metpo-base.json b/metpo-base.json index 5730112e..470922ae 100644 --- a/metpo-base.json +++ b/metpo-base.json @@ -1,6 +1,6 @@ { "graphs" : [ { - "id" : "https://w3id.org/metpo/metpo/metpo-base.json", + "id" : "https://w3id.org/metpo/metpo-base.json", "meta" : { "basicPropertyValues" : [ { "pred" : "http://purl.org/dc/elements/1.1/type", @@ -39,7 +39,7 @@ "pred" : "http://www.w3.org/2002/07/owl#versionInfo", "val" : "2026-06-02" } ], - "version" : "https://w3id.org/metpo/metpo/releases/2026-06-02/metpo-base.json" + "version" : "https://w3id.org/metpo/releases/2026-06-02/metpo-base.json" }, "nodes" : [ { "id" : "http://purl.org/dc/elements/1.1/type", diff --git a/metpo-base.obo b/metpo-base.obo index 1a400b6c..91b3348a 100644 --- a/metpo-base.obo +++ b/metpo-base.obo @@ -1,8 +1,8 @@ format-version: 1.2 -data-version: https://w3id.org/metpo/metpo/releases/2026-06-02/metpo-base.owl +data-version: https://w3id.org/metpo/releases/2026-06-02/metpo-base.owl idspace: dce http://purl.org/dc/elements/1.1/ idspace: dcterms http://purl.org/dc/terms/ -ontology: https://w3id.org/metpo/metpo/metpo-base.owl +ontology: https://w3id.org/metpo/metpo-base.owl property_value: dce:type IAO:8000001 property_value: dcterms:contributor https://orcid.org/0000-0001-9076-6066 property_value: dcterms:creator "METPO Development Team" xsd:string diff --git a/metpo-base.owl b/metpo-base.owl index 4ed9d276..e23b16a6 100644 --- a/metpo-base.owl +++ b/metpo-base.owl @@ -1,6 +1,6 @@ - - - + + METPO Development Team diff --git a/metpo-full.json b/metpo-full.json index e0290724..a996c28e 100644 --- a/metpo-full.json +++ b/metpo-full.json @@ -1,6 +1,6 @@ { "graphs" : [ { - "id" : "https://w3id.org/metpo/metpo/metpo-full.json", + "id" : "https://w3id.org/metpo/metpo-full.json", "meta" : { "basicPropertyValues" : [ { "pred" : "http://purl.org/dc/terms/contributor", @@ -36,7 +36,7 @@ "pred" : "http://www.w3.org/2002/07/owl#versionInfo", "val" : "2026-06-02" } ], - "version" : "https://w3id.org/metpo/metpo/releases/2026-06-02/metpo-full.json" + "version" : "https://w3id.org/metpo/releases/2026-06-02/metpo-full.json" }, "nodes" : [ { "id" : "http://www.geneontology.org/formats/oboInOwl#ObsoleteClass", diff --git a/metpo-full.obo b/metpo-full.obo index ec58748f..97f7e761 100644 --- a/metpo-full.obo +++ b/metpo-full.obo @@ -1,12 +1,12 @@ format-version: 1.2 -data-version: https://w3id.org/metpo/metpo/releases/2026-06-02/metpo-full.owl +data-version: https://w3id.org/metpo/releases/2026-06-02/metpo-full.owl idspace: dce http://purl.org/dc/elements/1.1/ idspace: dcterms http://purl.org/dc/terms/ idspace: metpo https://w3id.org/metpo/ idspace: oboInOwl http://www.geneontology.org/formats/oboInOwl# idspace: qudt http://qudt.org/schema/qudt/ idspace: skos http://www.w3.org/2004/02/skos/core# -ontology: https://w3id.org/metpo/metpo/metpo-full.owl +ontology: https://w3id.org/metpo/metpo-full.owl property_value: dcterms:contributor https://orcid.org/0000-0001-9076-6066 property_value: dcterms:creator "METPO Development Team" xsd:string property_value: dcterms:description "METPO provides standardized terms for the phenotypic traits, growth conditions, metabolic capabilities, and morphology of bacteria and archaea. It integrates heterogeneous microbial trait resources (BactoTraits, BacDive, Madin et al.) and supports knowledge-graph and literature-mining workflows in projects such as KG-Microbe. METPO follows OBO Foundry conventions and reuses terms from PATO, GO, CHEBI, NCBITaxon, and related ontologies where possible." xsd:string diff --git a/metpo-full.owl b/metpo-full.owl index 77c906bc..1333c94b 100644 --- a/metpo-full.owl +++ b/metpo-full.owl @@ -1,6 +1,6 @@ - - - + + METPO Development Team METPO provides standardized terms for the phenotypic traits, growth conditions, metabolic capabilities, and morphology of bacteria and archaea. It integrates heterogeneous microbial trait resources (BactoTraits, BacDive, Madin et al.) and supports knowledge-graph and literature-mining workflows in projects such as KG-Microbe. METPO follows OBO Foundry conventions and reuses terms from PATO, GO, CHEBI, NCBITaxon, and related ontologies where possible. diff --git a/metpo.json b/metpo.json index 2750034e..99813f05 100644 --- a/metpo.json +++ b/metpo.json @@ -1,6 +1,6 @@ { "graphs" : [ { - "id" : "https://w3id.org/metpo/metpo.json", + "id" : "https://w3id.org/metpo.json", "meta" : { "basicPropertyValues" : [ { "pred" : "http://purl.org/dc/terms/contributor", @@ -36,7 +36,7 @@ "pred" : "http://www.w3.org/2002/07/owl#versionInfo", "val" : "2026-06-02" } ], - "version" : "https://w3id.org/metpo/metpo/releases/2026-06-02/metpo.json" + "version" : "https://w3id.org/metpo/releases/2026-06-02/metpo.json" }, "nodes" : [ { "id" : "http://www.geneontology.org/formats/oboInOwl#ObsoleteClass", diff --git a/metpo.obo b/metpo.obo index 9630196c..b7246efa 100644 --- a/metpo.obo +++ b/metpo.obo @@ -1,12 +1,12 @@ format-version: 1.2 -data-version: https://w3id.org/metpo/metpo/releases/2026-06-02/metpo.owl +data-version: https://w3id.org/metpo/releases/2026-06-02/metpo.owl idspace: dce http://purl.org/dc/elements/1.1/ idspace: dcterms http://purl.org/dc/terms/ idspace: metpo https://w3id.org/metpo/ idspace: oboInOwl http://www.geneontology.org/formats/oboInOwl# idspace: qudt http://qudt.org/schema/qudt/ idspace: skos http://www.w3.org/2004/02/skos/core# -ontology: https://w3id.org/metpo/metpo.owl +ontology: https://w3id.org/metpo.owl property_value: dcterms:contributor https://orcid.org/0000-0001-9076-6066 property_value: dcterms:creator "METPO Development Team" xsd:string property_value: dcterms:description "METPO provides standardized terms for the phenotypic traits, growth conditions, metabolic capabilities, and morphology of bacteria and archaea. It integrates heterogeneous microbial trait resources (BactoTraits, BacDive, Madin et al.) and supports knowledge-graph and literature-mining workflows in projects such as KG-Microbe. METPO follows OBO Foundry conventions and reuses terms from PATO, GO, CHEBI, NCBITaxon, and related ontologies where possible." xsd:string diff --git a/metpo.owl b/metpo.owl index 84a81a8e..6064d70a 100644 --- a/metpo.owl +++ b/metpo.owl @@ -1,6 +1,6 @@ - - - + + METPO Development Team METPO provides standardized terms for the phenotypic traits, growth conditions, metabolic capabilities, and morphology of bacteria and archaea. It integrates heterogeneous microbial trait resources (BactoTraits, BacDive, Madin et al.) and supports knowledge-graph and literature-mining workflows in projects such as KG-Microbe. METPO follows OBO Foundry conventions and reuses terms from PATO, GO, CHEBI, NCBITaxon, and related ontologies where possible. diff --git a/src/ontology/Makefile b/src/ontology/Makefile index 1ac1f5ae..4436dfad 100644 --- a/src/ontology/Makefile +++ b/src/ontology/Makefile @@ -19,9 +19,9 @@ CONFIG_HASH= b36e24392153d51eead1fd6d833e68e831bdb46877e7485056d8 # these can be overwritten on the command line OBOBASE= http://purl.obolibrary.org/obo -URIBASE= https://w3id.org/metpo +URIBASE= https://w3id.org ONT= metpo -ONTBASE= https://w3id.org/metpo/metpo +ONTBASE= https://w3id.org/metpo EDIT_FORMAT= owl SRC = $(ONT)-edit.$(EDIT_FORMAT) MAKE_FAST= $(MAKE) IMP=false PAT=false COMP=false MIR=false diff --git a/src/ontology/components/metpo_sheet.owl b/src/ontology/components/metpo_sheet.owl index db8ddd43..be8d9304 100644 --- a/src/ontology/components/metpo_sheet.owl +++ b/src/ontology/components/metpo_sheet.owl @@ -1,4 +1,4 @@ -Prefix(:=) +Prefix(:=) Prefix(owl:=) Prefix(rdf:=) Prefix(xml:=) @@ -6,8 +6,8 @@ Prefix(xsd:=) Prefix(rdfs:=) -Ontology( - +Ontology( + Annotation(owl:versionInfo "2026-06-02") Declaration(Class())