Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Primary JSON and TTL release artefacts get wrong ontology IRI (ONTBASE instead of URIBASE)

クローズ 初心者向け
#53 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@matentzn がすでに取り組んでいます。

2026年10月29日 から。

  • #54 @matentzn による — オープン

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
78/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
領域
build-system

調査の方向性

まず src/incatools/odk/templates/src/ontology/Makefile.jinja2 を確認します。特に、1805〜1815 行付近にある $(ONT).ttl と $(ONT).json の主要ルールを確認し、それらの --ontology-iri 引数を、1555 行付近にある $(ONT).owl のルールと比較します。提示された例 make -n -B omo.json を使って、生成された Makefile を確認します。主要な JSON と TTL のエクスポートが OWL と一貫した正規 IRI ベースを使い、バリアントルールでは既存の IRI が維持されていれば完了です。

索引モデルが issue の本文から書いたものです。

説明

Since the release artefacts section was reformatted, the rules for the primary $(ONT).json and $(ONT).ttl annotate the ontology IRI with $(ONTBASE)/$@ instead of $(URIBASE)/$@. For OBO ontologies that puts the primary JSON/TTL under obo/<id>/<id>.json rather than the canonical obo/<id>.json.

I hit this updating OMO (information-artifact-ontology/ontology-metadata) from v1.6.1 to v1.7. The released omo.json has "id" : "http://purl.obolibrary.org/obo/omo.json"; after the update the next release would ship with http://purl.obolibrary.org/obo/omo/omo.json, which is not the canonical PURL. The $(ONT).owl rule still uses $(URIBASE)/$@, so the primary .owl and .json/.ttl now carry different ontology IRIs. This hits every ODK repo that has json or ttl in export_formats.

The variant rules ($(ONT)-full.json, $(ONT)-base.ttl etc.) were already using $(ONTBASE)/$@ in v1.6.1 and are unchanged. The primary rules used $(URIBASE) and were folded into the variant pattern during the reformat; the commit message says nothing about changing IRIs, so I take this to be a side effect, not a decision. Whether exports should get a format-specific IRI at all is the separate question in INCATools/ontology-development-kit#1366. I compared every --ontology-iri in the 1.6.1 template against the current one: these two rules are the only accidental change.

Examples

v1.6.1:

$(ONT).json: $(ONT).owl
	$(ROBOT) annotate --input $< --ontology-iri $(URIBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) \
		convert --check false -f json -o [email protected] &&\
		mv [email protected] $@

v1.7:

$(ONT).json: $(ONT).owl
	$(ROBOT) annotate --input $< --ontology-iri $(ONTBASE)/$@ \
	         $(ANNOTATE_ONTOLOGY_VERSION) \
	         convert --check false --format json --output $@

$(ONT).ttl changed the same way ($(URIBASE)/$@ → $(ONTBASE)/$@); OMO doesn't export TTL so I only saw the JSON one in practice.

With URIBASE=http://purl.obolibrary.org/obo and ONTBASE=http://purl.obolibrary.org/obo/omo, make -n -B omo.json in OMO gives:

robot --catalog catalog-v001.xml annotate --input omo.owl --ontology-iri http://purl.obolibrary.org/obo/omo/omo.json \
	         annotate --version-iri http://purl.obolibrary.org/obo/omo/releases/2026-10-27/omo.json ...
Artefact v1.6.1 ontology IRI v1.7 ontology IRI
omo.owl http://purl.obolibrary.org/obo/omo.owl http://purl.obolibrary.org/obo/omo.owl
omo.json http://purl.obolibrary.org/obo/omo.json http://purl.obolibrary.org/obo/omo/omo.json
omo-full.json http://purl.obolibrary.org/obo/omo/omo-full.json http://purl.obolibrary.org/obo/omo/omo-full.json

Related

  • Template: src/incatools/odk/templates/src/ontology/Makefile.jinja2, L1805-1808 ($(ONT).ttl) and L1812-1815 ($(ONT).json); the $(ONT).owl rule at L1555 still uses $(URIBASE)
  • Introduced in ac746b7 ("Move and re-format the release artefacts section.")
  • INCATools/ontology-development-kit#1366
主要言語
Jinja
スター
3
フォーク
4
平均マージ
1日 3時間
マージ済み PR(30日)
12

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

INCATools/odkcore のほかの issue

INCATools/odkcore の issue をすべて見る

似ている issue

Build System の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。