diff --git a/poetry.lock b/poetry.lock
index ddfe104..cefe9c0 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -1,4 +1,4 @@
-# This file is automatically @generated by Poetry 1.5.1 and should not be changed by hand.
+# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand.
[[package]]
name = "annotated-types"
@@ -463,13 +463,13 @@ grpcio-gcp = ["grpcio-gcp (>=0.2.2,<1.0.dev0)"]
[[package]]
name = "google-api-python-client"
-version = "2.126.0"
+version = "2.127.0"
description = "Google API Client Library for Python"
optional = false
python-versions = ">=3.7"
files = [
- {file = "google-api-python-client-2.126.0.tar.gz", hash = "sha256:97c0410630e2bebd194d99e91bd620dab5bc6b6ec0bf033f9a9109b700b83acb"},
- {file = "google_api_python_client-2.126.0-py2.py3-none-any.whl", hash = "sha256:299255fdb8dddf4eb96ab99e8358991160900b4109a9e0d3e3ac127c04b1e2ee"},
+ {file = "google-api-python-client-2.127.0.tar.gz", hash = "sha256:bbb51b0fbccdf40e536c26341e372d7800f09afebb53103bbcc94e08f14b523b"},
+ {file = "google_api_python_client-2.127.0-py2.py3-none-any.whl", hash = "sha256:d01c70c7840ec37888aa02b1aea5d9baba4c1701e268d1a0251640afd56e5e90"},
]
[package.dependencies]
@@ -1421,18 +1421,19 @@ files = [
[[package]]
name = "platformdirs"
-version = "4.2.0"
-description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
+version = "4.2.1"
+description = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`."
optional = false
python-versions = ">=3.8"
files = [
- {file = "platformdirs-4.2.0-py3-none-any.whl", hash = "sha256:0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"},
- {file = "platformdirs-4.2.0.tar.gz", hash = "sha256:ef0cc731df711022c174543cb70a9b5bd22e5a9337c8624ef2c2ceb8ddad8768"},
+ {file = "platformdirs-4.2.1-py3-none-any.whl", hash = "sha256:17d5a1161b3fd67b390023cb2d3b026bbd40abde6fdb052dfbd3a29c3ba22ee1"},
+ {file = "platformdirs-4.2.1.tar.gz", hash = "sha256:031cd18d4ec63ec53e82dceaac0417d218a6863f7745dfcc9efe7793b7039bdf"},
]
[package.extras]
docs = ["furo (>=2023.9.10)", "proselint (>=0.13)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.25.2)"]
test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)"]
+type = ["mypy (>=1.8)"]
[[package]]
name = "pluggy"
@@ -1556,18 +1557,18 @@ pyasn1 = ">=0.4.6,<0.7.0"
[[package]]
name = "pydantic"
-version = "2.7.0"
+version = "2.7.1"
description = "Data validation using Python type hints"
optional = false
python-versions = ">=3.8"
files = [
- {file = "pydantic-2.7.0-py3-none-any.whl", hash = "sha256:9dee74a271705f14f9a1567671d144a851c675b072736f0a7b2608fd9e495352"},
- {file = "pydantic-2.7.0.tar.gz", hash = "sha256:b5ecdd42262ca2462e2624793551e80911a1e989f462910bb81aef974b4bb383"},
+ {file = "pydantic-2.7.1-py3-none-any.whl", hash = "sha256:e029badca45266732a9a79898a15ae2e8b14840b1eabbb25844be28f0b33f3d5"},
+ {file = "pydantic-2.7.1.tar.gz", hash = "sha256:e9dbb5eada8abe4d9ae5f46b9939aead650cd2b68f249bb3a8139dbe125803cc"},
]
[package.dependencies]
annotated-types = ">=0.4.0"
-pydantic-core = "2.18.1"
+pydantic-core = "2.18.2"
typing-extensions = ">=4.6.1"
[package.extras]
@@ -1575,90 +1576,90 @@ email = ["email-validator (>=2.0.0)"]
[[package]]
name = "pydantic-core"
-version = "2.18.1"
+version = "2.18.2"
description = "Core functionality for Pydantic validation and serialization"
optional = false
python-versions = ">=3.8"
files = [
- {file = "pydantic_core-2.18.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:ee9cf33e7fe14243f5ca6977658eb7d1042caaa66847daacbd2117adb258b226"},
- {file = "pydantic_core-2.18.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6b7bbb97d82659ac8b37450c60ff2e9f97e4eb0f8a8a3645a5568b9334b08b50"},
- {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df4249b579e75094f7e9bb4bd28231acf55e308bf686b952f43100a5a0be394c"},
- {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d0491006a6ad20507aec2be72e7831a42efc93193d2402018007ff827dc62926"},
- {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2ae80f72bb7a3e397ab37b53a2b49c62cc5496412e71bc4f1277620a7ce3f52b"},
- {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:58aca931bef83217fca7a390e0486ae327c4af9c3e941adb75f8772f8eeb03a1"},
- {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1be91ad664fc9245404a789d60cba1e91c26b1454ba136d2a1bf0c2ac0c0505a"},
- {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:667880321e916a8920ef49f5d50e7983792cf59f3b6079f3c9dac2b88a311d17"},
- {file = "pydantic_core-2.18.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f7054fdc556f5421f01e39cbb767d5ec5c1139ea98c3e5b350e02e62201740c7"},
- {file = "pydantic_core-2.18.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:030e4f9516f9947f38179249778709a460a3adb516bf39b5eb9066fcfe43d0e6"},
- {file = "pydantic_core-2.18.1-cp310-none-win32.whl", hash = "sha256:2e91711e36e229978d92642bfc3546333a9127ecebb3f2761372e096395fc649"},
- {file = "pydantic_core-2.18.1-cp310-none-win_amd64.whl", hash = "sha256:9a29726f91c6cb390b3c2338f0df5cd3e216ad7a938762d11c994bb37552edb0"},
- {file = "pydantic_core-2.18.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:9ece8a49696669d483d206b4474c367852c44815fca23ac4e48b72b339807f80"},
- {file = "pydantic_core-2.18.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7a5d83efc109ceddb99abd2c1316298ced2adb4570410defe766851a804fcd5b"},
- {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f7973c381283783cd1043a8c8f61ea5ce7a3a58b0369f0ee0ee975eaf2f2a1b"},
- {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:54c7375c62190a7845091f521add19b0f026bcf6ae674bdb89f296972272e86d"},
- {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dd63cec4e26e790b70544ae5cc48d11b515b09e05fdd5eff12e3195f54b8a586"},
- {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:561cf62c8a3498406495cfc49eee086ed2bb186d08bcc65812b75fda42c38294"},
- {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:68717c38a68e37af87c4da20e08f3e27d7e4212e99e96c3d875fbf3f4812abfc"},
- {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2d5728e93d28a3c63ee513d9ffbac9c5989de8c76e049dbcb5bfe4b923a9739d"},
- {file = "pydantic_core-2.18.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f0f17814c505f07806e22b28856c59ac80cee7dd0fbb152aed273e116378f519"},
- {file = "pydantic_core-2.18.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d816f44a51ba5175394bc6c7879ca0bd2be560b2c9e9f3411ef3a4cbe644c2e9"},
- {file = "pydantic_core-2.18.1-cp311-none-win32.whl", hash = "sha256:09f03dfc0ef8c22622eaa8608caa4a1e189cfb83ce847045eca34f690895eccb"},
- {file = "pydantic_core-2.18.1-cp311-none-win_amd64.whl", hash = "sha256:27f1009dc292f3b7ca77feb3571c537276b9aad5dd4efb471ac88a8bd09024e9"},
- {file = "pydantic_core-2.18.1-cp311-none-win_arm64.whl", hash = "sha256:48dd883db92e92519201f2b01cafa881e5f7125666141a49ffba8b9facc072b0"},
- {file = "pydantic_core-2.18.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:b6b0e4912030c6f28bcb72b9ebe4989d6dc2eebcd2a9cdc35fefc38052dd4fe8"},
- {file = "pydantic_core-2.18.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f3202a429fe825b699c57892d4371c74cc3456d8d71b7f35d6028c96dfecad31"},
- {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a3982b0a32d0a88b3907e4b0dc36809fda477f0757c59a505d4e9b455f384b8b"},
- {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:25595ac311f20e5324d1941909b0d12933f1fd2171075fcff763e90f43e92a0d"},
- {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:14fe73881cf8e4cbdaded8ca0aa671635b597e42447fec7060d0868b52d074e6"},
- {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ca976884ce34070799e4dfc6fbd68cb1d181db1eefe4a3a94798ddfb34b8867f"},
- {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:684d840d2c9ec5de9cb397fcb3f36d5ebb6fa0d94734f9886032dd796c1ead06"},
- {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:54764c083bbe0264f0f746cefcded6cb08fbbaaf1ad1d78fb8a4c30cff999a90"},
- {file = "pydantic_core-2.18.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:201713f2f462e5c015b343e86e68bd8a530a4f76609b33d8f0ec65d2b921712a"},
- {file = "pydantic_core-2.18.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fd1a9edb9dd9d79fbeac1ea1f9a8dd527a6113b18d2e9bcc0d541d308dae639b"},
- {file = "pydantic_core-2.18.1-cp312-none-win32.whl", hash = "sha256:d5e6b7155b8197b329dc787356cfd2684c9d6a6b1a197f6bbf45f5555a98d411"},
- {file = "pydantic_core-2.18.1-cp312-none-win_amd64.whl", hash = "sha256:9376d83d686ec62e8b19c0ac3bf8d28d8a5981d0df290196fb6ef24d8a26f0d6"},
- {file = "pydantic_core-2.18.1-cp312-none-win_arm64.whl", hash = "sha256:c562b49c96906b4029b5685075fe1ebd3b5cc2601dfa0b9e16c2c09d6cbce048"},
- {file = "pydantic_core-2.18.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:3e352f0191d99fe617371096845070dee295444979efb8f27ad941227de6ad09"},
- {file = "pydantic_core-2.18.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c0295d52b012cbe0d3059b1dba99159c3be55e632aae1999ab74ae2bd86a33d7"},
- {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56823a92075780582d1ffd4489a2e61d56fd3ebb4b40b713d63f96dd92d28144"},
- {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:dd3f79e17b56741b5177bcc36307750d50ea0698df6aa82f69c7db32d968c1c2"},
- {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:38a5024de321d672a132b1834a66eeb7931959c59964b777e8f32dbe9523f6b1"},
- {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d2ce426ee691319d4767748c8e0895cfc56593d725594e415f274059bcf3cb76"},
- {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2adaeea59849ec0939af5c5d476935f2bab4b7f0335b0110f0f069a41024278e"},
- {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9b6431559676a1079eac0f52d6d0721fb8e3c5ba43c37bc537c8c83724031feb"},
- {file = "pydantic_core-2.18.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:85233abb44bc18d16e72dc05bf13848a36f363f83757541f1a97db2f8d58cfd9"},
- {file = "pydantic_core-2.18.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:641a018af4fe48be57a2b3d7a1f0f5dbca07c1d00951d3d7463f0ac9dac66622"},
- {file = "pydantic_core-2.18.1-cp38-none-win32.whl", hash = "sha256:63d7523cd95d2fde0d28dc42968ac731b5bb1e516cc56b93a50ab293f4daeaad"},
- {file = "pydantic_core-2.18.1-cp38-none-win_amd64.whl", hash = "sha256:907a4d7720abfcb1c81619863efd47c8a85d26a257a2dbebdb87c3b847df0278"},
- {file = "pydantic_core-2.18.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:aad17e462f42ddbef5984d70c40bfc4146c322a2da79715932cd8976317054de"},
- {file = "pydantic_core-2.18.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:94b9769ba435b598b547c762184bcfc4783d0d4c7771b04a3b45775c3589ca44"},
- {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:80e0e57cc704a52fb1b48f16d5b2c8818da087dbee6f98d9bf19546930dc64b5"},
- {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:76b86e24039c35280ceee6dce7e62945eb93a5175d43689ba98360ab31eebc4a"},
- {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:12a05db5013ec0ca4a32cc6433f53faa2a014ec364031408540ba858c2172bb0"},
- {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:250ae39445cb5475e483a36b1061af1bc233de3e9ad0f4f76a71b66231b07f88"},
- {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a32204489259786a923e02990249c65b0f17235073149d0033efcebe80095570"},
- {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6395a4435fa26519fd96fdccb77e9d00ddae9dd6c742309bd0b5610609ad7fb2"},
- {file = "pydantic_core-2.18.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:2533ad2883f001efa72f3d0e733fb846710c3af6dcdd544fe5bf14fa5fe2d7db"},
- {file = "pydantic_core-2.18.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b560b72ed4816aee52783c66854d96157fd8175631f01ef58e894cc57c84f0f6"},
- {file = "pydantic_core-2.18.1-cp39-none-win32.whl", hash = "sha256:582cf2cead97c9e382a7f4d3b744cf0ef1a6e815e44d3aa81af3ad98762f5a9b"},
- {file = "pydantic_core-2.18.1-cp39-none-win_amd64.whl", hash = "sha256:ca71d501629d1fa50ea7fa3b08ba884fe10cefc559f5c6c8dfe9036c16e8ae89"},
- {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e178e5b66a06ec5bf51668ec0d4ac8cfb2bdcb553b2c207d58148340efd00143"},
- {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:72722ce529a76a4637a60be18bd789d8fb871e84472490ed7ddff62d5fed620d"},
- {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2fe0c1ce5b129455e43f941f7a46f61f3d3861e571f2905d55cdbb8b5c6f5e2c"},
- {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d4284c621f06a72ce2cb55f74ea3150113d926a6eb78ab38340c08f770eb9b4d"},
- {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1a0c3e718f4e064efde68092d9d974e39572c14e56726ecfaeebbe6544521f47"},
- {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:2027493cc44c23b598cfaf200936110433d9caa84e2c6cf487a83999638a96ac"},
- {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:76909849d1a6bffa5a07742294f3fa1d357dc917cb1fe7b470afbc3a7579d539"},
- {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:ee7ccc7fb7e921d767f853b47814c3048c7de536663e82fbc37f5eb0d532224b"},
- {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ee2794111c188548a4547eccc73a6a8527fe2af6cf25e1a4ebda2fd01cdd2e60"},
- {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:a139fe9f298dc097349fb4f28c8b81cc7a202dbfba66af0e14be5cfca4ef7ce5"},
- {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d074b07a10c391fc5bbdcb37b2f16f20fcd9e51e10d01652ab298c0d07908ee2"},
- {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c69567ddbac186e8c0aadc1f324a60a564cfe25e43ef2ce81bcc4b8c3abffbae"},
- {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:baf1c7b78cddb5af00971ad5294a4583188bda1495b13760d9f03c9483bb6203"},
- {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:2684a94fdfd1b146ff10689c6e4e815f6a01141781c493b97342cdc5b06f4d5d"},
- {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:73c1bc8a86a5c9e8721a088df234265317692d0b5cd9e86e975ce3bc3db62a59"},
- {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:e60defc3c15defb70bb38dd605ff7e0fae5f6c9c7cbfe0ad7868582cb7e844a6"},
- {file = "pydantic_core-2.18.1.tar.gz", hash = "sha256:de9d3e8717560eb05e28739d1b35e4eac2e458553a52a301e51352a7ffc86a35"},
+ {file = "pydantic_core-2.18.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:9e08e867b306f525802df7cd16c44ff5ebbe747ff0ca6cf3fde7f36c05a59a81"},
+ {file = "pydantic_core-2.18.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f0a21cbaa69900cbe1a2e7cad2aa74ac3cf21b10c3efb0fa0b80305274c0e8a2"},
+ {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0680b1f1f11fda801397de52c36ce38ef1c1dc841a0927a94f226dea29c3ae3d"},
+ {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:95b9d5e72481d3780ba3442eac863eae92ae43a5f3adb5b4d0a1de89d42bb250"},
+ {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c4fcf5cd9c4b655ad666ca332b9a081112cd7a58a8b5a6ca7a3104bc950f2038"},
+ {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b5155ff768083cb1d62f3e143b49a8a3432e6789a3abee8acd005c3c7af1c74"},
+ {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:553ef617b6836fc7e4df130bb851e32fe357ce36336d897fd6646d6058d980af"},
+ {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b89ed9eb7d616ef5714e5590e6cf7f23b02d0d539767d33561e3675d6f9e3857"},
+ {file = "pydantic_core-2.18.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:75f7e9488238e920ab6204399ded280dc4c307d034f3924cd7f90a38b1829563"},
+ {file = "pydantic_core-2.18.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ef26c9e94a8c04a1b2924149a9cb081836913818e55681722d7f29af88fe7b38"},
+ {file = "pydantic_core-2.18.2-cp310-none-win32.whl", hash = "sha256:182245ff6b0039e82b6bb585ed55a64d7c81c560715d1bad0cbad6dfa07b4027"},
+ {file = "pydantic_core-2.18.2-cp310-none-win_amd64.whl", hash = "sha256:e23ec367a948b6d812301afc1b13f8094ab7b2c280af66ef450efc357d2ae543"},
+ {file = "pydantic_core-2.18.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:219da3f096d50a157f33645a1cf31c0ad1fe829a92181dd1311022f986e5fbe3"},
+ {file = "pydantic_core-2.18.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:cc1cfd88a64e012b74e94cd00bbe0f9c6df57049c97f02bb07d39e9c852e19a4"},
+ {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05b7133a6e6aeb8df37d6f413f7705a37ab4031597f64ab56384c94d98fa0e90"},
+ {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:224c421235f6102e8737032483f43c1a8cfb1d2f45740c44166219599358c2cd"},
+ {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b14d82cdb934e99dda6d9d60dc84a24379820176cc4a0d123f88df319ae9c150"},
+ {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2728b01246a3bba6de144f9e3115b532ee44bd6cf39795194fb75491824a1413"},
+ {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:470b94480bb5ee929f5acba6995251ada5e059a5ef3e0dfc63cca287283ebfa6"},
+ {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:997abc4df705d1295a42f95b4eec4950a37ad8ae46d913caeee117b6b198811c"},
+ {file = "pydantic_core-2.18.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:75250dbc5290e3f1a0f4618db35e51a165186f9034eff158f3d490b3fed9f8a0"},
+ {file = "pydantic_core-2.18.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:4456f2dca97c425231d7315737d45239b2b51a50dc2b6f0c2bb181fce6207664"},
+ {file = "pydantic_core-2.18.2-cp311-none-win32.whl", hash = "sha256:269322dcc3d8bdb69f054681edff86276b2ff972447863cf34c8b860f5188e2e"},
+ {file = "pydantic_core-2.18.2-cp311-none-win_amd64.whl", hash = "sha256:800d60565aec896f25bc3cfa56d2277d52d5182af08162f7954f938c06dc4ee3"},
+ {file = "pydantic_core-2.18.2-cp311-none-win_arm64.whl", hash = "sha256:1404c69d6a676245199767ba4f633cce5f4ad4181f9d0ccb0577e1f66cf4c46d"},
+ {file = "pydantic_core-2.18.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:fb2bd7be70c0fe4dfd32c951bc813d9fe6ebcbfdd15a07527796c8204bd36242"},
+ {file = "pydantic_core-2.18.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6132dd3bd52838acddca05a72aafb6eab6536aa145e923bb50f45e78b7251043"},
+ {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7d904828195733c183d20a54230c0df0eb46ec746ea1a666730787353e87182"},
+ {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c9bd70772c720142be1020eac55f8143a34ec9f82d75a8e7a07852023e46617f"},
+ {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2b8ed04b3582771764538f7ee7001b02e1170223cf9b75dff0bc698fadb00cf3"},
+ {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e6dac87ddb34aaec85f873d737e9d06a3555a1cc1a8e0c44b7f8d5daeb89d86f"},
+ {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ca4ae5a27ad7a4ee5170aebce1574b375de390bc01284f87b18d43a3984df72"},
+ {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:886eec03591b7cf058467a70a87733b35f44707bd86cf64a615584fd72488b7c"},
+ {file = "pydantic_core-2.18.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ca7b0c1f1c983e064caa85f3792dd2fe3526b3505378874afa84baf662e12241"},
+ {file = "pydantic_core-2.18.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4b4356d3538c3649337df4074e81b85f0616b79731fe22dd11b99499b2ebbdf3"},
+ {file = "pydantic_core-2.18.2-cp312-none-win32.whl", hash = "sha256:8b172601454f2d7701121bbec3425dd71efcb787a027edf49724c9cefc14c038"},
+ {file = "pydantic_core-2.18.2-cp312-none-win_amd64.whl", hash = "sha256:b1bd7e47b1558ea872bd16c8502c414f9e90dcf12f1395129d7bb42a09a95438"},
+ {file = "pydantic_core-2.18.2-cp312-none-win_arm64.whl", hash = "sha256:98758d627ff397e752bc339272c14c98199c613f922d4a384ddc07526c86a2ec"},
+ {file = "pydantic_core-2.18.2-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:9fdad8e35f278b2c3eb77cbdc5c0a49dada440657bf738d6905ce106dc1de439"},
+ {file = "pydantic_core-2.18.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1d90c3265ae107f91a4f279f4d6f6f1d4907ac76c6868b27dc7fb33688cfb347"},
+ {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:390193c770399861d8df9670fb0d1874f330c79caaca4642332df7c682bf6b91"},
+ {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:82d5d4d78e4448683cb467897fe24e2b74bb7b973a541ea1dcfec1d3cbce39fb"},
+ {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4774f3184d2ef3e14e8693194f661dea5a4d6ca4e3dc8e39786d33a94865cefd"},
+ {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d4d938ec0adf5167cb335acb25a4ee69a8107e4984f8fbd2e897021d9e4ca21b"},
+ {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e0e8b1be28239fc64a88a8189d1df7fad8be8c1ae47fcc33e43d4be15f99cc70"},
+ {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:868649da93e5a3d5eacc2b5b3b9235c98ccdbfd443832f31e075f54419e1b96b"},
+ {file = "pydantic_core-2.18.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:78363590ef93d5d226ba21a90a03ea89a20738ee5b7da83d771d283fd8a56761"},
+ {file = "pydantic_core-2.18.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:852e966fbd035a6468fc0a3496589b45e2208ec7ca95c26470a54daed82a0788"},
+ {file = "pydantic_core-2.18.2-cp38-none-win32.whl", hash = "sha256:6a46e22a707e7ad4484ac9ee9f290f9d501df45954184e23fc29408dfad61350"},
+ {file = "pydantic_core-2.18.2-cp38-none-win_amd64.whl", hash = "sha256:d91cb5ea8b11607cc757675051f61b3d93f15eca3cefb3e6c704a5d6e8440f4e"},
+ {file = "pydantic_core-2.18.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:ae0a8a797a5e56c053610fa7be147993fe50960fa43609ff2a9552b0e07013e8"},
+ {file = "pydantic_core-2.18.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:042473b6280246b1dbf530559246f6842b56119c2926d1e52b631bdc46075f2a"},
+ {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a388a77e629b9ec814c1b1e6b3b595fe521d2cdc625fcca26fbc2d44c816804"},
+ {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e25add29b8f3b233ae90ccef2d902d0ae0432eb0d45370fe315d1a5cf231004b"},
+ {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f459a5ce8434614dfd39bbebf1041952ae01da6bed9855008cb33b875cb024c0"},
+ {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eff2de745698eb46eeb51193a9f41d67d834d50e424aef27df2fcdee1b153845"},
+ {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8309f67285bdfe65c372ea3722b7a5642680f3dba538566340a9d36e920b5f0"},
+ {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f93a8a2e3938ff656a7c1bc57193b1319960ac015b6e87d76c76bf14fe0244b4"},
+ {file = "pydantic_core-2.18.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:22057013c8c1e272eb8d0eebc796701167d8377441ec894a8fed1af64a0bf399"},
+ {file = "pydantic_core-2.18.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:cfeecd1ac6cc1fb2692c3d5110781c965aabd4ec5d32799773ca7b1456ac636b"},
+ {file = "pydantic_core-2.18.2-cp39-none-win32.whl", hash = "sha256:0d69b4c2f6bb3e130dba60d34c0845ba31b69babdd3f78f7c0c8fae5021a253e"},
+ {file = "pydantic_core-2.18.2-cp39-none-win_amd64.whl", hash = "sha256:d9319e499827271b09b4e411905b24a426b8fb69464dfa1696258f53a3334641"},
+ {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a1874c6dd4113308bd0eb568418e6114b252afe44319ead2b4081e9b9521fe75"},
+ {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:ccdd111c03bfd3666bd2472b674c6899550e09e9f298954cfc896ab92b5b0e6d"},
+ {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e18609ceaa6eed63753037fc06ebb16041d17d28199ae5aba0052c51449650a9"},
+ {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e5c584d357c4e2baf0ff7baf44f4994be121e16a2c88918a5817331fc7599d7"},
+ {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:43f0f463cf89ace478de71a318b1b4f05ebc456a9b9300d027b4b57c1a2064fb"},
+ {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:e1b395e58b10b73b07b7cf740d728dd4ff9365ac46c18751bf8b3d8cca8f625a"},
+ {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:0098300eebb1c837271d3d1a2cd2911e7c11b396eac9661655ee524a7f10587b"},
+ {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:36789b70d613fbac0a25bb07ab3d9dba4d2e38af609c020cf4d888d165ee0bf3"},
+ {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:3f9a801e7c8f1ef8718da265bba008fa121243dfe37c1cea17840b0944dfd72c"},
+ {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:3a6515ebc6e69d85502b4951d89131ca4e036078ea35533bb76327f8424531ce"},
+ {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20aca1e2298c56ececfd8ed159ae4dde2df0781988c97ef77d5c16ff4bd5b400"},
+ {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:223ee893d77a310a0391dca6df00f70bbc2f36a71a895cecd9a0e762dc37b349"},
+ {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2334ce8c673ee93a1d6a65bd90327588387ba073c17e61bf19b4fd97d688d63c"},
+ {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:cbca948f2d14b09d20268cda7b0367723d79063f26c4ffc523af9042cad95592"},
+ {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:b3ef08e20ec49e02d5c6717a91bb5af9b20f1805583cb0adfe9ba2c6b505b5ae"},
+ {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c6fdc8627910eed0c01aed6a390a252fe3ea6d472ee70fdde56273f198938374"},
+ {file = "pydantic_core-2.18.2.tar.gz", hash = "sha256:2e29d20810dfc3043ee13ac7d9e25105799817683348823f305ab3f349b9386e"},
]
[package.dependencies]
@@ -1979,13 +1980,13 @@ rdflib-jsonld = "0.6.1"
[[package]]
name = "referencing"
-version = "0.34.0"
+version = "0.35.0"
description = "JSON Referencing + Python"
optional = false
python-versions = ">=3.8"
files = [
- {file = "referencing-0.34.0-py3-none-any.whl", hash = "sha256:d53ae300ceddd3169f1ffa9caf2cb7b769e92657e4fafb23d34b93679116dfd4"},
- {file = "referencing-0.34.0.tar.gz", hash = "sha256:5773bd84ef41799a5a8ca72dc34590c041eb01bf9aa02632b4a973fb0181a844"},
+ {file = "referencing-0.35.0-py3-none-any.whl", hash = "sha256:8080727b30e364e5783152903672df9b6b091c926a146a759080b62ca3126cd6"},
+ {file = "referencing-0.35.0.tar.gz", hash = "sha256:191e936b0c696d0af17ad7430a3dc68e88bc11be6514f4757dc890f04ab05889"},
]
[package.dependencies]
@@ -2207,49 +2208,35 @@ files = [
{file = "ruamel.yaml.clib-0.2.8-cp310-cp310-macosx_13_0_arm64.whl", hash = "sha256:07238db9cbdf8fc1e9de2489a4f68474e70dffcb32232db7c08fa61ca0c7c462"},
{file = "ruamel.yaml.clib-0.2.8-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:d92f81886165cb14d7b067ef37e142256f1c6a90a65cd156b063a43da1708cfd"},
{file = "ruamel.yaml.clib-0.2.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:fff3573c2db359f091e1589c3d7c5fc2f86f5bdb6f24252c2d8e539d4e45f412"},
- {file = "ruamel.yaml.clib-0.2.8-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:840f0c7f194986a63d2c2465ca63af8ccbbc90ab1c6001b1978f05119b5e7334"},
- {file = "ruamel.yaml.clib-0.2.8-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:024cfe1fc7c7f4e1aff4a81e718109e13409767e4f871443cbff3dba3578203d"},
{file = "ruamel.yaml.clib-0.2.8-cp310-cp310-win32.whl", hash = "sha256:c69212f63169ec1cfc9bb44723bf2917cbbd8f6191a00ef3410f5a7fe300722d"},
{file = "ruamel.yaml.clib-0.2.8-cp310-cp310-win_amd64.whl", hash = "sha256:cabddb8d8ead485e255fe80429f833172b4cadf99274db39abc080e068cbcc31"},
{file = "ruamel.yaml.clib-0.2.8-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:bef08cd86169d9eafb3ccb0a39edb11d8e25f3dae2b28f5c52fd997521133069"},
{file = "ruamel.yaml.clib-0.2.8-cp311-cp311-macosx_13_0_arm64.whl", hash = "sha256:b16420e621d26fdfa949a8b4b47ade8810c56002f5389970db4ddda51dbff248"},
{file = "ruamel.yaml.clib-0.2.8-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:b5edda50e5e9e15e54a6a8a0070302b00c518a9d32accc2346ad6c984aacd279"},
{file = "ruamel.yaml.clib-0.2.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:25c515e350e5b739842fc3228d662413ef28f295791af5e5110b543cf0b57d9b"},
- {file = "ruamel.yaml.clib-0.2.8-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:46d378daaac94f454b3a0e3d8d78cafd78a026b1d71443f4966c696b48a6d899"},
- {file = "ruamel.yaml.clib-0.2.8-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:09b055c05697b38ecacb7ac50bdab2240bfca1a0c4872b0fd309bb07dc9aa3a9"},
{file = "ruamel.yaml.clib-0.2.8-cp311-cp311-win32.whl", hash = "sha256:53a300ed9cea38cf5a2a9b069058137c2ca1ce658a874b79baceb8f892f915a7"},
{file = "ruamel.yaml.clib-0.2.8-cp311-cp311-win_amd64.whl", hash = "sha256:c2a72e9109ea74e511e29032f3b670835f8a59bbdc9ce692c5b4ed91ccf1eedb"},
{file = "ruamel.yaml.clib-0.2.8-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:ebc06178e8821efc9692ea7544aa5644217358490145629914d8020042c24aa1"},
{file = "ruamel.yaml.clib-0.2.8-cp312-cp312-macosx_13_0_arm64.whl", hash = "sha256:edaef1c1200c4b4cb914583150dcaa3bc30e592e907c01117c08b13a07255ec2"},
{file = "ruamel.yaml.clib-0.2.8-cp312-cp312-manylinux2014_aarch64.whl", hash = "sha256:7048c338b6c86627afb27faecf418768acb6331fc24cfa56c93e8c9780f815fa"},
{file = "ruamel.yaml.clib-0.2.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d176b57452ab5b7028ac47e7b3cf644bcfdc8cacfecf7e71759f7f51a59e5c92"},
- {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:3213ece08ea033eb159ac52ae052a4899b56ecc124bb80020d9bbceeb50258e9"},
- {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:aab7fd643f71d7946f2ee58cc88c9b7bfc97debd71dcc93e03e2d174628e7e2d"},
- {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-win32.whl", hash = "sha256:5c365d91c88390c8d0a8545df0b5857172824b1c604e867161e6b3d59a827eaa"},
- {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-win_amd64.whl", hash = "sha256:1758ce7d8e1a29d23de54a16ae867abd370f01b5a69e1a3ba75223eaa3ca1a1b"},
{file = "ruamel.yaml.clib-0.2.8-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:a5aa27bad2bb83670b71683aae140a1f52b0857a2deff56ad3f6c13a017a26ed"},
{file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c58ecd827313af6864893e7af0a3bb85fd529f862b6adbefe14643947cfe2942"},
{file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-macosx_12_0_arm64.whl", hash = "sha256:f481f16baec5290e45aebdc2a5168ebc6d35189ae6fea7a58787613a25f6e875"},
{file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:3fcc54cb0c8b811ff66082de1680b4b14cf8a81dce0d4fbf665c2265a81e07a1"},
{file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:7f67a1ee819dc4562d444bbafb135832b0b909f81cc90f7aa00260968c9ca1b3"},
- {file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:4ecbf9c3e19f9562c7fdd462e8d18dd902a47ca046a2e64dba80699f0b6c09b7"},
- {file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:87ea5ff66d8064301a154b3933ae406b0863402a799b16e4a1d24d9fbbcbe0d3"},
{file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-win32.whl", hash = "sha256:75e1ed13e1f9de23c5607fe6bd1aeaae21e523b32d83bb33918245361e9cc51b"},
{file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-win_amd64.whl", hash = "sha256:3f215c5daf6a9d7bbed4a0a4f760f3113b10e82ff4c5c44bec20a68c8014f675"},
{file = "ruamel.yaml.clib-0.2.8-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1b617618914cb00bf5c34d4357c37aa15183fa229b24767259657746c9077615"},
{file = "ruamel.yaml.clib-0.2.8-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:a6a9ffd280b71ad062eae53ac1659ad86a17f59a0fdc7699fd9be40525153337"},
{file = "ruamel.yaml.clib-0.2.8-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:665f58bfd29b167039f714c6998178d27ccd83984084c286110ef26b230f259f"},
{file = "ruamel.yaml.clib-0.2.8-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:700e4ebb569e59e16a976857c8798aee258dceac7c7d6b50cab63e080058df91"},
- {file = "ruamel.yaml.clib-0.2.8-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:e2b4c44b60eadec492926a7270abb100ef9f72798e18743939bdbf037aab8c28"},
- {file = "ruamel.yaml.clib-0.2.8-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:e79e5db08739731b0ce4850bed599235d601701d5694c36570a99a0c5ca41a9d"},
{file = "ruamel.yaml.clib-0.2.8-cp38-cp38-win32.whl", hash = "sha256:955eae71ac26c1ab35924203fda6220f84dce57d6d7884f189743e2abe3a9fbe"},
{file = "ruamel.yaml.clib-0.2.8-cp38-cp38-win_amd64.whl", hash = "sha256:56f4252222c067b4ce51ae12cbac231bce32aee1d33fbfc9d17e5b8d6966c312"},
{file = "ruamel.yaml.clib-0.2.8-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:03d1162b6d1df1caa3a4bd27aa51ce17c9afc2046c31b0ad60a0a96ec22f8001"},
{file = "ruamel.yaml.clib-0.2.8-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:bba64af9fa9cebe325a62fa398760f5c7206b215201b0ec825005f1b18b9bccf"},
{file = "ruamel.yaml.clib-0.2.8-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:9eb5dee2772b0f704ca2e45b1713e4e5198c18f515b52743576d196348f374d3"},
{file = "ruamel.yaml.clib-0.2.8-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:da09ad1c359a728e112d60116f626cc9f29730ff3e0e7db72b9a2dbc2e4beed5"},
- {file = "ruamel.yaml.clib-0.2.8-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:184565012b60405d93838167f425713180b949e9d8dd0bbc7b49f074407c5a8b"},
- {file = "ruamel.yaml.clib-0.2.8-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a75879bacf2c987c003368cf14bed0ffe99e8e85acfa6c0bfffc21a090f16880"},
{file = "ruamel.yaml.clib-0.2.8-cp39-cp39-win32.whl", hash = "sha256:84b554931e932c46f94ab306913ad7e11bba988104c5cff26d90d03f68258cd5"},
{file = "ruamel.yaml.clib-0.2.8-cp39-cp39-win_amd64.whl", hash = "sha256:25ac8c08322002b06fa1d49d1646181f0b2c72f5cbc15a85e80b4c30a544bb15"},
{file = "ruamel.yaml.clib-0.2.8.tar.gz", hash = "sha256:beb2e0404003de9a4cab9753a8805a8fe9320ee6673136ed7f04255fe60bb512"},
@@ -2431,7 +2418,7 @@ files = [
]
[package.dependencies]
-greenlet = {version = "!=0.4.17", markers = "platform_machine == \"win32\" or platform_machine == \"WIN32\" or platform_machine == \"AMD64\" or platform_machine == \"amd64\" or platform_machine == \"x86_64\" or platform_machine == \"ppc64le\" or platform_machine == \"aarch64\""}
+greenlet = {version = "!=0.4.17", markers = "platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\""}
typing-extensions = ">=4.6.0"
[package.extras]
diff --git a/project/excel/translator_testing_model.xlsx b/project/excel/translator_testing_model.xlsx
index 3e2dcad..122ab24 100644
Binary files a/project/excel/translator_testing_model.xlsx and b/project/excel/translator_testing_model.xlsx differ
diff --git a/project/jsonld/translator_testing_model.context.jsonld b/project/jsonld/translator_testing_model.context.jsonld
index e8d8a11..2b68e45 100644
--- a/project/jsonld/translator_testing_model.context.jsonld
+++ b/project/jsonld/translator_testing_model.context.jsonld
@@ -1,12 +1,13 @@
{
"comments": {
"description": "Auto generated by LinkML jsonld context generator",
- "generation_date": "2024-04-25T12:49:11",
+ "generation_date": "2024-04-25T16:24:01",
"source": "translator_testing_model.yaml"
},
"@context": {
"biolink": "https://w3id.org/biolink/",
"example": "https://example.org/",
+ "infores": "https://w3id.org/biolink/vocab/",
"linkml": "https://w3id.org/linkml/",
"schema": "http://schema.org/",
"skos": "http://www.w3.org/2004/02/skos/core#",
diff --git a/project/jsonld/translator_testing_model.jsonld b/project/jsonld/translator_testing_model.jsonld
index 5c2f25d..f0edc75 100644
--- a/project/jsonld/translator_testing_model.jsonld
+++ b/project/jsonld/translator_testing_model.jsonld
@@ -24,6 +24,10 @@
"prefix_prefix": "biolink",
"prefix_reference": "https://w3id.org/biolink/"
},
+ {
+ "prefix_prefix": "infores",
+ "prefix_reference": "https://w3id.org/biolink/vocab/"
+ },
{
"prefix_prefix": "schema",
"prefix_reference": "http://schema.org/"
@@ -644,12 +648,93 @@
"definition_uri": "https://w3id.org/TranslatorSRI/TranslatorTestingModel/ComponentEnum",
"description": "Translator components are identified by their InfoRes identifiers.",
"from_schema": "https://w3id.org/TranslatorSRI/TranslatorTestingModel",
- "reachable_from": {
- "source_ontology": "biolink",
- "source_nodes": [
- "biolink:infores"
- ]
- }
+ "permissible_values": [
+ {
+ "text": "ars",
+ "description": "Automatic Relay Service component of Translator",
+ "meaning": "infores:ncats-ars"
+ },
+ {
+ "text": "arax",
+ "description": "ARAX Translator Reasoner",
+ "meaning": "infores:arax"
+ },
+ {
+ "text": "explanatory",
+ "description": "A Translator Reasoner API for the Explanatory Agent",
+ "meaning": "infores:explanatory-agent"
+ },
+ {
+ "text": "improving",
+ "description": "imProving Agent OpenAPI TRAPI Specification",
+ "meaning": "infores:improving-agent"
+ },
+ {
+ "text": "aragorn",
+ "description": "Performs a query operation which compiles data from numerous ranking agent services.",
+ "meaning": "infores:aragorn"
+ },
+ {
+ "text": "bte",
+ "description": "BioThings Explorer",
+ "meaning": "infores:biothings-explorer"
+ },
+ {
+ "text": "unsecret",
+ "description": "Unsecret Agent OpenAPI for NCATS Biomedical Translator Reasoners",
+ "meaning": "infores:unsecret-agent"
+ },
+ {
+ "text": "rtxkg2",
+ "description": "TRAPI endpoint for the NCATS Biomedical Translator KP called RTX KG2",
+ "meaning": "infores:rtx-kg2"
+ },
+ {
+ "text": "icees",
+ "description": "ICEES (Integrated Clinical and Environmental Exposures Service)",
+ "meaning": "infores:icees-kg"
+ },
+ {
+ "text": "cam",
+ "description": "Causal Activity Model KP",
+ "meaning": "infores:cam-kp"
+ },
+ {
+ "text": "spoke",
+ "description": "SPOKE KP - an NIH NCATS Knowledge Provider to expose UCSFs SPOKE",
+ "meaning": "infores:spoke"
+ },
+ {
+ "text": "molepro",
+ "description": "Molecular Data Provider for NCATS Biomedical Translator Reasoners",
+ "meaning": "infores:molepro"
+ },
+ {
+ "text": "textmining",
+ "description": "Text Mining KP",
+ "meaning": "infores:textmining-kp"
+ },
+ {
+ "text": "cohd",
+ "description": "Columbia Open Health Data (COHD)",
+ "meaning": "infores:cohd"
+ },
+ {
+ "text": "openpredict",
+ "description": "OpenPredict API",
+ "meaning": "infores:openpredict"
+ },
+ {
+ "text": "collaboratory",
+ "description": "Translator Knowledge Collaboratory API",
+ "meaning": "infores:knowledge-collaboratory"
+ },
+ {
+ "text": "connections",
+ "description": "Connections Hypothesis Provider API",
+ "meaning": "infores:connections-hypothesis"
+ }
+ ]
},
{
"name": "TestPersonaEnum",
@@ -2553,9 +2638,9 @@
],
"metamodel_version": "1.7.0",
"source_file": "translator_testing_model.yaml",
- "source_file_date": "2024-04-25T12:16:22",
- "source_file_size": 28237,
- "generation_date": "2024-04-25T12:49:11",
+ "source_file_date": "2024-04-25T16:22:16",
+ "source_file_size": 30696,
+ "generation_date": "2024-04-25T16:24:01",
"@type": "SchemaDefinition",
"@context": [
"project/jsonld/translator_testing_model.context.jsonld",
diff --git a/project/jsonschema/translator_testing_model.schema.json b/project/jsonschema/translator_testing_model.schema.json
index 4931abd..8f636c1 100644
--- a/project/jsonschema/translator_testing_model.schema.json
+++ b/project/jsonschema/translator_testing_model.schema.json
@@ -311,6 +311,25 @@
},
"ComponentEnum": {
"description": "Translator components are identified by their InfoRes identifiers.",
+ "enum": [
+ "ars",
+ "arax",
+ "explanatory",
+ "improving",
+ "aragorn",
+ "bte",
+ "unsecret",
+ "rtxkg2",
+ "icees",
+ "cam",
+ "spoke",
+ "molepro",
+ "textmining",
+ "cohd",
+ "openpredict",
+ "collaboratory",
+ "connections"
+ ],
"title": "ComponentEnum",
"type": "string"
},
diff --git a/project/owl/translator_testing_model.owl.ttl b/project/owl/translator_testing_model.owl.ttl
index 20991b1..fc1d456 100644
--- a/project/owl/translator_testing_model.owl.ttl
+++ b/project/owl/translator_testing_model.owl.ttl
@@ -1,4 +1,5 @@
@prefix dcterms: .
+@prefix infores: .
@prefix linkml: .
@prefix owl: .
@prefix pav: .
@@ -12,10 +13,10 @@ ttm:AcceptanceTestCase a owl:Class,
linkml:ClassDefinition ;
rdfs:label "AcceptanceTestCase" ;
rdfs:subClassOf [ a owl:Restriction ;
- owl:minCardinality 1 ;
+ owl:allValuesFrom ttm:AcceptanceTestAsset ;
owl:onProperty ttm:test_assets ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:AcceptanceTestAsset ;
+ owl:minCardinality 1 ;
owl:onProperty ttm:test_assets ],
ttm:TestCase ;
skos:definition "See AcceptanceTestAsset above for more details." ;
@@ -68,56 +69,56 @@ ttm:TestRunSession a owl:Class,
owl:maxCardinality 1 ;
owl:onProperty ttm:test_env ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:ComponentEnum ;
- owl:onProperty ttm:components ],
+ owl:allValuesFrom linkml:String ;
+ owl:onProperty ttm:test_run_parameters ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_run_parameters ],
+ owl:onProperty ttm:timestamp ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:TestEnvEnum ;
owl:onProperty ttm:test_env ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:Datetime ;
+ owl:maxCardinality 1 ;
owl:onProperty ttm:timestamp ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
owl:onProperty ttm:test_env ],
- [ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:test_case_results ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:TestEntity ;
owl:onProperty ttm:test_entities ],
- [ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:test_run_parameters ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:components ],
+ owl:onProperty ttm:test_entities ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:test_runner_name ],
+ owl:allValuesFrom ttm:TestCaseResult ;
+ owl:onProperty ttm:test_case_results ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
owl:onProperty ttm:test_runner_name ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
+ owl:allValuesFrom linkml:Datetime ;
+ owl:onProperty ttm:timestamp ],
+ [ a owl:Restriction ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:test_runner_name ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:timestamp ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:test_run_parameters ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:timestamp ],
+ owl:onProperty ttm:components ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_entities ],
+ owl:onProperty ttm:test_case_results ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
owl:onProperty ttm:test_run_parameters ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:TestCaseResult ;
- owl:onProperty ttm:test_case_results ],
+ owl:allValuesFrom ttm:ComponentEnum ;
+ owl:onProperty ttm:components ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom linkml:String ;
+ owl:onProperty ttm:test_runner_name ],
ttm:TestEntity ;
skos:definition "Single run of a TestRunner in a given environment, with a specified set of test_entities (generally, one or more instances of TestSuite)." ;
skos:inScheme .
@@ -183,95 +184,95 @@ ttm:AcceptanceTestAsset a owl:Class,
linkml:ClassDefinition ;
rdfs:label "AcceptanceTestAsset" ;
rdfs:subClassOf [ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:answer_informal_concept ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:string_entry ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
owl:onProperty ttm:expected_result ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:top_level ],
+ owl:onProperty ttm:answer_informal_concept ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:must_pass_environment ],
+ owl:onProperty ttm:top_level ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:expected_result ],
+ owl:onProperty ttm:must_pass_environment ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:query_node ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:must_pass_date ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:scientific_question ],
+ owl:allValuesFrom ttm:NodeEnum ;
+ owl:onProperty ttm:query_node ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:DirectionEnum ;
+ owl:maxCardinality 1 ;
owl:onProperty ttm:direction ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:Integer ;
- owl:onProperty ttm:top_level ],
+ owl:allValuesFrom ttm:ExpectedResultsEnum ;
+ owl:onProperty ttm:expected_result ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:string_entry ],
- [ a owl:Restriction ;
- owl:allValuesFrom ttm:NodeEnum ;
- owl:onProperty ttm:query_node ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:answer_informal_concept ],
+ owl:onProperty ttm:must_pass_environment ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
+ owl:onProperty ttm:scientific_question ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom linkml:Date ;
owl:onProperty ttm:must_pass_date ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
+ owl:onProperty ttm:expected_result ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom linkml:String ;
+ owl:onProperty ttm:string_entry ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom linkml:String ;
owl:onProperty ttm:notes ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
+ owl:onProperty ttm:query_node ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom ttm:DirectionEnum ;
owl:onProperty ttm:direction ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:string_entry ],
- [ a owl:Restriction ;
- owl:maxCardinality 1 ;
owl:onProperty ttm:scientific_question ],
- [ a owl:Restriction ;
- owl:allValuesFrom ttm:ExpectedResultsEnum ;
- owl:onProperty ttm:expected_result ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:scientific_question ],
+ owl:onProperty ttm:top_level ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:string_entry ],
+ owl:onProperty ttm:answer_informal_concept ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:Date ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:must_pass_date ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:TestEnvEnum ;
owl:onProperty ttm:must_pass_environment ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:direction ],
+ owl:onProperty ttm:query_node ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:notes ],
+ owl:onProperty ttm:answer_informal_concept ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:query_node ],
+ owl:onProperty ttm:scientific_question ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
owl:onProperty ttm:notes ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
+ owl:allValuesFrom linkml:Integer ;
owl:onProperty ttm:top_level ],
- [ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:must_pass_date ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:must_pass_environment ],
+ owl:onProperty ttm:direction ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:answer_informal_concept ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:notes ],
ttm:TestAsset ;
skos:definition "Model derived from Jenn's test asset design and Shervin's runner JSON here as an example." ;
skos:inScheme .
@@ -288,16 +289,16 @@ ttm:TestOutput a owl:Class,
owl:minCardinality 0 ;
owl:onProperty ttm:pks ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
+ owl:maxCardinality 1 ;
owl:onProperty ttm:test_case_id ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:TestResultPKSet ;
owl:onProperty ttm:pks ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:allValuesFrom linkml:String ;
owl:onProperty ttm:test_case_id ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:test_case_id ],
ttm:TestEntity ;
skos:definition "The output of a TestRunner run of one specific TestCase." ;
@@ -402,29 +403,29 @@ ttm:TestCaseResult a owl:Class,
owl:allValuesFrom ttm:TestCase ;
owl:onProperty ttm:test_case ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:test_suite_id ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:test_case_result ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_suite_id ],
+ owl:onProperty ttm:test_case ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:Uriorcurie ;
- owl:onProperty ttm:test_suite_id ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:test_case_result ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
owl:onProperty ttm:test_case ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:TestCaseResultEnum ;
- owl:onProperty ttm:test_case_result ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:test_suite_id ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:test_case_result ],
+ owl:allValuesFrom linkml:Uriorcurie ;
+ owl:onProperty ttm:test_suite_id ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:test_case ],
+ owl:allValuesFrom ttm:TestCaseResultEnum ;
+ owl:onProperty ttm:test_case_result ],
ttm:TestEntity ;
skos:definition "The outcome of a TestRunner run of one specific TestCase." ;
skos:inScheme .
@@ -457,10 +458,10 @@ ttm:TestEntityParameter a owl:Class,
owl:allValuesFrom linkml:String ;
owl:onProperty ttm:parameter ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:allValuesFrom linkml:String ;
owl:onProperty ttm:value ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
+ owl:maxCardinality 1 ;
owl:onProperty ttm:value ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
@@ -567,68 +568,68 @@ ttm:TestResultPKSet a owl:Class,
linkml:ClassDefinition ;
rdfs:label "TestResultPKSet" ;
rdfs:subClassOf [ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:merged_pk ],
- [ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:bte ],
- [ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:improving ],
- [ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:unsecret ],
+ owl:onProperty ttm:arax ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:parent_pk ],
+ owl:onProperty ttm:improving ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
+ owl:allValuesFrom linkml:String ;
owl:onProperty ttm:improving ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:aragorn ],
+ owl:onProperty ttm:bte ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:allValuesFrom linkml:String ;
owl:onProperty ttm:merged_pk ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom linkml:String ;
+ owl:onProperty ttm:unsecret ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:arax ],
+ owl:onProperty ttm:bte ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:unsecret ],
+ owl:onProperty ttm:merged_pk ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:improving ],
+ owl:onProperty ttm:aragorn ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:merged_pk ],
- [ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:unsecret ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:bte ],
+ owl:onProperty ttm:aragorn ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
owl:onProperty ttm:arax ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:bte ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:parent_pk ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:parent_pk ],
+ [ a owl:Restriction ;
+ owl:maxCardinality 1 ;
owl:onProperty ttm:aragorn ],
+ [ a owl:Restriction ;
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:unsecret ],
+ [ a owl:Restriction ;
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:arax ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:parent_pk ],
+ owl:onProperty ttm:unsecret ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
owl:onProperty ttm:parent_pk ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:aragorn ],
+ owl:allValuesFrom linkml:String ;
+ owl:onProperty ttm:bte ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:arax ],
+ owl:onProperty ttm:improving ],
ttm:TestEntity ;
skos:definition "Primary keys for a given ARA result set from a SmokeTest result for a given TestCase." ;
skos:inScheme .
@@ -668,23 +669,23 @@ ttm:TestSuiteSpecification a owl:Class,
linkml:ClassDefinition ;
rdfs:label "TestSuiteSpecification" ;
rdfs:subClassOf [ a owl:Restriction ;
+ owl:allValuesFrom ttm:FileFormatEnum ;
+ owl:onProperty ttm:test_data_file_format ],
+ [ a owl:Restriction ;
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:test_data_file_format ],
+ [ a owl:Restriction ;
owl:minCardinality 0 ;
owl:onProperty ttm:test_data_file_locator ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:test_data_file_locator ],
+ owl:onProperty ttm:test_data_file_format ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:Uriorcurie ;
owl:onProperty ttm:test_data_file_locator ],
- [ a owl:Restriction ;
- owl:allValuesFrom ttm:FileFormatEnum ;
- owl:onProperty ttm:test_data_file_format ],
- [ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:test_data_file_format ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:test_data_file_format ],
+ owl:onProperty ttm:test_data_file_locator ],
ttm:TestEntity ;
skos:definition "Parameters for a Test Case instances either dynamically generated from some external source of Test Assets." ;
skos:inScheme .
@@ -767,27 +768,109 @@ ttm:test_entity_parameters a owl:ObjectProperty,
skos:definition "One or more 'tag = value' parameters documenting target characteristics of a TestEntity." ;
skos:inScheme .
-ttm:ComponentEnum a owl:Class,
- linkml:EnumDefinition .
+infores:aragorn a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "aragorn" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:arax a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "arax" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:biothings-explorer a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "bte" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:cam-kp a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "cam" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:cohd a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "cohd" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:connections-hypothesis a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "connections" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:explanatory-agent a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "explanatory" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:icees-kg a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "icees" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:improving-agent a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "improving" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:knowledge-collaboratory a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "collaboratory" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:molepro a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "molepro" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:ncats-ars a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "ars" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:openpredict a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "openpredict" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:rtx-kg2 a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "rtxkg2" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:spoke a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "spoke" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:textmining-kp a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "textmining" ;
+ rdfs:subClassOf ttm:ComponentEnum .
+
+infores:unsecret-agent a owl:Class,
+ ttm:ComponentEnum ;
+ rdfs:label "unsecret" ;
+ rdfs:subClassOf ttm:ComponentEnum .
ttm:Qualifier a owl:Class,
linkml:ClassDefinition ;
rdfs:label "Qualifier" ;
rdfs:subClassOf [ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:value ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:parameter ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
owl:onProperty ttm:value ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
+ owl:allValuesFrom linkml:String ;
owl:onProperty ttm:parameter ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:parameter ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:parameter ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:value ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
owl:onProperty ttm:value ],
@@ -798,41 +881,41 @@ ttm:TestMetadata a owl:Class,
linkml:ClassDefinition ;
rdfs:label "TestMetadata" ;
rdfs:subClassOf [ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:test_reference ],
- [ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
owl:onProperty ttm:test_annotations ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:TestObjectiveEnum ;
- owl:onProperty ttm:test_objective ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:test_reference ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
owl:onProperty ttm:test_objective ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:test_annotations ],
+ owl:onProperty ttm:test_objective ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom ttm:TestObjectiveEnum ;
+ owl:onProperty ttm:test_objective ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_reference ],
+ owl:onProperty ttm:test_annotations ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom ttm:TestSourceEnum ;
+ owl:onProperty ttm:test_source ],
+ [ a owl:Restriction ;
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:test_reference ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:Uriorcurie ;
owl:onProperty ttm:test_reference ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:test_source ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:test_objective ],
- [ a owl:Restriction ;
- owl:allValuesFrom ttm:TestSourceEnum ;
owl:onProperty ttm:test_source ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
+ owl:maxCardinality 1 ;
owl:onProperty ttm:test_annotations ],
- [ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:test_source ],
ttm:TestEntity ;
skos:definition "Represents metadata related to (external SME, SMURF, Translator feedback, large scale batch, etc.) like the provenance of test assets, cases and/or suites." ;
skos:inScheme .
@@ -846,37 +929,37 @@ ttm:TestSuite a owl:Class,
linkml:ClassDefinition ;
rdfs:label "TestSuite" ;
rdfs:subClassOf [ a owl:Restriction ;
+ owl:allValuesFrom ttm:TestPersonaEnum ;
+ owl:onProperty ttm:test_persona ],
+ [ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_suite_specification ],
+ owl:onProperty ttm:test_metadata ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
owl:onProperty ttm:test_metadata ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:TestCase ;
owl:onProperty ttm:test_cases ],
- [ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:test_persona ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_cases ],
+ owl:onProperty ttm:test_suite_specification ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:TestPersonaEnum ;
- owl:onProperty ttm:test_persona ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:test_suite_specification ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:TestMetadata ;
owl:onProperty ttm:test_metadata ],
+ [ a owl:Restriction ;
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:test_cases ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:TestSuiteSpecification ;
owl:onProperty ttm:test_suite_specification ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_metadata ],
+ owl:onProperty ttm:test_persona ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:test_suite_specification ],
- [ a owl:Restriction ;
- owl:minCardinality 0 ;
owl:onProperty ttm:test_persona ],
ttm:TestEntity ;
skos:definition "Specification of a set of Test Cases, one of either with a static list of 'test_cases' or a dynamic 'test_suite_specification' slot values. Note: at least one slot or the other, but generally not both(?) needs to be present." ;
@@ -1239,176 +1322,176 @@ ttm:TestAsset a owl:Class,
linkml:ClassDefinition ;
rdfs:label "TestAsset" ;
rdfs:subClassOf [ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:predicate_id ],
- [ a owl:Restriction ;
- owl:minCardinality 1 ;
- owl:onProperty ttm:id ],
- [ a owl:Restriction ;
- owl:allValuesFrom linkml:Boolean ;
- owl:onProperty ttm:well_known ],
- [ a owl:Restriction ;
owl:minCardinality 0 ;
owl:onProperty ttm:semantic_severity ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_metadata ],
- [ a owl:Restriction ;
- owl:allValuesFrom ttm:TestIssueEnum ;
- owl:onProperty ttm:test_issue ],
- [ a owl:Restriction ;
- owl:allValuesFrom linkml:Boolean ;
- owl:onProperty ttm:in_v1 ],
+ owl:onProperty ttm:output_name ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:predicate_id ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:output_category ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_reference ],
- [ a owl:Restriction ;
- owl:allValuesFrom linkml:Uriorcurie ;
- owl:onProperty ttm:test_reference ],
+ owl:onProperty ttm:test_issue ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
+ owl:maxCardinality 1 ;
owl:onProperty ttm:expected_output ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:predicate_type ;
- owl:onProperty ttm:predicate_id ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:id ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:test_issue ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:semantic_severity ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:test_runner_settings ],
- [ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:input_category ],
+ owl:onProperty ttm:input_name ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
owl:onProperty ttm:input_id ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:output_id ],
- [ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:input_id ],
- [ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:allValuesFrom linkml:Boolean ;
owl:onProperty ttm:well_known ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:tags ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:expected_output ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:association ],
+ owl:onProperty ttm:well_known ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_runner_settings ],
+ owl:onProperty ttm:test_reference ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:input_name ],
+ owl:minCardinality 1 ;
+ owl:onProperty ttm:id ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:output_name ],
- [ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:output_name ],
+ owl:onProperty ttm:input_name ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:output_category ],
+ owl:onProperty ttm:output_id ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:input_name ],
+ owl:onProperty ttm:predicate_id ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:in_v1 ],
+ owl:onProperty ttm:input_id ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom ttm:TestMetadata ;
+ owl:onProperty ttm:test_metadata ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:semantic_severity ],
+ owl:onProperty ttm:test_issue ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
+ owl:onProperty ttm:predicate_name ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom linkml:String ;
+ owl:onProperty ttm:tags ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom linkml:String ;
+ owl:onProperty ttm:expected_output ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom linkml:Uriorcurie ;
+ owl:onProperty ttm:input_id ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom linkml:Uriorcurie ;
owl:onProperty ttm:id ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:SemanticSeverityEnum ;
- owl:onProperty ttm:semantic_severity ],
+ owl:allValuesFrom ttm:association_category ;
+ owl:onProperty ttm:association ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:allValuesFrom ttm:TestIssueEnum ;
owl:onProperty ttm:test_issue ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
owl:onProperty ttm:qualifiers ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:expected_output ],
- [ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:output_name ],
+ owl:onProperty ttm:test_metadata ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:Qualifier ;
owl:onProperty ttm:qualifiers ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:output_id ],
+ owl:allValuesFrom ttm:concept_category ;
+ owl:onProperty ttm:input_category ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
owl:onProperty ttm:predicate_name ],
- [ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:test_metadata ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
owl:onProperty ttm:tags ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:test_reference ],
+ owl:onProperty ttm:association ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:concept_category ;
- owl:onProperty ttm:input_category ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:test_metadata ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:test_runner_settings ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom linkml:Boolean ;
owl:onProperty ttm:in_v1 ],
+ [ a owl:Restriction ;
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:output_id ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:concept_category ;
owl:onProperty ttm:output_category ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:expected_output ],
+ owl:onProperty ttm:test_runner_settings ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:output_category ],
+ owl:onProperty ttm:predicate_id ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:association_category ;
- owl:onProperty ttm:association ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:output_category ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:input_category ],
+ owl:onProperty ttm:output_name ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:TestMetadata ;
- owl:onProperty ttm:test_metadata ],
+ owl:allValuesFrom linkml:Uriorcurie ;
+ owl:onProperty ttm:test_reference ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:well_known ],
+ owl:onProperty ttm:input_category ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:Uriorcurie ;
- owl:onProperty ttm:output_id ],
+ owl:allValuesFrom ttm:predicate_type ;
+ owl:onProperty ttm:predicate_id ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:allValuesFrom linkml:String ;
owl:onProperty ttm:predicate_name ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:Uriorcurie ;
- owl:onProperty ttm:id ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:well_known ],
+ [ a owl:Restriction ;
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:association ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom ttm:SemanticSeverityEnum ;
+ owl:onProperty ttm:semantic_severity ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:Uriorcurie ;
- owl:onProperty ttm:input_id ],
+ owl:onProperty ttm:output_id ],
+ [ a owl:Restriction ;
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:input_category ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:predicate_name ],
+ owl:onProperty ttm:output_name ],
+ [ a owl:Restriction ;
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:in_v1 ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:association ],
+ owl:onProperty ttm:in_v1 ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
+ owl:maxCardinality 1 ;
owl:onProperty ttm:input_name ],
+ [ a owl:Restriction ;
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:test_reference ],
ttm:TestEntity ;
skos:definition "Represents a Test Asset, which is a single specific instance of TestCase-agnostic semantic parameters representing the specification of a Translator test target with inputs and (expected) outputs." ;
skos:inScheme .
@@ -1464,125 +1547,125 @@ ttm:TestCase a owl:Class,
linkml:ClassDefinition ;
rdfs:label "TestCase" ;
rdfs:subClassOf [ a owl:Restriction ;
- owl:allValuesFrom ttm:TestEnvEnum ;
- owl:onProperty ttm:test_env ],
+ owl:allValuesFrom ttm:Precondition ;
+ owl:onProperty ttm:preconditions ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:test_case_predicate_name ],
+ owl:onProperty ttm:test_case_objective ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:test_case_predicate_name ],
+ owl:allValuesFrom linkml:String ;
+ owl:onProperty ttm:tags ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_case_objective ],
- [ a owl:Restriction ;
- owl:allValuesFrom ttm:TestObjectiveEnum ;
- owl:onProperty ttm:test_case_objective ],
+ owl:onProperty ttm:test_case_input_id ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:test_case_input_id ],
+ owl:onProperty ttm:test_case_predicate_id ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:concept_category ;
- owl:onProperty ttm:output_category ],
+ owl:allValuesFrom linkml:Uriorcurie ;
+ owl:onProperty ttm:test_case_input_id ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:Precondition ;
- owl:onProperty ttm:preconditions ],
+ owl:allValuesFrom ttm:TestSourceEnum ;
+ owl:onProperty ttm:test_case_source ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:qualifiers ],
+ owl:onProperty ttm:components ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom ttm:TestEnvEnum ;
+ owl:onProperty ttm:test_env ],
+ [ a owl:Restriction ;
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:test_case_predicate_name ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
owl:onProperty ttm:test_case_predicate_id ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
+ owl:maxCardinality 1 ;
owl:onProperty ttm:test_env ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:preconditions ],
+ owl:onProperty ttm:qualifiers ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:input_category ],
+ owl:allValuesFrom ttm:ComponentEnum ;
+ owl:onProperty ttm:components ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_case_source ],
- [ a owl:Restriction ;
- owl:allValuesFrom ttm:TestSourceEnum ;
- owl:onProperty ttm:test_case_source ],
+ owl:onProperty ttm:test_case_predicate_name ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:QueryTypeEnum ;
- owl:onProperty ttm:query_type ],
+ owl:allValuesFrom ttm:TestObjectiveEnum ;
+ owl:onProperty ttm:test_case_objective ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:components ],
+ owl:onProperty ttm:input_category ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:Qualifier ;
- owl:onProperty ttm:qualifiers ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:output_category ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:test_case_input_id ],
+ owl:onProperty ttm:output_category ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:test_case_predicate_id ],
- [ a owl:Restriction ;
- owl:minCardinality 1 ;
- owl:onProperty ttm:test_assets ],
- [ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:trapi_template ],
- [ a owl:Restriction ;
- owl:allValuesFrom linkml:Uriorcurie ;
- owl:onProperty ttm:test_case_input_id ],
+ owl:onProperty ttm:test_case_predicate_name ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:output_category ],
+ owl:onProperty ttm:test_case_source ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:allValuesFrom linkml:String ;
owl:onProperty ttm:test_case_predicate_id ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:tags ],
+ owl:onProperty ttm:test_case_objective ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:query_type ],
+ owl:allValuesFrom ttm:concept_category ;
+ owl:onProperty ttm:input_category ],
[ a owl:Restriction ;
owl:minCardinality 0 ;
- owl:onProperty ttm:query_type ],
+ owl:onProperty ttm:test_case_source ],
+ [ a owl:Restriction ;
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:test_env ],
+ [ a owl:Restriction ;
+ owl:allValuesFrom ttm:Qualifier ;
+ owl:onProperty ttm:qualifiers ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:TestAsset ;
owl:onProperty ttm:test_assets ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:trapi_template ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:test_case_predicate_name ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:input_category ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:output_category ],
+ owl:minCardinality 1 ;
+ owl:onProperty ttm:test_assets ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:test_env ],
+ owl:onProperty ttm:trapi_template ],
[ a owl:Restriction ;
owl:maxCardinality 1 ;
- owl:onProperty ttm:test_case_objective ],
+ owl:onProperty ttm:query_type ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:test_case_source ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:query_type ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:TrapiTemplateEnum ;
- owl:onProperty ttm:trapi_template ],
+ owl:allValuesFrom ttm:QueryTypeEnum ;
+ owl:onProperty ttm:query_type ],
[ a owl:Restriction ;
owl:allValuesFrom ttm:concept_category ;
- owl:onProperty ttm:input_category ],
+ owl:onProperty ttm:output_category ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:tags ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:input_category ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:preconditions ],
[ a owl:Restriction ;
- owl:allValuesFrom ttm:ComponentEnum ;
- owl:onProperty ttm:components ],
+ owl:allValuesFrom ttm:TrapiTemplateEnum ;
+ owl:onProperty ttm:trapi_template ],
+ [ a owl:Restriction ;
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:test_case_input_id ],
ttm:TestEntity ;
skos:definition "Represents a single enumerated instance of Test Case, derived from a given collection of one or more TestAsset instances (the value of the 'test_assets' slot) which define the 'inputs' and 'outputs' of the TestCase, used to probe a particular test condition." ;
skos:inScheme .
@@ -1694,43 +1777,43 @@ ttm:TestEntity a owl:Class,
linkml:ClassDefinition ;
rdfs:label "TestEntity" ;
rdfs:subClassOf [ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:description ],
+ owl:minCardinality 1 ;
+ owl:onProperty ttm:id ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:test_runner_settings ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:id ],
[ a owl:Restriction ;
- owl:minCardinality 1 ;
+ owl:allValuesFrom linkml:Uriorcurie ;
owl:onProperty ttm:id ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
+ owl:allValuesFrom linkml:String ;
owl:onProperty ttm:name ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
- owl:onProperty ttm:tags ],
+ owl:maxCardinality 1 ;
+ owl:onProperty ttm:description ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:test_runner_settings ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
- owl:onProperty ttm:description ],
+ owl:onProperty ttm:test_runner_settings ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
+ owl:minCardinality 0 ;
owl:onProperty ttm:name ],
[ a owl:Restriction ;
- owl:maxCardinality 1 ;
- owl:onProperty ttm:id ],
- [ a owl:Restriction ;
- owl:allValuesFrom linkml:Uriorcurie ;
- owl:onProperty ttm:id ],
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:description ],
[ a owl:Restriction ;
owl:allValuesFrom linkml:String ;
owl:onProperty ttm:tags ],
[ a owl:Restriction ;
- owl:minCardinality 0 ;
+ owl:allValuesFrom linkml:String ;
owl:onProperty ttm:description ],
[ a owl:Restriction ;
- owl:allValuesFrom linkml:String ;
+ owl:minCardinality 0 ;
+ owl:onProperty ttm:tags ],
+ [ a owl:Restriction ;
+ owl:maxCardinality 1 ;
owl:onProperty ttm:name ] ;
skos:definition "Abstract global 'identification' class shared as a parent with all major model classes within the data model for Translator testing." ;
skos:inScheme .
@@ -1782,6 +1865,27 @@ ttm:TestSourceEnum a owl:Class,
,
.
+ttm:ComponentEnum a owl:Class,
+ linkml:EnumDefinition ;
+ owl:unionOf ( infores:ncats-ars infores:arax infores:explanatory-agent infores:improving-agent infores:aragorn infores:biothings-explorer infores:unsecret-agent infores:rtx-kg2 infores:icees-kg infores:cam-kp infores:spoke infores:molepro infores:textmining-kp infores:cohd infores:openpredict infores:knowledge-collaboratory infores:connections-hypothesis ) ;
+ linkml:permissible_values infores:aragorn,
+ infores:arax,
+ infores:biothings-explorer,
+ infores:cam-kp,
+ infores:cohd,
+ infores:connections-hypothesis,
+ infores:explanatory-agent,
+ infores:icees-kg,
+ infores:improving-agent,
+ infores:knowledge-collaboratory,
+ infores:molepro,
+ infores:ncats-ars,
+ infores:openpredict,
+ infores:rtx-kg2,
+ infores:spoke,
+ infores:textmining-kp,
+ infores:unsecret-agent .
+
a owl:Ontology ;
rdfs:label "Translator-Testing-Model" ;
dcterms:license "MIT" ;
diff --git a/project/prefixmap/translator_testing_model.yaml b/project/prefixmap/translator_testing_model.yaml
index 1e5dbdf..5141b2f 100644
--- a/project/prefixmap/translator_testing_model.yaml
+++ b/project/prefixmap/translator_testing_model.yaml
@@ -1,6 +1,7 @@
{
"biolink": "https://w3id.org/biolink/",
"example": "https://example.org/",
+ "infores": "https://w3id.org/biolink/vocab/",
"linkml": "https://w3id.org/linkml/",
"schema": "http://schema.org/",
"ttm": "https://w3id.org/TranslatorSRI/TranslatorTestingModel/"
diff --git a/project/shacl/translator_testing_model.shacl.ttl b/project/shacl/translator_testing_model.shacl.ttl
index 3063659..ee82a26 100644
--- a/project/shacl/translator_testing_model.shacl.ttl
+++ b/project/shacl/translator_testing_model.shacl.ttl
@@ -1,3 +1,4 @@
+@prefix infores: .
@prefix rdf: .
@prefix schema1: .
@prefix sh: .
@@ -8,42 +9,22 @@ ttm:AcceptanceTestCase a sh:NodeShape ;
sh:closed true ;
sh:description "See AcceptanceTestAsset above for more details." ;
sh:ignoredProperties ( rdf:type ) ;
- sh:property [ sh:description "Type of TestCase query." ;
+ sh:property [ sh:maxCount 1 ;
+ sh:order 8 ;
+ sh:path ttm:test_case_input_id ],
+ [ sh:maxCount 1 ;
+ sh:order 10 ;
+ sh:path ttm:input_category ],
+ [ sh:description "Type of TestCase query." ;
sh:in ( "treats" ) ;
sh:maxCount 1 ;
sh:order 0 ;
sh:path ttm:query_type ],
- [ sh:description "A unique identifier for a Test Entity" ;
- sh:maxCount 1 ;
- sh:minCount 1 ;
- sh:order 14 ;
- sh:path schema1:identifier ],
- [ sh:description "A template for a query, which can be used to generate a query for a test case. note: the current enumerated values for this slot come from the Benchmarks repo config/benchmarks.json \"templates\" collection and refer to the \"name\" field of each template. Templates themselves are currently stored in the config/[source_name]/templates directory." ;
- sh:in ( "ameliorates" "treats" "three_hop" "drug_treats_rare_disease" "drug-to-gene" ) ;
- sh:maxCount 1 ;
- sh:order 3 ;
- sh:path ttm:trapi_template ],
- [ sh:class ttm:Precondition ;
- sh:nodeKind sh:IRI ;
- sh:order 2 ;
- sh:path ttm:preconditions ],
- [ sh:description "Deployment environment within which the associated TestSuite is run." ;
- sh:in ( "dev" "ci" "test" "prod" ) ;
- sh:maxCount 1 ;
- sh:order 13 ;
- sh:path ttm:test_env ],
- [ sh:maxCount 1 ;
- sh:order 11 ;
- sh:path ttm:output_category ],
- [ sh:datatype xsd:string ;
+ [ sh:description "Testing objective behind specified set of test particulars (e.g. acceptance pass/fail; benchmark; quantitative; standards compliance; graph navigation integrity)" ;
+ sh:in ( "AcceptanceTest" "BenchmarkTest" "QuantitativeTest" "StandardsValidationTest" "OneHopTest" ) ;
sh:maxCount 1 ;
- sh:order 7 ;
- sh:path ttm:test_case_predicate_id ],
- [ sh:class ttm:Qualifier ;
- sh:description "Optional qualifiers which constrain to the test asset defined knowledge statement. Note that this field records such qualifier slots and values as tag=value pairs, where the tag is the Biolink Model qualifier slot named and the value is an acceptable (Biolink Model enum?) value of the said qualifier slot." ;
- sh:nodeKind sh:BlankNodeOrIRI ;
- sh:order 9 ;
- sh:path ttm:qualifiers ],
+ sh:order 4 ;
+ sh:path ttm:test_case_objective ],
[ sh:datatype xsd:string ;
sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
@@ -54,94 +35,114 @@ ttm:AcceptanceTestCase a sh:NodeShape ;
sh:maxCount 1 ;
sh:order 16 ;
sh:path schema1:description ],
+ [ sh:datatype xsd:string ;
+ sh:description "One or more 'tags' slot values (slot inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in a \"Block List\" collection." ;
+ sh:order 17 ;
+ sh:path schema1:additionalType ],
+ [ sh:datatype xsd:string ;
+ sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
+ sh:order 18 ;
+ sh:path ttm:test_runner_settings ],
+ [ sh:maxCount 1 ;
+ sh:order 11 ;
+ sh:path ttm:output_category ],
[ sh:datatype xsd:string ;
sh:maxCount 1 ;
sh:order 6 ;
sh:path ttm:test_case_predicate_name ],
- [ sh:class ttm:AcceptanceTestAsset ;
- sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in 'test_assets' slot (\"Block List\") collection." ;
- sh:minCount 1 ;
- sh:nodeKind sh:IRI ;
- sh:order 1 ;
- sh:path ttm:test_assets ],
- [ sh:maxCount 1 ;
- sh:order 10 ;
- sh:path ttm:input_category ],
+ [ sh:class ttm:Qualifier ;
+ sh:description "Optional qualifiers which constrain to the test asset defined knowledge statement. Note that this field records such qualifier slots and values as tag=value pairs, where the tag is the Biolink Model qualifier slot named and the value is an acceptable (Biolink Model enum?) value of the said qualifier slot." ;
+ sh:nodeKind sh:BlankNodeOrIRI ;
+ sh:order 9 ;
+ sh:path ttm:qualifiers ],
[ sh:description "The component that this test case is intended to run against. Most often this is the ARS for acceptance tests, but for the Benchmarks repo integration, this can also be individual components of the system like Aragorn, or ARAX." ;
- sh:in [ rdf:rest () ] ;
+ sh:in ( infores:ncats-ars infores:arax infores:explanatory-agent infores:improving-agent infores:aragorn infores:biothings-explorer infores:unsecret-agent infores:rtx-kg2 infores:icees-kg infores:cam-kp infores:spoke infores:molepro infores:textmining-kp infores:cohd infores:openpredict infores:knowledge-collaboratory infores:connections-hypothesis ) ;
sh:order 12 ;
sh:path ttm:components ],
[ sh:datatype xsd:string ;
- sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
- sh:order 18 ;
- sh:path ttm:test_runner_settings ],
- [ sh:maxCount 1 ;
- sh:order 8 ;
- sh:path ttm:test_case_input_id ],
- [ sh:description "Testing objective behind specified set of test particulars (e.g. acceptance pass/fail; benchmark; quantitative; standards compliance; graph navigation integrity)" ;
- sh:in ( "AcceptanceTest" "BenchmarkTest" "QuantitativeTest" "StandardsValidationTest" "OneHopTest" ) ;
sh:maxCount 1 ;
- sh:order 4 ;
- sh:path ttm:test_case_objective ],
+ sh:order 7 ;
+ sh:path ttm:test_case_predicate_id ],
+ [ sh:description "Deployment environment within which the associated TestSuite is run." ;
+ sh:in ( "dev" "ci" "test" "prod" ) ;
+ sh:maxCount 1 ;
+ sh:order 13 ;
+ sh:path ttm:test_env ],
[ sh:description "Provenance of a specific set of test assets, cases and/or suites. Or, the person who cares about this, know about this. We would like this to be an ORCID eventually, but currently it is just a string." ;
sh:in ( "SME" "SMURF" "GitHubUserFeedback" "TACT" "BenchMark" "TranslatorTeam" "TestDataLocation" ) ;
sh:maxCount 1 ;
sh:order 5 ;
sh:path ttm:test_case_source ],
- [ sh:datatype xsd:string ;
- sh:description "One or more 'tags' slot values (slot inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in a \"Block List\" collection." ;
- sh:order 17 ;
- sh:path schema1:additionalType ] ;
+ [ sh:class ttm:Precondition ;
+ sh:nodeKind sh:IRI ;
+ sh:order 2 ;
+ sh:path ttm:preconditions ],
+ [ sh:description "A template for a query, which can be used to generate a query for a test case. note: the current enumerated values for this slot come from the Benchmarks repo config/benchmarks.json \"templates\" collection and refer to the \"name\" field of each template. Templates themselves are currently stored in the config/[source_name]/templates directory." ;
+ sh:in ( "ameliorates" "treats" "three_hop" "drug_treats_rare_disease" "drug-to-gene" ) ;
+ sh:maxCount 1 ;
+ sh:order 3 ;
+ sh:path ttm:trapi_template ],
+ [ sh:class ttm:AcceptanceTestAsset ;
+ sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in 'test_assets' slot (\"Block List\") collection." ;
+ sh:minCount 1 ;
+ sh:nodeKind sh:IRI ;
+ sh:order 1 ;
+ sh:path ttm:test_assets ],
+ [ sh:description "A unique identifier for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:minCount 1 ;
+ sh:order 14 ;
+ sh:path schema1:identifier ] ;
sh:targetClass ttm:AcceptanceTestCase .
ttm:AcceptanceTestSuite a sh:NodeShape ;
sh:closed true ;
sh:ignoredProperties ( rdf:type ) ;
- sh:property [ sh:class ttm:TestCase ;
- sh:description "List of explicitly enumerated Test Cases." ;
- sh:nodeKind sh:IRI ;
- sh:order 2 ;
- sh:path ttm:test_cases ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
- sh:order 7 ;
- sh:path schema1:additionalType ],
- [ sh:datatype xsd:string ;
+ sh:property [ sh:datatype xsd:string ;
sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
sh:order 5 ;
sh:path schema1:name ],
- [ sh:description "A Test persona describes the user or operational context of a given test." ;
- sh:in ( "All" "Clinical" "LookUp" "Mechanistic" ) ;
- sh:maxCount 1 ;
- sh:order 1 ;
- sh:path ttm:test_persona ],
- [ sh:description "A unique identifier for a Test Entity" ;
- sh:maxCount 1 ;
- sh:minCount 1 ;
- sh:order 4 ;
- sh:path schema1:identifier ],
[ sh:class ttm:TestSuiteSpecification ;
sh:description "Declarative specification of a Test Suite of Test Cases whose generation is deferred, (i.e. within a Test Runner) or whose creation is achieved by stream processing of an external data source." ;
sh:maxCount 1 ;
sh:nodeKind sh:IRI ;
sh:order 3 ;
sh:path ttm:test_suite_specification ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
+ sh:order 7 ;
+ sh:path schema1:additionalType ],
[ sh:datatype xsd:string ;
sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
sh:order 6 ;
sh:path schema1:description ],
- [ sh:datatype xsd:string ;
- sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
- sh:order 8 ;
- sh:path ttm:test_runner_settings ],
[ sh:class ttm:TestMetadata ;
sh:description "Test metadata describes the external provenance, cross-references and objectives for a given test." ;
sh:maxCount 1 ;
sh:nodeKind sh:IRI ;
sh:order 0 ;
- sh:path ttm:test_metadata ] ;
+ sh:path ttm:test_metadata ],
+ [ sh:class ttm:TestCase ;
+ sh:description "List of explicitly enumerated Test Cases." ;
+ sh:nodeKind sh:IRI ;
+ sh:order 2 ;
+ sh:path ttm:test_cases ],
+ [ sh:description "A Test persona describes the user or operational context of a given test." ;
+ sh:in ( "All" "Clinical" "LookUp" "Mechanistic" ) ;
+ sh:maxCount 1 ;
+ sh:order 1 ;
+ sh:path ttm:test_persona ],
+ [ sh:description "A unique identifier for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:minCount 1 ;
+ sh:order 4 ;
+ sh:path schema1:identifier ],
+ [ sh:datatype xsd:string ;
+ sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
+ sh:order 8 ;
+ sh:path ttm:test_runner_settings ] ;
sh:targetClass ttm:AcceptanceTestSuite .
ttm:BenchmarkTestSuite a sh:NodeShape ;
@@ -154,13 +155,7 @@ ttm:OneHopTestSuite a sh:NodeShape ;
sh:closed true ;
sh:description "Test case for testing the integrity of \"One Hop\" knowledge graph retrievals sensa legacy SRI_Testing harness." ;
sh:ignoredProperties ( rdf:type ) ;
- sh:property [ sh:class ttm:TestMetadata ;
- sh:description "Test metadata describes the external provenance, cross-references and objectives for a given test." ;
- sh:maxCount 1 ;
- sh:nodeKind sh:IRI ;
- sh:order 0 ;
- sh:path ttm:test_metadata ],
- [ sh:datatype xsd:string ;
+ sh:property [ sh:datatype xsd:string ;
sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
sh:order 6 ;
@@ -170,35 +165,41 @@ ttm:OneHopTestSuite a sh:NodeShape ;
sh:order 8 ;
sh:path ttm:test_runner_settings ],
[ sh:datatype xsd:string ;
- sh:description "A human-readable name for a Test Entity" ;
+ sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
+ sh:order 7 ;
+ sh:path schema1:additionalType ],
+ [ sh:class ttm:TestCase ;
+ sh:description "List of explicitly enumerated Test Cases." ;
+ sh:nodeKind sh:IRI ;
+ sh:order 2 ;
+ sh:path ttm:test_cases ],
+ [ sh:class ttm:TestSuiteSpecification ;
+ sh:description "Declarative specification of a Test Suite of Test Cases whose generation is deferred, (i.e. within a Test Runner) or whose creation is achieved by stream processing of an external data source." ;
sh:maxCount 1 ;
- sh:order 5 ;
- sh:path schema1:name ],
+ sh:nodeKind sh:IRI ;
+ sh:order 3 ;
+ sh:path ttm:test_suite_specification ],
[ sh:description "A unique identifier for a Test Entity" ;
sh:maxCount 1 ;
sh:minCount 1 ;
sh:order 4 ;
sh:path schema1:identifier ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable name for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:order 5 ;
+ sh:path schema1:name ],
[ sh:description "A Test persona describes the user or operational context of a given test." ;
sh:in ( "All" "Clinical" "LookUp" "Mechanistic" ) ;
sh:maxCount 1 ;
sh:order 1 ;
sh:path ttm:test_persona ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
- sh:order 7 ;
- sh:path schema1:additionalType ],
- [ sh:class ttm:TestSuiteSpecification ;
- sh:description "Declarative specification of a Test Suite of Test Cases whose generation is deferred, (i.e. within a Test Runner) or whose creation is achieved by stream processing of an external data source." ;
+ [ sh:class ttm:TestMetadata ;
+ sh:description "Test metadata describes the external provenance, cross-references and objectives for a given test." ;
sh:maxCount 1 ;
sh:nodeKind sh:IRI ;
- sh:order 3 ;
- sh:path ttm:test_suite_specification ],
- [ sh:class ttm:TestCase ;
- sh:description "List of explicitly enumerated Test Cases." ;
- sh:nodeKind sh:IRI ;
- sh:order 2 ;
- sh:path ttm:test_cases ] ;
+ sh:order 0 ;
+ sh:path ttm:test_metadata ] ;
sh:targetClass ttm:OneHopTestSuite .
ttm:QuantitativeTestCase a sh:NodeShape ;
@@ -206,100 +207,96 @@ ttm:QuantitativeTestCase a sh:NodeShape ;
sh:description "Assumed additional model from Shervin's runner JSON here as an example. This schema is not yet complete." ;
sh:ignoredProperties ( rdf:type ) ;
sh:property [ sh:maxCount 1 ;
- sh:order 8 ;
- sh:path ttm:test_case_input_id ],
- [ sh:datatype xsd:string ;
- sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
- sh:order 18 ;
- sh:path ttm:test_runner_settings ],
- [ sh:maxCount 1 ;
- sh:order 11 ;
- sh:path ttm:output_category ],
+ sh:order 10 ;
+ sh:path ttm:input_category ],
+ [ sh:description "The component that this test case is intended to run against. Most often this is the ARS for acceptance tests, but for the Benchmarks repo integration, this can also be individual components of the system like Aragorn, or ARAX." ;
+ sh:in ( infores:ncats-ars infores:arax infores:explanatory-agent infores:improving-agent infores:aragorn infores:biothings-explorer infores:unsecret-agent infores:rtx-kg2 infores:icees-kg infores:cam-kp infores:spoke infores:molepro infores:textmining-kp infores:cohd infores:openpredict infores:knowledge-collaboratory infores:connections-hypothesis ) ;
+ sh:order 12 ;
+ sh:path ttm:components ],
+ [ sh:description "A unique identifier for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:minCount 1 ;
+ sh:order 14 ;
+ sh:path schema1:identifier ],
[ sh:datatype xsd:string ;
sh:maxCount 1 ;
sh:order 6 ;
sh:path ttm:test_case_predicate_name ],
- [ sh:description "Type of TestCase query." ;
- sh:in ( "treats" ) ;
- sh:maxCount 1 ;
- sh:order 0 ;
- sh:path ttm:query_type ],
- [ sh:description "Provenance of a specific set of test assets, cases and/or suites. Or, the person who cares about this, know about this. We would like this to be an ORCID eventually, but currently it is just a string." ;
- sh:in ( "SME" "SMURF" "GitHubUserFeedback" "TACT" "BenchMark" "TranslatorTeam" "TestDataLocation" ) ;
- sh:maxCount 1 ;
- sh:order 5 ;
- sh:path ttm:test_case_source ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable name for a Test Entity" ;
+ [ sh:description "A template for a query, which can be used to generate a query for a test case. note: the current enumerated values for this slot come from the Benchmarks repo config/benchmarks.json \"templates\" collection and refer to the \"name\" field of each template. Templates themselves are currently stored in the config/[source_name]/templates directory." ;
+ sh:in ( "ameliorates" "treats" "three_hop" "drug_treats_rare_disease" "drug-to-gene" ) ;
sh:maxCount 1 ;
- sh:order 15 ;
- sh:path schema1:name ],
+ sh:order 3 ;
+ sh:path ttm:trapi_template ],
[ sh:class ttm:TestAsset ;
sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in 'test_assets' slot (\"Block List\") collection." ;
sh:minCount 1 ;
sh:nodeKind sh:IRI ;
sh:order 1 ;
sh:path ttm:test_assets ],
- [ sh:description "The component that this test case is intended to run against. Most often this is the ARS for acceptance tests, but for the Benchmarks repo integration, this can also be individual components of the system like Aragorn, or ARAX." ;
- sh:in [ rdf:rest () ] ;
- sh:order 12 ;
- sh:path ttm:components ],
[ sh:datatype xsd:string ;
sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
sh:order 16 ;
sh:path schema1:description ],
+ [ sh:description "Type of TestCase query." ;
+ sh:in ( "treats" ) ;
+ sh:maxCount 1 ;
+ sh:order 0 ;
+ sh:path ttm:query_type ],
+ [ sh:class ttm:Qualifier ;
+ sh:description "Optional qualifiers which constrain to the test asset defined knowledge statement. Note that this field records such qualifier slots and values as tag=value pairs, where the tag is the Biolink Model qualifier slot named and the value is an acceptable (Biolink Model enum?) value of the said qualifier slot." ;
+ sh:nodeKind sh:BlankNodeOrIRI ;
+ sh:order 9 ;
+ sh:path ttm:qualifiers ],
+ [ sh:class ttm:Precondition ;
+ sh:nodeKind sh:IRI ;
+ sh:order 2 ;
+ sh:path ttm:preconditions ],
+ [ sh:description "Provenance of a specific set of test assets, cases and/or suites. Or, the person who cares about this, know about this. We would like this to be an ORCID eventually, but currently it is just a string." ;
+ sh:in ( "SME" "SMURF" "GitHubUserFeedback" "TACT" "BenchMark" "TranslatorTeam" "TestDataLocation" ) ;
+ sh:maxCount 1 ;
+ sh:order 5 ;
+ sh:path ttm:test_case_source ],
[ sh:description "Deployment environment within which the associated TestSuite is run." ;
sh:in ( "dev" "ci" "test" "prod" ) ;
sh:maxCount 1 ;
sh:order 13 ;
sh:path ttm:test_env ],
- [ sh:description "A template for a query, which can be used to generate a query for a test case. note: the current enumerated values for this slot come from the Benchmarks repo config/benchmarks.json \"templates\" collection and refer to the \"name\" field of each template. Templates themselves are currently stored in the config/[source_name]/templates directory." ;
- sh:in ( "ameliorates" "treats" "three_hop" "drug_treats_rare_disease" "drug-to-gene" ) ;
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 3 ;
- sh:path ttm:trapi_template ],
+ sh:order 15 ;
+ sh:path schema1:name ],
[ sh:maxCount 1 ;
- sh:order 10 ;
- sh:path ttm:input_category ],
- [ sh:class ttm:Precondition ;
- sh:nodeKind sh:IRI ;
- sh:order 2 ;
- sh:path ttm:preconditions ],
- [ sh:datatype xsd:string ;
- sh:description "One or more 'tags' slot values (slot inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in a \"Block List\" collection." ;
- sh:order 17 ;
- sh:path schema1:additionalType ],
+ sh:order 11 ;
+ sh:path ttm:output_category ],
[ sh:description "Testing objective behind specified set of test particulars (e.g. acceptance pass/fail; benchmark; quantitative; standards compliance; graph navigation integrity)" ;
sh:in ( "AcceptanceTest" "BenchmarkTest" "QuantitativeTest" "StandardsValidationTest" "OneHopTest" ) ;
sh:maxCount 1 ;
sh:order 4 ;
sh:path ttm:test_case_objective ],
- [ sh:class ttm:Qualifier ;
- sh:description "Optional qualifiers which constrain to the test asset defined knowledge statement. Note that this field records such qualifier slots and values as tag=value pairs, where the tag is the Biolink Model qualifier slot named and the value is an acceptable (Biolink Model enum?) value of the said qualifier slot." ;
- sh:nodeKind sh:BlankNodeOrIRI ;
- sh:order 9 ;
- sh:path ttm:qualifiers ],
+ [ sh:datatype xsd:string ;
+ sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
+ sh:order 18 ;
+ sh:path ttm:test_runner_settings ],
[ sh:datatype xsd:string ;
sh:maxCount 1 ;
sh:order 7 ;
sh:path ttm:test_case_predicate_id ],
- [ sh:description "A unique identifier for a Test Entity" ;
- sh:maxCount 1 ;
- sh:minCount 1 ;
- sh:order 14 ;
- sh:path schema1:identifier ] ;
+ [ sh:maxCount 1 ;
+ sh:order 8 ;
+ sh:path ttm:test_case_input_id ],
+ [ sh:datatype xsd:string ;
+ sh:description "One or more 'tags' slot values (slot inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in a \"Block List\" collection." ;
+ sh:order 17 ;
+ sh:path schema1:additionalType ] ;
sh:targetClass ttm:QuantitativeTestCase .
ttm:StandardsComplianceTestSuite a sh:NodeShape ;
sh:closed true ;
sh:description "Test suite for testing Translator components against releases of standards like TRAPI and the Biolink Model." ;
sh:ignoredProperties ( rdf:type ) ;
- sh:property [ sh:datatype xsd:string ;
- sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
- sh:order 8 ;
- sh:path ttm:test_runner_settings ],
- [ sh:class ttm:TestSuiteSpecification ;
+ sh:property [ sh:class ttm:TestSuiteSpecification ;
sh:description "Declarative specification of a Test Suite of Test Cases whose generation is deferred, (i.e. within a Test Runner) or whose creation is achieved by stream processing of an external data source." ;
sh:maxCount 1 ;
sh:nodeKind sh:IRI ;
@@ -309,72 +306,69 @@ ttm:StandardsComplianceTestSuite a sh:NodeShape ;
sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
sh:order 7 ;
sh:path schema1:additionalType ],
- [ sh:class ttm:TestMetadata ;
- sh:description "Test metadata describes the external provenance, cross-references and objectives for a given test." ;
- sh:maxCount 1 ;
- sh:nodeKind sh:IRI ;
- sh:order 0 ;
- sh:path ttm:test_metadata ],
- [ sh:class ttm:TestCase ;
- sh:description "List of explicitly enumerated Test Cases." ;
- sh:nodeKind sh:IRI ;
- sh:order 2 ;
- sh:path ttm:test_cases ],
[ sh:datatype xsd:string ;
sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
sh:order 5 ;
sh:path schema1:name ],
+ [ sh:datatype xsd:string ;
+ sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
+ sh:order 8 ;
+ sh:path ttm:test_runner_settings ],
[ sh:description "A Test persona describes the user or operational context of a given test." ;
sh:in ( "All" "Clinical" "LookUp" "Mechanistic" ) ;
sh:maxCount 1 ;
sh:order 1 ;
sh:path ttm:test_persona ],
+ [ sh:class ttm:TestCase ;
+ sh:description "List of explicitly enumerated Test Cases." ;
+ sh:nodeKind sh:IRI ;
+ sh:order 2 ;
+ sh:path ttm:test_cases ],
+ [ sh:description "A unique identifier for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:minCount 1 ;
+ sh:order 4 ;
+ sh:path schema1:identifier ],
[ sh:datatype xsd:string ;
sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
sh:order 6 ;
sh:path schema1:description ],
- [ sh:description "A unique identifier for a Test Entity" ;
+ [ sh:class ttm:TestMetadata ;
+ sh:description "Test metadata describes the external provenance, cross-references and objectives for a given test." ;
sh:maxCount 1 ;
- sh:minCount 1 ;
- sh:order 4 ;
- sh:path schema1:identifier ] ;
+ sh:nodeKind sh:IRI ;
+ sh:order 0 ;
+ sh:path ttm:test_metadata ] ;
sh:targetClass ttm:StandardsComplianceTestSuite .
ttm:TestEdgeData a sh:NodeShape ;
sh:closed true ;
sh:description "Represents a single Biolink Model compliant instance of a subject-predicate-object edge that can be used for testing." ;
sh:ignoredProperties ( rdf:type ) ;
- sh:property [ sh:datatype xsd:string ;
+ sh:property [ sh:description "Document URL where original test source particulars are registered (e.g. Github repo)" ;
sh:maxCount 1 ;
- sh:order 1 ;
- sh:path ttm:input_name ],
+ sh:order 15 ;
+ sh:path ttm:test_reference ],
+ [ sh:description "Specific Biolink Model association 'category' which applies to the test asset defined knowledge statement" ;
+ sh:maxCount 1 ;
+ sh:order 8 ;
+ sh:path ttm:association ],
[ sh:description "A unique identifier for a Test Entity" ;
sh:maxCount 1 ;
sh:minCount 1 ;
sh:order 17 ;
sh:path schema1:identifier ],
- [ sh:datatype xsd:string ;
+ [ sh:in ( "High" "Low" "NotApplicable" ) ;
sh:maxCount 1 ;
- sh:order 4 ;
- sh:path ttm:predicate_name ],
+ sh:order 12 ;
+ sh:path ttm:semantic_severity ],
[ sh:class ttm:Qualifier ;
sh:description "Optional qualifiers which constrain to the test asset defined knowledge statement. Note that this field records such qualifier slots and values as tag=value pairs, where the tag is the Biolink Model qualifier slot named and the value is an acceptable (Biolink Model enum?) value of the said qualifier slot." ;
sh:nodeKind sh:BlankNodeOrIRI ;
sh:order 9 ;
sh:path ttm:qualifiers ],
- [ sh:maxCount 1 ;
- sh:order 3 ;
- sh:path ttm:predicate_id ],
- [ sh:datatype xsd:string ;
- sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined to specify TestAsset membership in a \"Block List\" collection" ;
- sh:order 20 ;
- sh:path schema1:additionalType ],
- [ sh:description "Specific Biolink Model association 'category' which applies to the test asset defined knowledge statement" ;
- sh:maxCount 1 ;
- sh:order 8 ;
- sh:path ttm:association ],
[ sh:maxCount 1 ;
sh:order 7 ;
sh:path ttm:output_category ],
@@ -384,112 +378,137 @@ ttm:TestEdgeData a sh:NodeShape ;
sh:nodeKind sh:IRI ;
sh:order 16 ;
sh:path ttm:test_metadata ],
- [ sh:description "Document URL where original test source particulars are registered (e.g. Github repo)" ;
+ [ sh:datatype xsd:string ;
sh:maxCount 1 ;
- sh:order 15 ;
- sh:path ttm:test_reference ],
+ sh:order 1 ;
+ sh:path ttm:input_name ],
+ [ sh:datatype xsd:string ;
+ sh:maxCount 1 ;
+ sh:order 4 ;
+ sh:path ttm:predicate_name ],
+ [ sh:maxCount 1 ;
+ sh:order 5 ;
+ sh:path ttm:output_id ],
[ sh:in ( "causes not treats" "TMKP" "category too generic" "contraindications" "chemical roles" "test_issue" ) ;
sh:maxCount 1 ;
sh:order 11 ;
sh:path ttm:test_issue ],
[ sh:datatype xsd:string ;
+ sh:description "Scalar settings for the TestRunner, e.g. \"inferred\"" ;
+ sh:order 21 ;
+ sh:path ttm:test_runner_settings ],
+ [ sh:datatype xsd:boolean ;
sh:maxCount 1 ;
- sh:order 10 ;
- sh:path ttm:expected_output ],
+ sh:order 13 ;
+ sh:path ttm:in_v1 ],
[ sh:maxCount 1 ;
- sh:order 5 ;
- sh:path ttm:output_id ],
+ sh:order 3 ;
+ sh:path ttm:predicate_id ],
[ sh:datatype xsd:string ;
sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
sh:order 19 ;
sh:path schema1:description ],
- [ sh:datatype xsd:string ;
- sh:maxCount 1 ;
- sh:order 6 ;
- sh:path ttm:output_name ],
- [ sh:maxCount 1 ;
- sh:order 0 ;
- sh:path ttm:input_id ],
- [ sh:datatype xsd:boolean ;
- sh:maxCount 1 ;
- sh:order 14 ;
- sh:path ttm:well_known ],
- [ sh:datatype xsd:string ;
- sh:description "Scalar settings for the TestRunner, e.g. \"inferred\"" ;
- sh:order 21 ;
- sh:path ttm:test_runner_settings ],
[ sh:datatype xsd:string ;
sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
sh:order 18 ;
sh:path schema1:name ],
+ [ sh:datatype xsd:string ;
+ sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined to specify TestAsset membership in a \"Block List\" collection" ;
+ sh:order 20 ;
+ sh:path schema1:additionalType ],
[ sh:maxCount 1 ;
sh:order 2 ;
sh:path ttm:input_category ],
- [ sh:in ( "High" "Low" "NotApplicable" ) ;
+ [ sh:maxCount 1 ;
+ sh:order 0 ;
+ sh:path ttm:input_id ],
+ [ sh:datatype xsd:string ;
sh:maxCount 1 ;
- sh:order 12 ;
- sh:path ttm:semantic_severity ],
+ sh:order 10 ;
+ sh:path ttm:expected_output ],
+ [ sh:datatype xsd:string ;
+ sh:maxCount 1 ;
+ sh:order 6 ;
+ sh:path ttm:output_name ],
[ sh:datatype xsd:boolean ;
sh:maxCount 1 ;
- sh:order 13 ;
- sh:path ttm:in_v1 ] ;
+ sh:order 14 ;
+ sh:path ttm:well_known ] ;
sh:targetClass ttm:TestEdgeData .
ttm:TestOutput a sh:NodeShape ;
sh:closed true ;
sh:description "The output of a TestRunner run of one specific TestCase." ;
sh:ignoredProperties ( rdf:type ) ;
- sh:property [ sh:class ttm:TestResultPKSet ;
- sh:description "Primary keys for a given ARA result set from a SmokeTest result for a given TestCase." ;
- sh:nodeKind sh:IRI ;
- sh:order 1 ;
- sh:path ttm:pks ],
- [ sh:datatype xsd:string ;
- sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
- sh:order 6 ;
- sh:path ttm:test_runner_settings ],
- [ sh:datatype xsd:string ;
+ sh:property [ sh:datatype xsd:string ;
sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
sh:order 3 ;
sh:path schema1:name ],
+ [ sh:description "A unique identifier for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:minCount 1 ;
+ sh:order 2 ;
+ sh:path schema1:identifier ],
[ sh:datatype xsd:string ;
sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
sh:order 4 ;
sh:path schema1:description ],
+ [ sh:class ttm:TestResultPKSet ;
+ sh:description "Primary keys for a given ARA result set from a SmokeTest result for a given TestCase." ;
+ sh:nodeKind sh:IRI ;
+ sh:order 1 ;
+ sh:path ttm:pks ],
[ sh:datatype xsd:string ;
sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
sh:order 5 ;
sh:path schema1:additionalType ],
- [ sh:description "A unique identifier for a Test Entity" ;
- sh:maxCount 1 ;
- sh:minCount 1 ;
- sh:order 2 ;
- sh:path schema1:identifier ],
[ sh:datatype xsd:string ;
sh:description "CURIE id of a TestCase registered in the system." ;
sh:maxCount 1 ;
sh:order 0 ;
- sh:path ttm:test_case_id ] ;
+ sh:path ttm:test_case_id ],
+ [ sh:datatype xsd:string ;
+ sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
+ sh:order 6 ;
+ sh:path ttm:test_runner_settings ] ;
sh:targetClass ttm:TestOutput .
ttm:TestRunSession a sh:NodeShape ;
sh:closed true ;
sh:description "Single run of a TestRunner in a given environment, with a specified set of test_entities (generally, one or more instances of TestSuite)." ;
sh:ignoredProperties ( rdf:type ) ;
- sh:property [ sh:description "Deployment environment within which the associated TestSuite is run." ;
+ sh:property [ sh:datatype xsd:string ;
+ sh:description "A human-readable description for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:order 9 ;
+ sh:path schema1:description ],
+ [ sh:description "A unique identifier for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:minCount 1 ;
+ sh:order 7 ;
+ sh:path schema1:identifier ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable name for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:order 8 ;
+ sh:path schema1:name ],
+ [ sh:description "The component that this test case is intended to run against. Most often this is the ARS for acceptance tests, but for the Benchmarks repo integration, this can also be individual components of the system like Aragorn, or ARAX." ;
+ sh:in ( infores:ncats-ars infores:arax infores:explanatory-agent infores:improving-agent infores:aragorn infores:biothings-explorer infores:unsecret-agent infores:rtx-kg2 infores:icees-kg infores:cam-kp infores:spoke infores:molepro infores:textmining-kp infores:cohd infores:openpredict infores:knowledge-collaboratory infores:connections-hypothesis ) ;
+ sh:order 0 ;
+ sh:path ttm:components ],
+ [ sh:description "Deployment environment within which the associated TestSuite is run." ;
sh:in ( "dev" "ci" "test" "prod" ) ;
sh:maxCount 1 ;
sh:order 1 ;
sh:path ttm:test_env ],
[ sh:datatype xsd:string ;
- sh:description "Global system name of a TestRunner." ;
- sh:maxCount 1 ;
- sh:order 2 ;
- sh:path ttm:test_runner_name ],
+ sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
+ sh:order 11 ;
+ sh:path ttm:test_runner_settings ],
[ sh:datatype xsd:dateTime ;
sh:description "Date time when a given entity was created." ;
sh:maxCount 1 ;
@@ -500,43 +519,25 @@ ttm:TestRunSession a sh:NodeShape ;
sh:nodeKind sh:IRI ;
sh:order 4 ;
sh:path ttm:test_entities ],
- [ sh:datatype xsd:string ;
- sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
- sh:order 11 ;
- sh:path ttm:test_runner_settings ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable description for a Test Entity" ;
- sh:maxCount 1 ;
- sh:order 9 ;
- sh:path schema1:description ],
- [ sh:description "The component that this test case is intended to run against. Most often this is the ARS for acceptance tests, but for the Benchmarks repo integration, this can also be individual components of the system like Aragorn, or ARAX." ;
- sh:in [ rdf:rest () ] ;
- sh:order 0 ;
- sh:path ttm:components ],
- [ sh:description "A unique identifier for a Test Entity" ;
- sh:maxCount 1 ;
- sh:minCount 1 ;
- sh:order 7 ;
- sh:path schema1:identifier ],
+ [ sh:class ttm:TestCaseResult ;
+ sh:description "One or more instances of TestCaseResult." ;
+ sh:nodeKind sh:IRI ;
+ sh:order 5 ;
+ sh:path ttm:test_case_results ],
[ sh:datatype xsd:string ;
sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
sh:order 10 ;
sh:path schema1:additionalType ],
[ sh:datatype xsd:string ;
- sh:description "A human-readable name for a Test Entity" ;
+ sh:description "Global system name of a TestRunner." ;
sh:maxCount 1 ;
- sh:order 8 ;
- sh:path schema1:name ],
+ sh:order 2 ;
+ sh:path ttm:test_runner_name ],
[ sh:class ttm:TestEntityParameter ;
sh:description "Different TestRunners could expect additional global test configuration parameters, like the applicable TRAPI version (\"trapi_version\") or Biolink Model versions (\"biolink_version\")." ;
sh:nodeKind sh:BlankNodeOrIRI ;
sh:order 3 ;
- sh:path ttm:test_run_parameters ],
- [ sh:class ttm:TestCaseResult ;
- sh:description "One or more instances of TestCaseResult." ;
- sh:nodeKind sh:IRI ;
- sh:order 5 ;
- sh:path ttm:test_case_results ] ;
+ sh:path ttm:test_run_parameters ] ;
sh:targetClass ttm:TestRunSession .
ttm:TestSuite a sh:NodeShape ;
@@ -544,10 +545,19 @@ ttm:TestSuite a sh:NodeShape ;
sh:description "Specification of a set of Test Cases, one of either with a static list of 'test_cases' or a dynamic 'test_suite_specification' slot values. Note: at least one slot or the other, but generally not both(?) needs to be present." ;
sh:ignoredProperties ( rdf:type ) ;
sh:property [ sh:datatype xsd:string ;
- sh:description "A human-readable description for a Test Entity" ;
+ sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 6 ;
- sh:path schema1:description ],
+ sh:order 5 ;
+ sh:path schema1:name ],
+ [ sh:class ttm:TestCase ;
+ sh:description "List of explicitly enumerated Test Cases." ;
+ sh:nodeKind sh:IRI ;
+ sh:order 2 ;
+ sh:path ttm:test_cases ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
+ sh:order 7 ;
+ sh:path schema1:additionalType ],
[ sh:class ttm:TestSuiteSpecification ;
sh:description "Declarative specification of a Test Suite of Test Cases whose generation is deferred, (i.e. within a Test Runner) or whose creation is achieved by stream processing of an external data source." ;
sh:maxCount 1 ;
@@ -558,139 +568,146 @@ ttm:TestSuite a sh:NodeShape ;
sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
sh:order 8 ;
sh:path ttm:test_runner_settings ],
- [ sh:description "A Test persona describes the user or operational context of a given test." ;
- sh:in ( "All" "Clinical" "LookUp" "Mechanistic" ) ;
+ [ sh:class ttm:TestMetadata ;
+ sh:description "Test metadata describes the external provenance, cross-references and objectives for a given test." ;
sh:maxCount 1 ;
- sh:order 1 ;
- sh:path ttm:test_persona ],
+ sh:nodeKind sh:IRI ;
+ sh:order 0 ;
+ sh:path ttm:test_metadata ],
[ sh:description "A unique identifier for a Test Entity" ;
sh:maxCount 1 ;
sh:minCount 1 ;
sh:order 4 ;
sh:path schema1:identifier ],
[ sh:datatype xsd:string ;
- sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
- sh:order 7 ;
- sh:path schema1:additionalType ],
- [ sh:class ttm:TestMetadata ;
- sh:description "Test metadata describes the external provenance, cross-references and objectives for a given test." ;
+ sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
- sh:nodeKind sh:IRI ;
- sh:order 0 ;
- sh:path ttm:test_metadata ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable name for a Test Entity" ;
+ sh:order 6 ;
+ sh:path schema1:description ],
+ [ sh:description "A Test persona describes the user or operational context of a given test." ;
+ sh:in ( "All" "Clinical" "LookUp" "Mechanistic" ) ;
sh:maxCount 1 ;
- sh:order 5 ;
- sh:path schema1:name ],
- [ sh:class ttm:TestCase ;
- sh:description "List of explicitly enumerated Test Cases." ;
- sh:nodeKind sh:IRI ;
- sh:order 2 ;
- sh:path ttm:test_cases ] ;
+ sh:order 1 ;
+ sh:path ttm:test_persona ] ;
sh:targetClass ttm:TestSuite .
ttm:AcceptanceTestAsset a sh:NodeShape ;
sh:closed true ;
sh:description "Model derived from Jenn's test asset design and Shervin's runner JSON here as an example." ;
sh:ignoredProperties ( rdf:type ) ;
- sh:property [ sh:datatype xsd:string ;
- sh:description "The notes of the query" ;
- sh:maxCount 1 ;
- sh:order 9 ;
- sh:path ttm:notes ],
- [ sh:description "A unique identifier for a Test Entity" ;
- sh:maxCount 1 ;
- sh:minCount 1 ;
- sh:order 27 ;
- sh:path schema1:identifier ],
- [ sh:description "The expected result of the query" ;
+ sh:property [ sh:description "The expected result of the query" ;
sh:in ( "include_good" "exclude_bad" ) ;
sh:maxCount 1 ;
sh:order 6 ;
sh:path ttm:expected_result ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable name for a Test Entity" ;
- sh:maxCount 1 ;
- sh:order 28 ;
- sh:path schema1:name ],
[ sh:class ttm:TestMetadata ;
sh:description "Test metadata describes the external provenance, cross-references and objectives for a given test." ;
sh:maxCount 1 ;
sh:nodeKind sh:IRI ;
sh:order 26 ;
sh:path ttm:test_metadata ],
- [ sh:datatype xsd:date ;
- sh:description "The date by which this test must pass" ;
+ [ sh:in ( "High" "Low" "NotApplicable" ) ;
sh:maxCount 1 ;
- sh:order 0 ;
- sh:path ttm:must_pass_date ],
+ sh:order 22 ;
+ sh:path ttm:semantic_severity ],
+ [ sh:maxCount 1 ;
+ sh:order 10 ;
+ sh:path ttm:input_id ],
[ sh:datatype xsd:boolean ;
sh:maxCount 1 ;
sh:order 24 ;
sh:path ttm:well_known ],
+ [ sh:description "The direction of the expected query result triple" ;
+ sh:in ( "increased" "decreased" ) ;
+ sh:maxCount 1 ;
+ sh:order 4 ;
+ sh:path ttm:direction ],
+ [ sh:maxCount 1 ;
+ sh:order 13 ;
+ sh:path ttm:predicate_id ],
+ [ sh:datatype xsd:integer ;
+ sh:description "The answer must return in these many results" ;
+ sh:maxCount 1 ;
+ sh:order 7 ;
+ sh:path ttm:top_level ],
+ [ sh:description "A unique identifier for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:minCount 1 ;
+ sh:order 27 ;
+ sh:path schema1:identifier ],
[ sh:datatype xsd:string ;
- sh:description "The object of the core triple to be tested" ;
sh:maxCount 1 ;
- sh:order 3 ;
- sh:path ttm:string_entry ],
+ sh:order 16 ;
+ sh:path ttm:output_name ],
+ [ sh:description "Specific Biolink Model association 'category' which applies to the test asset defined knowledge statement" ;
+ sh:maxCount 1 ;
+ sh:order 18 ;
+ sh:path ttm:association ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable description for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:order 29 ;
+ sh:path schema1:description ],
+ [ sh:datatype xsd:string ;
+ sh:maxCount 1 ;
+ sh:order 11 ;
+ sh:path ttm:input_name ],
+ [ sh:datatype xsd:string ;
+ sh:description "The full human-readable scientific question a SME would ask, which is encoded into the test asset." ;
+ sh:maxCount 1 ;
+ sh:order 2 ;
+ sh:path ttm:scientific_question ],
+ [ sh:datatype xsd:string ;
+ sh:description "The notes of the query" ;
+ sh:maxCount 1 ;
+ sh:order 9 ;
+ sh:path ttm:notes ],
+ [ sh:description "The node of the (templated) TRAPI query to replace" ;
+ sh:in ( "subject" "object" ) ;
+ sh:maxCount 1 ;
+ sh:order 8 ;
+ sh:path ttm:query_node ],
[ sh:description "The deployment environment within which this test must pass." ;
sh:in ( "dev" "ci" "test" "prod" ) ;
sh:maxCount 1 ;
sh:order 1 ;
sh:path ttm:must_pass_environment ],
+ [ sh:in ( "causes not treats" "TMKP" "category too generic" "contraindications" "chemical roles" "test_issue" ) ;
+ sh:maxCount 1 ;
+ sh:order 21 ;
+ sh:path ttm:test_issue ],
+ [ sh:datatype xsd:string ;
+ sh:maxCount 1 ;
+ sh:order 20 ;
+ sh:path ttm:expected_output ],
[ sh:maxCount 1 ;
- sh:order 10 ;
- sh:path ttm:input_id ],
+ sh:order 17 ;
+ sh:path ttm:output_category ],
+ [ sh:datatype xsd:date ;
+ sh:description "The date by which this test must pass" ;
+ sh:maxCount 1 ;
+ sh:order 0 ;
+ sh:path ttm:must_pass_date ],
[ sh:maxCount 1 ;
sh:order 15 ;
sh:path ttm:output_id ],
- [ sh:description "The direction of the expected query result triple" ;
- sh:in ( "increased" "decreased" ) ;
- sh:maxCount 1 ;
- sh:order 4 ;
- sh:path ttm:direction ],
- [ sh:in ( "High" "Low" "NotApplicable" ) ;
+ [ sh:datatype xsd:string ;
+ sh:description "An answer that is returned from the test case, note: this must be combined with the expected_result to form a complete answer. It might make sense to couple these in their own object instead of strictly sticking to the flat schema introduced by the spreadsheet here: https://docs.google.com/spreadsheets/d/1yj7zIchFeVl1OHqL_kE_pqvzNLmGml_FLbHDs-8Yvig/edit#gid=0" ;
sh:maxCount 1 ;
- sh:order 22 ;
- sh:path ttm:semantic_severity ],
+ sh:order 5 ;
+ sh:path ttm:answer_informal_concept ],
[ sh:maxCount 1 ;
sh:order 12 ;
sh:path ttm:input_category ],
[ sh:datatype xsd:string ;
- sh:description "A human-readable description for a Test Entity" ;
- sh:maxCount 1 ;
- sh:order 29 ;
- sh:path schema1:description ],
- [ sh:description "Document URL where original test source particulars are registered (e.g. Github repo)" ;
+ sh:description "The object of the core triple to be tested" ;
sh:maxCount 1 ;
- sh:order 25 ;
- sh:path ttm:test_reference ],
+ sh:order 3 ;
+ sh:path ttm:string_entry ],
[ sh:datatype xsd:boolean ;
sh:maxCount 1 ;
sh:order 23 ;
sh:path ttm:in_v1 ],
- [ sh:datatype xsd:string ;
- sh:maxCount 1 ;
- sh:order 20 ;
- sh:path ttm:expected_output ],
- [ sh:datatype xsd:string ;
- sh:description "Scalar settings for the TestRunner, e.g. \"inferred\"" ;
- sh:order 31 ;
- sh:path ttm:test_runner_settings ],
- [ sh:datatype xsd:string ;
- sh:maxCount 1 ;
- sh:order 11 ;
- sh:path ttm:input_name ],
- [ sh:datatype xsd:string ;
- sh:description "An answer that is returned from the test case, note: this must be combined with the expected_result to form a complete answer. It might make sense to couple these in their own object instead of strictly sticking to the flat schema introduced by the spreadsheet here: https://docs.google.com/spreadsheets/d/1yj7zIchFeVl1OHqL_kE_pqvzNLmGml_FLbHDs-8Yvig/edit#gid=0" ;
- sh:maxCount 1 ;
- sh:order 5 ;
- sh:path ttm:answer_informal_concept ],
- [ sh:datatype xsd:string ;
- sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined to specify TestAsset membership in a \"Block List\" collection" ;
- sh:order 30 ;
- sh:path schema1:additionalType ],
[ sh:class ttm:Qualifier ;
sh:description "Optional qualifiers which constrain to the test asset defined knowledge statement. Note that this field records such qualifier slots and values as tag=value pairs, where the tag is the Biolink Model qualifier slot named and the value is an acceptable (Biolink Model enum?) value of the said qualifier slot." ;
sh:nodeKind sh:BlankNodeOrIRI ;
@@ -700,39 +717,23 @@ ttm:AcceptanceTestAsset a sh:NodeShape ;
sh:maxCount 1 ;
sh:order 14 ;
sh:path ttm:predicate_name ],
- [ sh:description "The node of the (templated) TRAPI query to replace" ;
- sh:in ( "subject" "object" ) ;
- sh:maxCount 1 ;
- sh:order 8 ;
- sh:path ttm:query_node ],
- [ sh:description "Specific Biolink Model association 'category' which applies to the test asset defined knowledge statement" ;
- sh:maxCount 1 ;
- sh:order 18 ;
- sh:path ttm:association ],
- [ sh:maxCount 1 ;
- sh:order 13 ;
- sh:path ttm:predicate_id ],
[ sh:datatype xsd:string ;
- sh:description "The full human-readable scientific question a SME would ask, which is encoded into the test asset." ;
- sh:maxCount 1 ;
- sh:order 2 ;
- sh:path ttm:scientific_question ],
- [ sh:in ( "causes not treats" "TMKP" "category too generic" "contraindications" "chemical roles" "test_issue" ) ;
- sh:maxCount 1 ;
- sh:order 21 ;
- sh:path ttm:test_issue ],
- [ sh:datatype xsd:integer ;
- sh:description "The answer must return in these many results" ;
- sh:maxCount 1 ;
- sh:order 7 ;
- sh:path ttm:top_level ],
- [ sh:maxCount 1 ;
- sh:order 17 ;
- sh:path ttm:output_category ],
+ sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined to specify TestAsset membership in a \"Block List\" collection" ;
+ sh:order 30 ;
+ sh:path schema1:additionalType ],
+ [ sh:datatype xsd:string ;
+ sh:description "Scalar settings for the TestRunner, e.g. \"inferred\"" ;
+ sh:order 31 ;
+ sh:path ttm:test_runner_settings ],
[ sh:datatype xsd:string ;
+ sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 16 ;
- sh:path ttm:output_name ] ;
+ sh:order 28 ;
+ sh:path schema1:name ],
+ [ sh:description "Document URL where original test source particulars are registered (e.g. Github repo)" ;
+ sh:maxCount 1 ;
+ sh:order 25 ;
+ sh:path ttm:test_reference ] ;
sh:targetClass ttm:AcceptanceTestAsset .
ttm:TestCaseResult a sh:NodeShape ;
@@ -740,6 +741,25 @@ ttm:TestCaseResult a sh:NodeShape ;
sh:description "The outcome of a TestRunner run of one specific TestCase." ;
sh:ignoredProperties ( rdf:type ) ;
sh:property [ sh:datatype xsd:string ;
+ sh:description "A human-readable name for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:order 4 ;
+ sh:path schema1:name ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable description for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:order 5 ;
+ sh:path schema1:description ],
+ [ sh:description "Encoded result of a single test run of a given test case" ;
+ sh:in ( "PASSED" "FAILED" "SKIPPED" ) ;
+ sh:maxCount 1 ;
+ sh:order 2 ;
+ sh:path ttm:test_case_result ],
+ [ sh:description "CURIE id of a TestSuite registered in the system." ;
+ sh:maxCount 1 ;
+ sh:order 0 ;
+ sh:path ttm:test_suite_id ],
+ [ sh:datatype xsd:string ;
sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
sh:order 6 ;
sh:path schema1:additionalType ],
@@ -752,31 +772,12 @@ ttm:TestCaseResult a sh:NodeShape ;
sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
sh:order 7 ;
sh:path ttm:test_runner_settings ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable description for a Test Entity" ;
- sh:maxCount 1 ;
- sh:order 5 ;
- sh:path schema1:description ],
[ sh:class ttm:TestCase ;
sh:description "Slot referencing a single TestCase." ;
sh:maxCount 1 ;
sh:nodeKind sh:IRI ;
sh:order 1 ;
- sh:path ttm:test_case ],
- [ sh:description "Encoded result of a single test run of a given test case" ;
- sh:in ( "PASSED" "FAILED" "SKIPPED" ) ;
- sh:maxCount 1 ;
- sh:order 2 ;
- sh:path ttm:test_case_result ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable name for a Test Entity" ;
- sh:maxCount 1 ;
- sh:order 4 ;
- sh:path schema1:name ],
- [ sh:description "CURIE id of a TestSuite registered in the system." ;
- sh:maxCount 1 ;
- sh:order 0 ;
- sh:path ttm:test_suite_id ] ;
+ sh:path ttm:test_case ] ;
sh:targetClass ttm:TestCaseResult .
ttm:TestEntity a sh:NodeShape ;
@@ -784,10 +785,10 @@ ttm:TestEntity a sh:NodeShape ;
sh:description "Abstract global 'identification' class shared as a parent with all major model classes within the data model for Translator testing." ;
sh:ignoredProperties ( rdf:type ) ;
sh:property [ sh:datatype xsd:string ;
- sh:description "A human-readable name for a Test Entity" ;
+ sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 1 ;
- sh:path schema1:name ],
+ sh:order 2 ;
+ sh:path schema1:description ],
[ sh:datatype xsd:string ;
sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
sh:order 4 ;
@@ -797,10 +798,10 @@ ttm:TestEntity a sh:NodeShape ;
sh:order 0 ;
sh:path schema1:identifier ],
[ sh:datatype xsd:string ;
- sh:description "A human-readable description for a Test Entity" ;
+ sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 2 ;
- sh:path schema1:description ],
+ sh:order 1 ;
+ sh:path schema1:name ],
[ sh:datatype xsd:string ;
sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
sh:order 3 ;
@@ -813,41 +814,33 @@ ttm:TestResultPKSet a sh:NodeShape ;
sh:ignoredProperties ( rdf:type ) ;
sh:property [ sh:datatype xsd:string ;
sh:maxCount 1 ;
- sh:order 1 ;
- sh:path ttm:merged_pk ],
+ sh:order 5 ;
+ sh:path ttm:bte ],
[ sh:datatype xsd:string ;
- sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
- sh:order 10 ;
- sh:path schema1:additionalType ],
- [ sh:description "A unique identifier for a Test Entity" ;
sh:maxCount 1 ;
- sh:minCount 1 ;
- sh:order 7 ;
- sh:path schema1:identifier ],
+ sh:order 4 ;
+ sh:path ttm:unsecret ],
[ sh:datatype xsd:string ;
+ sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 2 ;
- sh:path ttm:aragorn ],
+ sh:order 9 ;
+ sh:path schema1:description ],
+ [ sh:datatype xsd:string ;
+ sh:maxCount 1 ;
+ sh:order 6 ;
+ sh:path ttm:improving ],
[ sh:datatype xsd:string ;
sh:maxCount 1 ;
sh:order 3 ;
sh:path ttm:arax ],
[ sh:datatype xsd:string ;
- sh:maxCount 1 ;
- sh:order 4 ;
- sh:path ttm:unsecret ],
+ sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
+ sh:order 10 ;
+ sh:path schema1:additionalType ],
[ sh:datatype xsd:string ;
sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
sh:order 11 ;
sh:path ttm:test_runner_settings ],
- [ sh:datatype xsd:string ;
- sh:maxCount 1 ;
- sh:order 0 ;
- sh:path ttm:parent_pk ],
- [ sh:datatype xsd:string ;
- sh:maxCount 1 ;
- sh:order 5 ;
- sh:path ttm:bte ],
[ sh:datatype xsd:string ;
sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
@@ -855,13 +848,21 @@ ttm:TestResultPKSet a sh:NodeShape ;
sh:path schema1:name ],
[ sh:datatype xsd:string ;
sh:maxCount 1 ;
- sh:order 6 ;
- sh:path ttm:improving ],
+ sh:order 1 ;
+ sh:path ttm:merged_pk ],
[ sh:datatype xsd:string ;
- sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 9 ;
- sh:path schema1:description ] ;
+ sh:order 0 ;
+ sh:path ttm:parent_pk ],
+ [ sh:description "A unique identifier for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:minCount 1 ;
+ sh:order 7 ;
+ sh:path schema1:identifier ],
+ [ sh:datatype xsd:string ;
+ sh:maxCount 1 ;
+ sh:order 2 ;
+ sh:path ttm:aragorn ] ;
sh:targetClass ttm:TestResultPKSet .
ttm:TestAsset a sh:NodeShape ;
@@ -869,94 +870,94 @@ ttm:TestAsset a sh:NodeShape ;
sh:description "Represents a Test Asset, which is a single specific instance of TestCase-agnostic semantic parameters representing the specification of a Translator test target with inputs and (expected) outputs." ;
sh:ignoredProperties ( rdf:type ) ;
sh:property [ sh:datatype xsd:string ;
+ sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 6 ;
- sh:path ttm:output_name ],
+ sh:order 19 ;
+ sh:path schema1:description ],
+ [ sh:datatype xsd:string ;
+ sh:maxCount 1 ;
+ sh:order 10 ;
+ sh:path ttm:expected_output ],
[ sh:maxCount 1 ;
- sh:order 7 ;
- sh:path ttm:output_category ],
+ sh:order 0 ;
+ sh:path ttm:input_id ],
+ [ sh:datatype xsd:string ;
+ sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined to specify TestAsset membership in a \"Block List\" collection" ;
+ sh:order 20 ;
+ sh:path schema1:additionalType ],
[ sh:description "Specific Biolink Model association 'category' which applies to the test asset defined knowledge statement" ;
sh:maxCount 1 ;
sh:order 8 ;
sh:path ttm:association ],
+ [ sh:class ttm:Qualifier ;
+ sh:description "Optional qualifiers which constrain to the test asset defined knowledge statement. Note that this field records such qualifier slots and values as tag=value pairs, where the tag is the Biolink Model qualifier slot named and the value is an acceptable (Biolink Model enum?) value of the said qualifier slot." ;
+ sh:nodeKind sh:BlankNodeOrIRI ;
+ sh:order 9 ;
+ sh:path ttm:qualifiers ],
[ sh:in ( "High" "Low" "NotApplicable" ) ;
sh:maxCount 1 ;
sh:order 12 ;
sh:path ttm:semantic_severity ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable name for a Test Entity" ;
+ [ sh:datatype xsd:boolean ;
sh:maxCount 1 ;
- sh:order 18 ;
- sh:path schema1:name ],
+ sh:order 14 ;
+ sh:path ttm:well_known ],
[ sh:maxCount 1 ;
- sh:order 0 ;
- sh:path ttm:input_id ],
- [ sh:in ( "causes not treats" "TMKP" "category too generic" "contraindications" "chemical roles" "test_issue" ) ;
- sh:maxCount 1 ;
- sh:order 11 ;
- sh:path ttm:test_issue ],
+ sh:order 7 ;
+ sh:path ttm:output_category ],
[ sh:datatype xsd:string ;
- sh:description "Scalar settings for the TestRunner, e.g. \"inferred\"" ;
- sh:order 21 ;
- sh:path ttm:test_runner_settings ],
+ sh:maxCount 1 ;
+ sh:order 1 ;
+ sh:path ttm:input_name ],
[ sh:description "Document URL where original test source particulars are registered (e.g. Github repo)" ;
sh:maxCount 1 ;
sh:order 15 ;
sh:path ttm:test_reference ],
+ [ sh:maxCount 1 ;
+ sh:order 3 ;
+ sh:path ttm:predicate_id ],
[ sh:datatype xsd:string ;
+ sh:description "Scalar settings for the TestRunner, e.g. \"inferred\"" ;
+ sh:order 21 ;
+ sh:path ttm:test_runner_settings ],
+ [ sh:in ( "causes not treats" "TMKP" "category too generic" "contraindications" "chemical roles" "test_issue" ) ;
sh:maxCount 1 ;
- sh:order 4 ;
- sh:path ttm:predicate_name ],
- [ sh:datatype xsd:boolean ;
+ sh:order 11 ;
+ sh:path ttm:test_issue ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 13 ;
- sh:path ttm:in_v1 ],
+ sh:order 18 ;
+ sh:path schema1:name ],
[ sh:maxCount 1 ;
sh:order 2 ;
sh:path ttm:input_category ],
- [ sh:datatype xsd:string ;
- sh:maxCount 1 ;
- sh:order 10 ;
- sh:path ttm:expected_output ],
[ sh:datatype xsd:boolean ;
sh:maxCount 1 ;
- sh:order 14 ;
- sh:path ttm:well_known ],
- [ sh:maxCount 1 ;
- sh:order 5 ;
- sh:path ttm:output_id ],
+ sh:order 13 ;
+ sh:path ttm:in_v1 ],
[ sh:datatype xsd:string ;
sh:maxCount 1 ;
- sh:order 1 ;
- sh:path ttm:input_name ],
- [ sh:maxCount 1 ;
- sh:order 3 ;
- sh:path ttm:predicate_id ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable description for a Test Entity" ;
+ sh:order 6 ;
+ sh:path ttm:output_name ],
+ [ sh:description "A unique identifier for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 19 ;
- sh:path schema1:description ],
- [ sh:class ttm:Qualifier ;
- sh:description "Optional qualifiers which constrain to the test asset defined knowledge statement. Note that this field records such qualifier slots and values as tag=value pairs, where the tag is the Biolink Model qualifier slot named and the value is an acceptable (Biolink Model enum?) value of the said qualifier slot." ;
- sh:nodeKind sh:BlankNodeOrIRI ;
- sh:order 9 ;
- sh:path ttm:qualifiers ],
+ sh:minCount 1 ;
+ sh:order 17 ;
+ sh:path schema1:identifier ],
[ sh:class ttm:TestMetadata ;
sh:description "Test metadata describes the external provenance, cross-references and objectives for a given test." ;
sh:maxCount 1 ;
sh:nodeKind sh:IRI ;
sh:order 16 ;
sh:path ttm:test_metadata ],
- [ sh:description "A unique identifier for a Test Entity" ;
- sh:maxCount 1 ;
- sh:minCount 1 ;
- sh:order 17 ;
- sh:path schema1:identifier ],
+ [ sh:maxCount 1 ;
+ sh:order 5 ;
+ sh:path ttm:output_id ],
[ sh:datatype xsd:string ;
- sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined to specify TestAsset membership in a \"Block List\" collection" ;
- sh:order 20 ;
- sh:path schema1:additionalType ] ;
+ sh:maxCount 1 ;
+ sh:order 4 ;
+ sh:path ttm:predicate_name ] ;
sh:targetClass ttm:TestAsset .
ttm:TestEntityParameter a sh:NodeShape ;
@@ -964,15 +965,15 @@ ttm:TestEntityParameter a sh:NodeShape ;
sh:description "A single 'tag = value' pair (where 'value' is a simple string)." ;
sh:ignoredProperties ( rdf:type ) ;
sh:property [ sh:datatype xsd:string ;
- sh:description "Name of a TestParameter." ;
- sh:maxCount 1 ;
- sh:order 0 ;
- sh:path ttm:parameter ],
- [ sh:datatype xsd:string ;
sh:description "(String) value of a TestParameter." ;
sh:maxCount 1 ;
sh:order 1 ;
- sh:path ttm:value ] ;
+ sh:path ttm:value ],
+ [ sh:datatype xsd:string ;
+ sh:description "Name of a TestParameter." ;
+ sh:maxCount 1 ;
+ sh:order 0 ;
+ sh:path ttm:parameter ] ;
sh:targetClass ttm:TestEntityParameter .
ttm:Precondition a sh:NodeShape ;
@@ -980,28 +981,28 @@ ttm:Precondition a sh:NodeShape ;
sh:description "Represents a precondition for a TestCase" ;
sh:ignoredProperties ( rdf:type ) ;
sh:property [ sh:datatype xsd:string ;
- sh:description "A human-readable name for a Test Entity" ;
- sh:maxCount 1 ;
- sh:order 1 ;
- sh:path schema1:name ],
- [ sh:datatype xsd:string ;
- sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
- sh:order 4 ;
- sh:path ttm:test_runner_settings ],
+ sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
+ sh:order 3 ;
+ sh:path schema1:additionalType ],
[ sh:datatype xsd:string ;
sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
sh:order 2 ;
sh:path schema1:description ],
+ [ sh:datatype xsd:string ;
+ sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
+ sh:order 4 ;
+ sh:path ttm:test_runner_settings ],
[ sh:description "A unique identifier for a Test Entity" ;
sh:maxCount 1 ;
sh:minCount 1 ;
sh:order 0 ;
sh:path schema1:identifier ],
[ sh:datatype xsd:string ;
- sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
- sh:order 3 ;
- sh:path schema1:additionalType ] ;
+ sh:description "A human-readable name for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:order 1 ;
+ sh:path schema1:name ] ;
sh:targetClass ttm:Precondition .
ttm:TestSuiteSpecification a sh:NodeShape ;
@@ -1012,71 +1013,62 @@ ttm:TestSuiteSpecification a sh:NodeShape ;
sh:maxCount 1 ;
sh:order 0 ;
sh:path ttm:test_data_file_locator ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable description for a Test Entity" ;
+ [ sh:description "File format of test entity data (e.g. TSV, YAML or JSON)" ;
+ sh:in ( "TSV" "YAML" "JSON" ) ;
sh:maxCount 1 ;
- sh:order 4 ;
- sh:path schema1:description ],
+ sh:order 1 ;
+ sh:path ttm:test_data_file_format ],
+ [ sh:datatype xsd:string ;
+ sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
+ sh:order 6 ;
+ sh:path ttm:test_runner_settings ],
[ sh:description "A unique identifier for a Test Entity" ;
sh:maxCount 1 ;
sh:minCount 1 ;
sh:order 2 ;
sh:path schema1:identifier ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
- sh:order 5 ;
- sh:path schema1:additionalType ],
- [ sh:datatype xsd:string ;
- sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
- sh:order 6 ;
- sh:path ttm:test_runner_settings ],
[ sh:datatype xsd:string ;
sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
sh:order 3 ;
sh:path schema1:name ],
- [ sh:description "File format of test entity data (e.g. TSV, YAML or JSON)" ;
- sh:in ( "TSV" "YAML" "JSON" ) ;
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 1 ;
- sh:path ttm:test_data_file_format ] ;
+ sh:order 4 ;
+ sh:path schema1:description ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
+ sh:order 5 ;
+ sh:path schema1:additionalType ] ;
sh:targetClass ttm:TestSuiteSpecification .
ttm:TestCase a sh:NodeShape ;
sh:closed true ;
sh:description "Represents a single enumerated instance of Test Case, derived from a given collection of one or more TestAsset instances (the value of the 'test_assets' slot) which define the 'inputs' and 'outputs' of the TestCase, used to probe a particular test condition." ;
sh:ignoredProperties ( rdf:type ) ;
- sh:property [ sh:description "A unique identifier for a Test Entity" ;
+ sh:property [ sh:description "Type of TestCase query." ;
+ sh:in ( "treats" ) ;
sh:maxCount 1 ;
- sh:minCount 1 ;
- sh:order 14 ;
- sh:path schema1:identifier ],
+ sh:order 0 ;
+ sh:path ttm:query_type ],
+ [ sh:description "The component that this test case is intended to run against. Most often this is the ARS for acceptance tests, but for the Benchmarks repo integration, this can also be individual components of the system like Aragorn, or ARAX." ;
+ sh:in ( infores:ncats-ars infores:arax infores:explanatory-agent infores:improving-agent infores:aragorn infores:biothings-explorer infores:unsecret-agent infores:rtx-kg2 infores:icees-kg infores:cam-kp infores:spoke infores:molepro infores:textmining-kp infores:cohd infores:openpredict infores:knowledge-collaboratory infores:connections-hypothesis ) ;
+ sh:order 12 ;
+ sh:path ttm:components ],
+ [ sh:datatype xsd:string ;
+ sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
+ sh:order 18 ;
+ sh:path ttm:test_runner_settings ],
+ [ sh:datatype xsd:string ;
+ sh:description "One or more 'tags' slot values (slot inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in a \"Block List\" collection." ;
+ sh:order 17 ;
+ sh:path schema1:additionalType ],
[ sh:class ttm:Qualifier ;
sh:description "Optional qualifiers which constrain to the test asset defined knowledge statement. Note that this field records such qualifier slots and values as tag=value pairs, where the tag is the Biolink Model qualifier slot named and the value is an acceptable (Biolink Model enum?) value of the said qualifier slot." ;
sh:nodeKind sh:BlankNodeOrIRI ;
sh:order 9 ;
sh:path ttm:qualifiers ],
- [ sh:class ttm:Precondition ;
- sh:nodeKind sh:IRI ;
- sh:order 2 ;
- sh:path ttm:preconditions ],
- [ sh:maxCount 1 ;
- sh:order 10 ;
- sh:path ttm:input_category ],
- [ sh:datatype xsd:string ;
- sh:maxCount 1 ;
- sh:order 6 ;
- sh:path ttm:test_case_predicate_name ],
- [ sh:class ttm:TestAsset ;
- sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in 'test_assets' slot (\"Block List\") collection." ;
- sh:minCount 1 ;
- sh:nodeKind sh:IRI ;
- sh:order 1 ;
- sh:path ttm:test_assets ],
- [ sh:datatype xsd:string ;
- sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
- sh:order 18 ;
- sh:path ttm:test_runner_settings ],
[ sh:description "Deployment environment within which the associated TestSuite is run." ;
sh:in ( "dev" "ci" "test" "prod" ) ;
sh:maxCount 1 ;
@@ -1087,81 +1079,80 @@ ttm:TestCase a sh:NodeShape ;
sh:maxCount 1 ;
sh:order 4 ;
sh:path ttm:test_case_objective ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable name for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:order 15 ;
+ sh:path schema1:name ],
[ sh:maxCount 1 ;
- sh:order 11 ;
- sh:path ttm:output_category ],
+ sh:order 8 ;
+ sh:path ttm:test_case_input_id ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable description for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:order 16 ;
+ sh:path schema1:description ],
[ sh:description "Provenance of a specific set of test assets, cases and/or suites. Or, the person who cares about this, know about this. We would like this to be an ORCID eventually, but currently it is just a string." ;
sh:in ( "SME" "SMURF" "GitHubUserFeedback" "TACT" "BenchMark" "TranslatorTeam" "TestDataLocation" ) ;
sh:maxCount 1 ;
sh:order 5 ;
sh:path ttm:test_case_source ],
- [ sh:datatype xsd:string ;
- sh:maxCount 1 ;
- sh:order 7 ;
- sh:path ttm:test_case_predicate_id ],
+ [ sh:class ttm:TestAsset ;
+ sh:description "One or more 'tags' slot values (inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in 'test_assets' slot (\"Block List\") collection." ;
+ sh:minCount 1 ;
+ sh:nodeKind sh:IRI ;
+ sh:order 1 ;
+ sh:path ttm:test_assets ],
+ [ sh:maxCount 1 ;
+ sh:order 11 ;
+ sh:path ttm:output_category ],
[ sh:description "A template for a query, which can be used to generate a query for a test case. note: the current enumerated values for this slot come from the Benchmarks repo config/benchmarks.json \"templates\" collection and refer to the \"name\" field of each template. Templates themselves are currently stored in the config/[source_name]/templates directory." ;
sh:in ( "ameliorates" "treats" "three_hop" "drug_treats_rare_disease" "drug-to-gene" ) ;
sh:maxCount 1 ;
sh:order 3 ;
sh:path ttm:trapi_template ],
+ [ sh:maxCount 1 ;
+ sh:order 10 ;
+ sh:path ttm:input_category ],
+ [ sh:class ttm:Precondition ;
+ sh:nodeKind sh:IRI ;
+ sh:order 2 ;
+ sh:path ttm:preconditions ],
[ sh:datatype xsd:string ;
- sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 15 ;
- sh:path schema1:name ],
- [ sh:maxCount 1 ;
- sh:order 8 ;
- sh:path ttm:test_case_input_id ],
- [ sh:description "Type of TestCase query." ;
- sh:in ( "treats" ) ;
+ sh:order 6 ;
+ sh:path ttm:test_case_predicate_name ],
+ [ sh:description "A unique identifier for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 0 ;
- sh:path ttm:query_type ],
+ sh:minCount 1 ;
+ sh:order 14 ;
+ sh:path schema1:identifier ],
[ sh:datatype xsd:string ;
- sh:description "A human-readable description for a Test Entity" ;
sh:maxCount 1 ;
- sh:order 16 ;
- sh:path schema1:description ],
- [ sh:datatype xsd:string ;
- sh:description "One or more 'tags' slot values (slot inherited from TestEntity) should generally be defined as filters to specify TestAsset membership in a \"Block List\" collection." ;
- sh:order 17 ;
- sh:path schema1:additionalType ],
- [ sh:description "The component that this test case is intended to run against. Most often this is the ARS for acceptance tests, but for the Benchmarks repo integration, this can also be individual components of the system like Aragorn, or ARAX." ;
- sh:in [ rdf:rest () ] ;
- sh:order 12 ;
- sh:path ttm:components ] ;
+ sh:order 7 ;
+ sh:path ttm:test_case_predicate_id ] ;
sh:targetClass ttm:TestCase .
ttm:Qualifier a sh:NodeShape ;
sh:closed true ;
sh:ignoredProperties ( rdf:type ) ;
sh:property [ sh:datatype xsd:string ;
- sh:description "The 'parameter' of a Qualifier should be a `qualifier` slot name from the Biolink Model ('biolink' namespace) 'biolink:qualifier' hierarchy." ;
- sh:maxCount 1 ;
- sh:order 0 ;
- sh:path ttm:parameter ],
- [ sh:datatype xsd:string ;
sh:description "The 'value' of should be a suitable value generally drawn from an applicable Biolink Model (\"Enum\") value set of the specified Qualifier." ;
sh:maxCount 1 ;
sh:order 1 ;
- sh:path ttm:value ] ;
+ sh:path ttm:value ],
+ [ sh:datatype xsd:string ;
+ sh:description "The 'parameter' of a Qualifier should be a `qualifier` slot name from the Biolink Model ('biolink' namespace) 'biolink:qualifier' hierarchy." ;
+ sh:maxCount 1 ;
+ sh:order 0 ;
+ sh:path ttm:parameter ] ;
sh:targetClass ttm:Qualifier .
ttm:TestMetadata a sh:NodeShape ;
sh:closed true ;
sh:description "Represents metadata related to (external SME, SMURF, Translator feedback, large scale batch, etc.) like the provenance of test assets, cases and/or suites." ;
sh:ignoredProperties ( rdf:type ) ;
- sh:property [ sh:description "Provenance of a specific set of test assets, cases and/or suites. Or, the person who cares about this, know about this. We would like this to be an ORCID eventually, but currently it is just a string." ;
- sh:in ( "SME" "SMURF" "GitHubUserFeedback" "TACT" "BenchMark" "TranslatorTeam" "TestDataLocation" ) ;
- sh:maxCount 1 ;
- sh:order 0 ;
- sh:path ttm:test_source ],
- [ sh:description "Testing objective behind specified set of test particulars (e.g. acceptance pass/fail; benchmark; quantitative; standards compliance; graph navigation integrity)" ;
- sh:in ( "AcceptanceTest" "BenchmarkTest" "QuantitativeTest" "StandardsValidationTest" "OneHopTest" ) ;
- sh:maxCount 1 ;
- sh:order 2 ;
- sh:path ttm:test_objective ],
- [ sh:datatype xsd:string ;
+ sh:property [ sh:datatype xsd:string ;
sh:description "A human-readable name for a Test Entity" ;
sh:maxCount 1 ;
sh:order 5 ;
@@ -1170,28 +1161,38 @@ ttm:TestMetadata a sh:NodeShape ;
sh:description "A human-readable tags for categorical memberships of a TestEntity (preferably a URI or CURIE). Typically used to aggregate instances of TestEntity into formally typed or ad hoc lists." ;
sh:order 7 ;
sh:path schema1:additionalType ],
- [ sh:datatype xsd:string ;
- sh:description "A human-readable description for a Test Entity" ;
- sh:maxCount 1 ;
- sh:order 6 ;
- sh:path schema1:description ],
[ sh:description "A unique identifier for a Test Entity" ;
sh:maxCount 1 ;
sh:minCount 1 ;
sh:order 4 ;
sh:path schema1:identifier ],
+ [ sh:description "Provenance of a specific set of test assets, cases and/or suites. Or, the person who cares about this, know about this. We would like this to be an ORCID eventually, but currently it is just a string." ;
+ sh:in ( "SME" "SMURF" "GitHubUserFeedback" "TACT" "BenchMark" "TranslatorTeam" "TestDataLocation" ) ;
+ sh:maxCount 1 ;
+ sh:order 0 ;
+ sh:path ttm:test_source ],
+ [ sh:description "Testing objective behind specified set of test particulars (e.g. acceptance pass/fail; benchmark; quantitative; standards compliance; graph navigation integrity)" ;
+ sh:in ( "AcceptanceTest" "BenchmarkTest" "QuantitativeTest" "StandardsValidationTest" "OneHopTest" ) ;
+ sh:maxCount 1 ;
+ sh:order 2 ;
+ sh:path ttm:test_objective ],
[ sh:description "Document URL where original test source particulars are registered (e.g. Github repo)" ;
sh:maxCount 1 ;
sh:order 1 ;
sh:path ttm:test_reference ],
+ [ sh:datatype xsd:string ;
+ sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
+ sh:order 8 ;
+ sh:path ttm:test_runner_settings ],
+ [ sh:datatype xsd:string ;
+ sh:description "A human-readable description for a Test Entity" ;
+ sh:maxCount 1 ;
+ sh:order 6 ;
+ sh:path schema1:description ],
[ sh:class ttm:TestEntityParameter ;
sh:description "Metadata annotation." ;
sh:nodeKind sh:BlankNodeOrIRI ;
sh:order 3 ;
- sh:path ttm:test_annotations ],
- [ sh:datatype xsd:string ;
- sh:description "Scalar parameters for the TestRunner processing a given TestEntity." ;
- sh:order 8 ;
- sh:path ttm:test_runner_settings ] ;
+ sh:path ttm:test_annotations ] ;
sh:targetClass ttm:TestMetadata .
diff --git a/project/shex/translator_testing_model.shex b/project/shex/translator_testing_model.shex
index 5397e73..3566b99 100644
--- a/project/shex/translator_testing_model.shex
+++ b/project/shex/translator_testing_model.shex
@@ -2,6 +2,7 @@ BASE
PREFIX rdf:
PREFIX xsd:
PREFIX linkml:
+PREFIX infores:
PREFIX schema1:
@@ -206,7 +207,10 @@ linkml:Sparqlpath xsd:string
@ * ;
@ ? ;
@ ? ;
- . * ;
+ [ infores:ncats-ars infores:arax infores:explanatory-agent infores:improving-agent infores:aragorn
+ infores:biothings-explorer infores:unsecret-agent infores:rtx-kg2 infores:icees-kg infores:cam-kp infores:spoke
+ infores:molepro infores:textmining-kp infores:cohd infores:openpredict infores:knowledge-collaboratory
+ infores:connections-hypothesis ] * ;
[
@@ -314,7 +318,10 @@ linkml:Sparqlpath xsd:string
CLOSED {
( $ ( & ;
rdf:type [ ] ? ;
- . * ;
+ [ infores:ncats-ars infores:arax infores:explanatory-agent infores:improving-agent infores:aragorn
+ infores:biothings-explorer infores:unsecret-agent infores:rtx-kg2 infores:icees-kg infores:cam-kp infores:spoke
+ infores:molepro infores:textmining-kp infores:cohd infores:openpredict infores:knowledge-collaboratory
+ infores:connections-hypothesis ] * ;
[
diff --git a/project/sqlschema/translator_testing_model.sql b/project/sqlschema/translator_testing_model.sql
index 66b59f3..2cbfdcd 100644
--- a/project/sqlschema/translator_testing_model.sql
+++ b/project/sqlschema/translator_testing_model.sql
@@ -590,7 +590,7 @@ CREATE TABLE "AcceptanceTestCase_preconditions" (
);
CREATE TABLE "AcceptanceTestCase_components" (
"AcceptanceTestCase_id" TEXT,
- components VARCHAR,
+ components VARCHAR(13),
PRIMARY KEY ("AcceptanceTestCase_id", components),
FOREIGN KEY("AcceptanceTestCase_id") REFERENCES "AcceptanceTestCase" (id)
);
@@ -615,7 +615,7 @@ CREATE TABLE "QuantitativeTestCase_preconditions" (
);
CREATE TABLE "QuantitativeTestCase_components" (
"QuantitativeTestCase_id" TEXT,
- components VARCHAR,
+ components VARCHAR(13),
PRIMARY KEY ("QuantitativeTestCase_id", components),
FOREIGN KEY("QuantitativeTestCase_id") REFERENCES "QuantitativeTestCase" (id)
);
@@ -645,7 +645,7 @@ CREATE TABLE "TestSuiteSpecification_test_runner_settings" (
);
CREATE TABLE "TestRunSession_components" (
"TestRunSession_id" TEXT,
- components VARCHAR,
+ components VARCHAR(13),
PRIMARY KEY ("TestRunSession_id", components),
FOREIGN KEY("TestRunSession_id") REFERENCES "TestRunSession" (id)
);
@@ -848,7 +848,7 @@ CREATE TABLE "TestCase_preconditions" (
);
CREATE TABLE "TestCase_components" (
"TestCase_id" TEXT,
- components VARCHAR,
+ components VARCHAR(13),
PRIMARY KEY ("TestCase_id", components),
FOREIGN KEY("TestCase_id") REFERENCES "TestCase" (id)
);
diff --git a/src/translator_testing_model/datamodel/pydanticmodel.py b/src/translator_testing_model/datamodel/pydanticmodel.py
index 3c06335..007a1ec 100644
--- a/src/translator_testing_model/datamodel/pydanticmodel.py
+++ b/src/translator_testing_model/datamodel/pydanticmodel.py
@@ -167,11 +167,44 @@ class TrapiTemplateEnum(str, Enum):
drug_to_gene = "drug-to-gene"
-class ComponentEnum(str):
+class ComponentEnum(str, Enum):
"""
Translator components are identified by their InfoRes identifiers.
"""
- pass
+ # Automatic Relay Service component of Translator
+ ars = "ars"
+ # ARAX Translator Reasoner
+ arax = "arax"
+ # A Translator Reasoner API for the Explanatory Agent
+ explanatory = "explanatory"
+ # imProving Agent OpenAPI TRAPI Specification
+ improving = "improving"
+ # Performs a query operation which compiles data from numerous ranking agent services.
+ aragorn = "aragorn"
+ # BioThings Explorer
+ bte = "bte"
+ # Unsecret Agent OpenAPI for NCATS Biomedical Translator Reasoners
+ unsecret = "unsecret"
+ # TRAPI endpoint for the NCATS Biomedical Translator KP called RTX KG2
+ rtxkg2 = "rtxkg2"
+ # ICEES (Integrated Clinical and Environmental Exposures Service)
+ icees = "icees"
+ # Causal Activity Model KP
+ cam = "cam"
+ # SPOKE KP - an NIH NCATS Knowledge Provider to expose UCSFs SPOKE
+ spoke = "spoke"
+ # Molecular Data Provider for NCATS Biomedical Translator Reasoners
+ molepro = "molepro"
+ # Text Mining KP
+ textmining = "textmining"
+ # Columbia Open Health Data (COHD)
+ cohd = "cohd"
+ # OpenPredict API
+ openpredict = "openpredict"
+ # Translator Knowledge Collaboratory API
+ collaboratory = "collaboratory"
+ # Connections Hypothesis Provider API
+ connections = "connections"
class TestPersonaEnum(str, Enum):
diff --git a/src/translator_testing_model/datamodel/translator_testing_model.py b/src/translator_testing_model/datamodel/translator_testing_model.py
index 3717594..ccc8429 100644
--- a/src/translator_testing_model/datamodel/translator_testing_model.py
+++ b/src/translator_testing_model/datamodel/translator_testing_model.py
@@ -1,5 +1,5 @@
# Auto generated from translator_testing_model.yaml by pythongen.py version: 0.0.1
-# Generation date: 2024-04-25T12:49:13
+# Generation date: 2024-04-25T16:24:03
# Schema: Translator-Testing-Model
#
# id: https://w3id.org/TranslatorSRI/TranslatorTestingModel
@@ -35,6 +35,7 @@
# Namespaces
BIOLINK = CurieNamespace('biolink', 'https://w3id.org/biolink/')
EXAMPLE = CurieNamespace('example', 'https://example.org/')
+INFORES = CurieNamespace('infores', 'https://w3id.org/biolink/vocab/')
LINKML = CurieNamespace('linkml', 'https://w3id.org/linkml/')
SCHEMA = CurieNamespace('schema', 'http://schema.org/')
TTM = CurieNamespace('ttm', 'https://w3id.org/TranslatorSRI/TranslatorTestingModel/')
@@ -567,6 +568,10 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]):
if self.output_category is not None and not isinstance(self.output_category, ConceptCategory):
self.output_category = ConceptCategory(self.output_category)
+ if not isinstance(self.components, list):
+ self.components = [self.components] if self.components is not None else []
+ self.components = [v if isinstance(v, ComponentEnum) else ComponentEnum(v) for v in self.components]
+
if self.test_env is not None and not isinstance(self.test_env, TestEnvEnum):
self.test_env = TestEnvEnum(self.test_env)
@@ -841,6 +846,10 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]):
if not isinstance(self.id, TestRunSessionId):
self.id = TestRunSessionId(self.id)
+ if not isinstance(self.components, list):
+ self.components = [self.components] if self.components is not None else []
+ self.components = [v if isinstance(v, ComponentEnum) else ComponentEnum(v) for v in self.components]
+
if self.test_env is not None and not isinstance(self.test_env, TestEnvEnum):
self.test_env = TestEnvEnum(self.test_env)
@@ -1148,6 +1157,75 @@ class ComponentEnum(EnumDefinitionImpl):
"""
Translator components are identified by their InfoRes identifiers.
"""
+ ars = PermissibleValue(
+ text="ars",
+ description="Automatic Relay Service component of Translator",
+ meaning=INFORES["ncats-ars"])
+ arax = PermissibleValue(
+ text="arax",
+ description="ARAX Translator Reasoner",
+ meaning=INFORES["arax"])
+ explanatory = PermissibleValue(
+ text="explanatory",
+ description="A Translator Reasoner API for the Explanatory Agent",
+ meaning=INFORES["explanatory-agent"])
+ improving = PermissibleValue(
+ text="improving",
+ description="imProving Agent OpenAPI TRAPI Specification",
+ meaning=INFORES["improving-agent"])
+ aragorn = PermissibleValue(
+ text="aragorn",
+ description="Performs a query operation which compiles data from numerous ranking agent services.",
+ meaning=INFORES["aragorn"])
+ bte = PermissibleValue(
+ text="bte",
+ description="BioThings Explorer",
+ meaning=INFORES["biothings-explorer"])
+ unsecret = PermissibleValue(
+ text="unsecret",
+ description="Unsecret Agent OpenAPI for NCATS Biomedical Translator Reasoners",
+ meaning=INFORES["unsecret-agent"])
+ rtxkg2 = PermissibleValue(
+ text="rtxkg2",
+ description="TRAPI endpoint for the NCATS Biomedical Translator KP called RTX KG2",
+ meaning=INFORES["rtx-kg2"])
+ icees = PermissibleValue(
+ text="icees",
+ description="ICEES (Integrated Clinical and Environmental Exposures Service)",
+ meaning=INFORES["icees-kg"])
+ cam = PermissibleValue(
+ text="cam",
+ description="Causal Activity Model KP",
+ meaning=INFORES["cam-kp"])
+ spoke = PermissibleValue(
+ text="spoke",
+ description="SPOKE KP - an NIH NCATS Knowledge Provider to expose UCSFs SPOKE",
+ meaning=INFORES["spoke"])
+ molepro = PermissibleValue(
+ text="molepro",
+ description="Molecular Data Provider for NCATS Biomedical Translator Reasoners",
+ meaning=INFORES["molepro"])
+ textmining = PermissibleValue(
+ text="textmining",
+ description="Text Mining KP",
+ meaning=INFORES["textmining-kp"])
+ cohd = PermissibleValue(
+ text="cohd",
+ description="Columbia Open Health Data (COHD)",
+ meaning=INFORES["cohd"])
+ openpredict = PermissibleValue(
+ text="openpredict",
+ description="OpenPredict API",
+ meaning=INFORES["openpredict"])
+ collaboratory = PermissibleValue(
+ text="collaboratory",
+ description="Translator Knowledge Collaboratory API",
+ meaning=INFORES["knowledge-collaboratory"])
+ connections = PermissibleValue(
+ text="connections",
+ description="Connections Hypothesis Provider API",
+ meaning=INFORES["connections-hypothesis"])
+
_defn = EnumDefinition(
name="ComponentEnum",
description="Translator components are identified by their InfoRes identifiers.",
diff --git a/src/translator_testing_model/schema/translator_testing_model.yaml b/src/translator_testing_model/schema/translator_testing_model.yaml
index 1f1144c..0339c1b 100644
--- a/src/translator_testing_model/schema/translator_testing_model.yaml
+++ b/src/translator_testing_model/schema/translator_testing_model.yaml
@@ -14,6 +14,7 @@ prefixes:
ttm: https://w3id.org/TranslatorSRI/TranslatorTestingModel/
linkml: https://w3id.org/linkml/
biolink: https://w3id.org/biolink/
+ infores: https://w3id.org/biolink/vocab/
schema: http://schema.org/
example: https://example.org/
@@ -949,11 +950,83 @@ enums:
ComponentEnum:
description: >-
Translator components are identified by their InfoRes identifiers.
- reachable_from:
- source_ontology: biolink
- source_nodes:
- - biolink:infores
- include_self: false
+ # reachable_from:
+ # source_ontology: biolink
+ # source_nodes:
+ # - biolink:infores
+ # include_self: false
+ permissible_values:
+ ars:
+ description: >-
+ Automatic Relay Service component of Translator
+ meaning: "infores:ncats-ars"
+ # ARA's
+ arax:
+ description: >-
+ ARAX Translator Reasoner
+ meaning: "infores:arax"
+ explanatory:
+ description: >-
+ A Translator Reasoner API for the Explanatory Agent
+ meaning: "infores:explanatory-agent"
+ improving:
+ description: >-
+ imProving Agent OpenAPI TRAPI Specification
+ meaning: "infores:improving-agent"
+ aragorn:
+ description: >-
+ Performs a query operation which compiles data from numerous ranking agent services.
+ meaning: "infores:aragorn"
+ bte:
+ description: >-
+ BioThings Explorer
+ meaning: "infores:biothings-explorer"
+ unsecret:
+ description: >-
+ Unsecret Agent OpenAPI for NCATS Biomedical Translator Reasoners
+ meaning: "infores:unsecret-agent"
+ # KP's
+ rtxkg2:
+ description: >-
+ TRAPI endpoint for the NCATS Biomedical Translator KP called RTX KG2
+ meaning: "infores:rtx-kg2"
+ icees:
+ description: >-
+ ICEES (Integrated Clinical and Environmental Exposures Service)
+ meaning: "infores:icees-kg"
+ cam:
+ description: >-
+ Causal Activity Model KP
+ meaning: "infores:cam-kp"
+ spoke:
+ description: >-
+ SPOKE KP - an NIH NCATS Knowledge Provider to expose UCSFs SPOKE
+ meaning: "infores:spoke"
+ molepro:
+ description: >-
+ Molecular Data Provider for NCATS Biomedical Translator Reasoners
+ meaning: "infores:molepro"
+ textmining:
+ description: >-
+ Text Mining KP
+ meaning: "infores:textmining-kp"
+ cohd:
+ description: >-
+ Columbia Open Health Data (COHD)
+ meaning: "infores:cohd"
+ openpredict:
+ description: >-
+ OpenPredict API
+ meaning: "infores:openpredict"
+ collaboratory:
+ description: >-
+ Translator Knowledge Collaboratory API
+ meaning: "infores:knowledge-collaboratory"
+ connections:
+ description: >-
+ Connections Hypothesis Provider API
+ meaning: "infores:connections-hypothesis"
+
#########################
# TestSuite Model Enums #