diff --git a/poetry.lock b/poetry.lock
index efb6ceeb6..aaba0dfc1 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -5298,46 +5298,46 @@ stats = ["scipy (>=1.3)", "statsmodels (>=0.10)"]
[[package]]
name = "semsimian"
-version = "0.2.13"
+version = "0.2.15"
description = "Sematic similarity calculations for ontologies implemented in Rust."
optional = true
python-versions = ">=3.7"
files = [
- {file = "semsimian-0.2.13-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:0cae647709461a8b32dbe4b8fdf3d0c3af4f159a508fd2761f6f359dbb8a5047"},
- {file = "semsimian-0.2.13-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:37933f826145cb44bfcd3dd550023fd6834c12c7b51e39a5f74255daf9fe1037"},
- {file = "semsimian-0.2.13-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:981da80284bd72c4dcc8c4f5f2c6a5c55f83c59b7b9c5362ffc25a1896c41496"},
- {file = "semsimian-0.2.13-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f69c84b55f53baed192d6d463e07290f4a2c8066666099bc09c425b7ab52bad5"},
- {file = "semsimian-0.2.13-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:fb7573f397f681e660144f2d8caed0dd6f18626519144b142b215f6fea110a4e"},
- {file = "semsimian-0.2.13-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:f47bf27f54b7226f795633366d0217c0cf640bbaf0a21b9e5bd7ee562d5c9a42"},
- {file = "semsimian-0.2.13-cp310-none-win_amd64.whl", hash = "sha256:65157616584f134559090dddd7dd3ce12e7b08782dcd8fd4031b0a59dd52e076"},
- {file = "semsimian-0.2.13-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:9efd16b6306e53a86db94c896970b2466d7b62ee8249d733e4e2eadc25a5aafa"},
- {file = "semsimian-0.2.13-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:74ad10a7bc6f9ee8b65b04725b1aeb6308f4a4fda000409d010b1baa5ef066ae"},
- {file = "semsimian-0.2.13-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dc60f61e3d804257e612a567195309a5d460b5b616a88fb6b167624b665811c1"},
- {file = "semsimian-0.2.13-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:be7dd32221551b568f003cf75cddfd8ed6f5902e0278dc13e0a558599faa3316"},
- {file = "semsimian-0.2.13-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:aac8ccadb190c52f4ea49c72e5a19fbdffce12c074a68aba5f43702059d1ac50"},
- {file = "semsimian-0.2.13-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3a3217f3f8bc19a2d760bb2494ee8536837b8e75d6432b8bc07d0642d8efef51"},
- {file = "semsimian-0.2.13-cp311-none-win_amd64.whl", hash = "sha256:4d3a24d7089f2c1563c027b2bf22a868fe241e9fa32ad6ad80d9977a2bd72de8"},
- {file = "semsimian-0.2.13-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:587b77602403bb80ac8920c0db04880babb868703665bc0d548a7d5d7fe59f19"},
- {file = "semsimian-0.2.13-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:812cf8257a4e77aec036790c33dc1d4abdfdec4424ece71cbadab36625f13b9a"},
- {file = "semsimian-0.2.13-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fff9a04b34b281206815a462177d188f2c6821e22ac3d63353e246a7e4c08f7e"},
- {file = "semsimian-0.2.13-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c2a091f6a1ba54ae3c22bdd557d2fc8a85b37d09a7dde04f420bcb249b82e341"},
- {file = "semsimian-0.2.13-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8c2153761fff03815b9a953a71a15b8444860af801489f2e55bfdd8c5044461c"},
- {file = "semsimian-0.2.13-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:89967703890aa380f2fae7548d1802890edf2f5dec99a1c93f952692e030a4fd"},
- {file = "semsimian-0.2.13-cp312-none-win_amd64.whl", hash = "sha256:6aa60e95a6db252fa7c19c0cb0ed27053e70cedd67516486d8ddfbfd5439b633"},
- {file = "semsimian-0.2.13-cp38-cp38-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:04a43e56a5ffbb32ac83215b86a3a04ae3b0e37002eaa1024a0d18a86247b2ef"},
- {file = "semsimian-0.2.13-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:3bf5cbc9cd08caa55e86bc6b8157e7b1ca1c455647f9ed6c25251f6f84c8041e"},
- {file = "semsimian-0.2.13-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:16b86a3f4bafb357ebb4fe624acbf4c30d0d4e2a565f448a4117333f5cd92766"},
- {file = "semsimian-0.2.13-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f719191a8f21cda9748c7b0ebe1d24f1ca7d273a0cb073390dfee0bff8edc329"},
- {file = "semsimian-0.2.13-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:5ce834fc650b1a5a2a6273e2864973c711f6d19ac3e2075fcbe3cea528c199f2"},
- {file = "semsimian-0.2.13-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:a07e31cb823014a6e1ee5677a108990f163dccbea26741a5bd44546a36e14757"},
- {file = "semsimian-0.2.13-cp38-none-win_amd64.whl", hash = "sha256:0aac7281cb363a6c37efd4e5aed8557dfb3581ce312cb6307044e268fceb726f"},
- {file = "semsimian-0.2.13-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:1536672d9d9cce13f11321be32d2b8472afa7abde4f5de98e5fa7cf21deb60f9"},
- {file = "semsimian-0.2.13-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:31ebb7242291f41207b97a04969f73832a8bc9055025add8d21be9a3cb323f4a"},
- {file = "semsimian-0.2.13-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a0e25ad658c63ff88012d91cdf0496e3abb75138891838b75a2b58dd0044399"},
- {file = "semsimian-0.2.13-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2b78a2433a63643101f5491e6c96be5d2978cbb920551817bb3cb8ebe118618f"},
- {file = "semsimian-0.2.13-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:e09e40663ae3a8e588042081a889e5d731f7d525d255287c264bfba55941e5de"},
- {file = "semsimian-0.2.13-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6fd0fb9a4a2b1f8a8231e5278e6b4b3ca6148c26fe6627caaf3b9f90de62c550"},
- {file = "semsimian-0.2.13-cp39-none-win_amd64.whl", hash = "sha256:e597c45a456512b8260a990c89c00f37aa773bab94de4b4e9826081fe8feacae"},
+ {file = "semsimian-0.2.15-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:7ecdda0c76d85110da83e842be93c5cd4d7093f1fa6ee0c024ae50712c4e2c7b"},
+ {file = "semsimian-0.2.15-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:4e3e302f7d3a456b055d1bde4e6e3a01705353779446b32dd8c01eaf1a88419f"},
+ {file = "semsimian-0.2.15-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:008d85e3ddca6224016e14868b30ca4f489354eac77a0bba3764c1c4e18e7f43"},
+ {file = "semsimian-0.2.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f1397b2a3136afbe86664277116144c2ac463fec333cba0af62fb130965a84fe"},
+ {file = "semsimian-0.2.15-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:f55703fc99121ee86e7f26afc2ec5f7a42e45e16266852aea21df48205270ad2"},
+ {file = "semsimian-0.2.15-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:1799185b18f12755a841c9c38e1b1ced95127cd018007477d9a3cb0c0fed1d02"},
+ {file = "semsimian-0.2.15-cp310-none-win_amd64.whl", hash = "sha256:60c8b794ec15a53f5a1a3d729068f64cb48a349c0e6fc280b5ea7efce23034a2"},
+ {file = "semsimian-0.2.15-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:7f87d78e6a4f649f91450d14af2070e7d93d136640aef9148adbc88b89991980"},
+ {file = "semsimian-0.2.15-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:3bc0a6d82ebd15151a75eaf66ff7be5e69dece0e71c5d586233bae4d5e5d6a05"},
+ {file = "semsimian-0.2.15-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:719759a9b3eedeb4faa7837a8125cecce45dc5699dd66dda4673bfae8173ffce"},
+ {file = "semsimian-0.2.15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1afeeae6b5c606da1a51d46faf13521bd721dba5eb9e5dbec7be15088a99e823"},
+ {file = "semsimian-0.2.15-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:007ed1751dc06d3fecd76e7184bd5f364736516ed095babd4b68a843f15aa1a8"},
+ {file = "semsimian-0.2.15-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:2f844f76d8d8a5c7f824440aad75626e3f16c245a7019066dbc5d0cd81225237"},
+ {file = "semsimian-0.2.15-cp311-none-win_amd64.whl", hash = "sha256:9c846bb6bdaef42451412b4fc5b6be2e696692f8f43da2dd0bf833070115c054"},
+ {file = "semsimian-0.2.15-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:139cf0a4f38d34e0a93222278c3fa270e96977b2bf9aa11d8851d7cfd7dd6c4e"},
+ {file = "semsimian-0.2.15-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:74f6283e773913697186f44e21868c720339bae201debfced85a7e0c3f1cbcc8"},
+ {file = "semsimian-0.2.15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d91d095a7dca4a5616edd8873ba7c843d1f0d66c8a9b72fb5f6c52c0152af84"},
+ {file = "semsimian-0.2.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:336f373981d1a052815c18c84ddfc222e79919b17a1de9f74c286e059a8baeca"},
+ {file = "semsimian-0.2.15-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:119e31772b7698ea4cec7df003c09c78399db8a7a373a77bae8a3fca9b6b69a5"},
+ {file = "semsimian-0.2.15-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:76525a68656c96cc78501dd2659751760c41596523299301cc7e7d24d08bd5f2"},
+ {file = "semsimian-0.2.15-cp312-none-win_amd64.whl", hash = "sha256:921b11acce6c6bfa33c0b9e250ded0493c040e3dea1d480b3c2cf5170a1f0cee"},
+ {file = "semsimian-0.2.15-cp38-cp38-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:81d91cc009b58c602840677549727a9b0c9802c353f9849599a510c756ca5ab2"},
+ {file = "semsimian-0.2.15-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:375818b9159fddcd6031cd1cdf806676c1b688dd683c753e885074c03351294a"},
+ {file = "semsimian-0.2.15-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0a3e45d9408ab0f060cf213f912d9a55b7df2168aa754ab7e777d9a1505079f"},
+ {file = "semsimian-0.2.15-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a22612a59ef1865883a7feff52accdbcf8951b0b3d50e3fbe33419b3157fde34"},
+ {file = "semsimian-0.2.15-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:5fdda8cb5b694153b1665f7539c73227d8545f93b176286b68965696c7d8115b"},
+ {file = "semsimian-0.2.15-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:c6d00e0c1a8034ee9dd634869a7fc53b88759da154cb3df05aac532a0e647d8c"},
+ {file = "semsimian-0.2.15-cp38-none-win_amd64.whl", hash = "sha256:41d94ed2c36129c22048213c56722373d2e8e3f7e6a8fdc6d6fd78124caa4d91"},
+ {file = "semsimian-0.2.15-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:468456dd56150e2ef858864f547f545e807db2280372382493fe19bd756ab4f3"},
+ {file = "semsimian-0.2.15-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:74609f766bb62a95e1e97d99fb0929bb67a5d3a9f4af3cce295bbf0c6aa83f31"},
+ {file = "semsimian-0.2.15-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2a07dd055f2ede32adb0a4614ef3913f163b4856631b7d362242ddcc20b57333"},
+ {file = "semsimian-0.2.15-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b0019d6af552d69ccd7395783d8f3c7fb7ba564e1a1101317c6cb5827e7c6c62"},
+ {file = "semsimian-0.2.15-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:b0cccdbc5a5b1b75aa6f8789251a00bfcdceb52e15b6b297c27d3247e366ae77"},
+ {file = "semsimian-0.2.15-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:b0f99eb1e193c43e796792734eace9e3ce25b915d42d3fb83661524ef0adc36d"},
+ {file = "semsimian-0.2.15-cp39-none-win_amd64.whl", hash = "sha256:aaaa6334e53fff8dc44470d4dd1f4fc61ef804cd4cb43d7bf4c5897a1d59174f"},
]
[[package]]
@@ -6563,4 +6563,4 @@ semsimian = ["semsimian"]
[metadata]
lock-version = "2.0"
python-versions = ">=3.9,<4.0.0"
-content-hash = "4741a5db8b062457de5bc6ea86107f2a816cfa25f4bf29d4cee1cd9a66cb120d"
+content-hash = "1a7d5a135ecd6016d915620c07c4094acd2fc55b0a0e6d90db22d59953ceb16f"
diff --git a/pyproject.toml b/pyproject.toml
index 86d8b1992..de91464e4 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -23,7 +23,7 @@ kgcl-schema = "^0.6.5"
funowl = ">=0.2.0"
gilda = {version = ">=1.0.0", optional = true}
-semsimian = {version = ">=0.1.0", optional = true}
+semsimian = {version = ">=0.2.15", optional = true}
kgcl-rdflib = "0.5.0"
llm = {version = "*", optional = true}
aiohttp = {version = "*", optional = true}
diff --git a/tests/test_implementations/test_bioportal.py b/tests/test_implementations/test_bioportal.py
index 2b2ebf7d1..2b6eba82b 100644
--- a/tests/test_implementations/test_bioportal.py
+++ b/tests/test_implementations/test_bioportal.py
@@ -1,6 +1,7 @@
import itertools
import logging
import unittest
+from unittest import mock
from linkml_runtime.dumpers import yaml_dumper
from oaklib.implementations.ontoportal.bioportal_implementation import (
@@ -75,11 +76,35 @@ def test_ontology_versions(self):
self.assertIn("5.0.0", versions)
self.assertIn("v3.2.1", versions)
- def test_ontology_metadata(self):
+ @mock.patch("oaklib.implementations.ontoportal.bioportal_implementation.BioPortalImplementation")
+ def test_ontology_metadata(self, mock_impl):
+ mock_impl.return_value = {
+ "id": "OBI",
+ "title": "Ontology for Biomedical Investigations",
+ "hasOntologyLanguage": "OWL",
+ "released": "2024-01-22T18:11:12-08:00",
+ "creationDate": "2024-01-22T18:11:18-08:00",
+ "homepage": "http://purl.obolibrary.org/obo/obi",
+ "publication": "http://purl.obolibrary.org/obo/obi/Technical_Reports",
+ "documentation": "http://purl.obolibrary.org/obo/obi/wiki",
+ "version": "2024-01-09",
+ "description": 'OBI is an ontology of investigations, the protocols and instrumentation used,\
+ the material used, the data generated and the types of analysis performed on it.\
+
\r\nTo import,
\r\nLatest version:\
+ http://purl.obolibrary.org/obo/obi.owl
\
+ \r\n
\r\nLatest release notes at \
+ http://purl.obolibrary.org/obo/obi/release-notes.html
\r\n
\r\nNote: BFO 2.0 pre-Graz\
+ release (not official release version) was used in this release.',
+ "status": "production",
+ "submissionId": 53,
+ "submission_uri": "https://data.bioontology.org/ontologies/OBI/submissions/53",
+ "type": "http://data.bioontology.org/metadata/OntologySubmission",
+ }
metadata = self.impl.ontology_metadata_map("OBI")
self.assertIn("title", metadata)
self.assertEqual(metadata["title"], "Ontology for Biomedical Investigations")
self.assertIn("homepage", metadata)
self.assertEqual(metadata["homepage"], "http://purl.obolibrary.org/obo/obi")
- self.assertIn("classes", metadata)
- self.assertIsInstance(metadata["classes"], int)
+ # ! The following test is commented out because the metadata does not have the "classes" fields any more.
+ # self.assertIn("classes", metadata)
+ # self.assertIsInstance(metadata["classes"], int)