From ac86255d13cfa75c86e13f34090f3bebd64a5c10 Mon Sep 17 00:00:00 2001 From: linkmluser Date: Fri, 2 Feb 2024 17:35:11 -0800 Subject: [PATCH] examples --- README.md | 39 +- poetry.lock | 2629 +++++++++++---- project/excel/linkml_common.xlsx | Bin 37406 -> 45894 bytes project/graphql/linkml_common.graphql | 208 +- project/jsonld/linkml_common.context.jsonld | 75 +- project/jsonld/linkml_common.jsonld | 827 ++++- project/jsonschema/linkml_common.schema.json | 998 +++++- project/owl/linkml_common.owl.ttl | 1486 ++++++--- project/prefixmap/linkml_common.yaml | 17 +- project/protobuf/linkml_common.proto | 199 +- project/shacl/linkml_common.shacl.ttl | 2946 +++++++++++------ project/shex/linkml_common.shex | 288 +- project/sqlschema/linkml_common.sql | 249 +- pyproject.toml | 3 +- src/data/examples/valid/Dataset-001.yaml | 11 + src/data/examples/valid/Event-001.yaml | 6 + src/linkml_common/datamodel/linkml_common.py | 616 +++- src/linkml_common/schema/bibliographic.yaml | 4 +- .../schema/clinicalresearch.yaml | 7 +- src/linkml_common/schema/computational.yaml | 1 - src/linkml_common/schema/core.yaml | 28 +- src/linkml_common/schema/datasets.yaml | 33 + src/linkml_common/schema/environmental.yaml | 7 + src/linkml_common/schema/financial.yaml | 24 +- src/linkml_common/schema/foods.yaml | 2 + src/linkml_common/schema/healthcare.yaml | 1 + src/linkml_common/schema/investigations.yaml | 25 + src/linkml_common/schema/linkml_common.yaml | 1 + src/linkml_common/schema/plannedprocess.yaml | 3 + src/linkml_common/schema/quantities.yaml | 20 + src/linkml_common/schema/social.yaml | 76 +- src/linkml_common/schema/time.yaml | 68 +- 32 files changed, 8488 insertions(+), 2409 deletions(-) create mode 100644 src/data/examples/valid/Dataset-001.yaml create mode 100644 src/data/examples/valid/Event-001.yaml create mode 100644 src/linkml_common/schema/datasets.yaml diff --git a/README.md b/README.md index 21f46eb..2660a97 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,46 @@ # linkml-common -Common Data Model Elements +LinkML Common Modeling Elements and Types (COMET) -## Website +## Web Index of Elements [https://linkml.github.io/linkml-common](https://linkml.github.io/linkml-common) +## Why not schema.org? + +The [schema.org](https://schema.org) project is a great resource for high level annotation of web pages and other +resources. LinkML-Common differs from schema.org in a number of ways + +* Opinionated + - schema.org is great for annotating data with minimum fuss + - LinkML-Common enforces a more constrained data model, and is a *validation-first* framework +* Focused on Science, Technology, Engineering, Mathematics, and Scholarly Communication + - schema.org has excellent broad coverage of a number of domains + - LinkML-Common has a focus on science and adjacent domains. There is more emphasis on modeling investigations, + and adhering to ontologies such as the [Ontology for Biomedical Investigations](https://obofoundry.org/ontology/obi.html) + +## How does it compare to FHIR/OMOP/CDISC + +LinkML-Common has a broader remit than healthcare or clinical research data models. However, it is intended +to give broad coverage in these domains, and to be extensible. We aim to provide rigorous computable transformations +between COMET and these models + +## How does it compare to Biolink? + +Biolink is a Knowledge Graph model that emphasizes shared knowledge entities such as genes, diseases, drugs. +These are largely not modeled to any great extent in COMET, and the idea is that these models can be combined. + +## Can I adapt it? + +Yes! If you don't like our modeling, the idea is to use [LinkML-Transformer](https://github.com/linkml/linkml-transformer) +to profile, extend, and adapt the modeling elements here. + +Note that like COMET, LinkML-Transformer is not yet mature and is under active development. + +## Do I have to use LinkML? + +We also provide Pydantic, OWL, JSON-Schema, and many other representations. + ## Repository Structure * [examples/](examples/) - example data diff --git a/poetry.lock b/poetry.lock index 9f42805..f13d247 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,5 +1,21 @@ # This file is automatically @generated by Poetry 1.4.2 and should not be changed by hand. +[[package]] +name = "airium" +version = "0.2.6" +description = "Easy and quick html builder with natural syntax correspondence (python->html). No templates needed. Serves pure pythonic library with no dependencies." +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "airium-0.2.6-py3-none-any.whl", hash = "sha256:50af5cf491e084f27909e29a93550b4170e587cde01334d58c6249644ee8c6c2"}, + {file = "airium-0.2.6.tar.gz", hash = "sha256:ccab36b798b6cce3d0c5074e52ce8059f6e82991caae4985f42cadfad80b1de4"}, +] + +[package.extras] +dev = ["pytest (>=6.2,<7.0)", "pytest-cov (>=3.0,<4.0)", "pytest-mock (>=3.6,<4.0)"] +parse = ["beautifulsoup4 (>=4.10.0,<5.0)", "requests (>=2.12.0,<3)"] + [[package]] name = "annotated-types" version = "0.6.0" @@ -23,6 +39,18 @@ files = [ {file = "antlr4-python3-runtime-4.9.3.tar.gz", hash = "sha256:f224469b4168294902bb1efa80a8bf7855f24c99aef99cbefc1bcd3cce77881b"}, ] +[[package]] +name = "appdirs" +version = "1.4.4" +description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "appdirs-1.4.4-py2.py3-none-any.whl", hash = "sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"}, + {file = "appdirs-1.4.4.tar.gz", hash = "sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41"}, +] + [[package]] name = "arrow" version = "1.3.0" @@ -63,52 +91,68 @@ test = ["coverage", "pytest", "pytest-cov"] [[package]] name = "attrs" -version = "23.1.0" +version = "23.2.0" description = "Classes Without Boilerplate" category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "attrs-23.1.0-py3-none-any.whl", hash = "sha256:1f28b4522cdc2fb4256ac1a020c78acf9cba2c6b461ccd2c126f3aa8e8335d04"}, - {file = "attrs-23.1.0.tar.gz", hash = "sha256:6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015"}, + {file = "attrs-23.2.0-py3-none-any.whl", hash = "sha256:99b87a485a5820b23b879f04c2305b44b951b502fd64be915879d77a7e8fc6f1"}, + {file = "attrs-23.2.0.tar.gz", hash = "sha256:935dc3b529c262f6cf76e50877d35a4bd3c1de194fd41f47a2b7ae8f19971f30"}, ] [package.extras] cov = ["attrs[tests]", "coverage[toml] (>=5.3)"] -dev = ["attrs[docs,tests]", "pre-commit"] +dev = ["attrs[tests]", "pre-commit"] docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope-interface"] tests = ["attrs[tests-no-zope]", "zope-interface"] -tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +tests-mypy = ["mypy (>=1.6)", "pytest-mypy-plugins"] +tests-no-zope = ["attrs[tests-mypy]", "cloudpickle", "hypothesis", "pympler", "pytest (>=4.3.0)", "pytest-xdist[psutil]"] + +[[package]] +name = "bcp47" +version = "0.0.4" +description = "Language tags made easy" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "bcp47-0.0.4-py3-none-any.whl", hash = "sha256:309d3bbaef8d6c9ac59d37ba2167cc6620b4e7467ec8f1e09641b659bb1c0c6d"}, + {file = "bcp47-0.0.4.tar.gz", hash = "sha256:4878d2f3e697ef39ef3891a147280705e4377d5a8d7eb0702129b8d4a3718702"}, +] [[package]] name = "beautifulsoup4" -version = "4.12.2" +version = "4.12.3" description = "Screen-scraping library" category = "dev" optional = false python-versions = ">=3.6.0" files = [ - {file = "beautifulsoup4-4.12.2-py3-none-any.whl", hash = "sha256:bd2520ca0d9d7d12694a53d44ac482d181b4ec1888909b035a3dbf40d0f57d4a"}, - {file = "beautifulsoup4-4.12.2.tar.gz", hash = "sha256:492bbc69dca35d12daac71c4db1bfff0c876c00ef4a2ffacce226d4638eb72da"}, + {file = "beautifulsoup4-4.12.3-py3-none-any.whl", hash = "sha256:b80878c9f40111313e55da8ba20bdba06d8fa3969fc68304167741bbf9e082ed"}, + {file = "beautifulsoup4-4.12.3.tar.gz", hash = "sha256:74e3d1928edc070d21748185c46e3fb33490f22f52a3addee9aee0f4f7781051"}, ] [package.dependencies] soupsieve = ">1.2" [package.extras] +cchardet = ["cchardet"] +chardet = ["chardet"] +charset-normalizer = ["charset-normalizer"] html5lib = ["html5lib"] lxml = ["lxml"] [[package]] name = "bioregistry" -version = "0.10.86" +version = "0.10.132" description = "Integrated registry of biological databases and nomenclatures" category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "bioregistry-0.10.86-py3-none-any.whl", hash = "sha256:ec6f086faba694fd99d1f9bd19b9ee104b49ecbb1fb56cb3974764d41f1be24e"}, - {file = "bioregistry-0.10.86.tar.gz", hash = "sha256:1958c4e6edf2103da3ce22f4f4121843ffc5617f993bc2d3fcb0ec8b497d0cd4"}, + {file = "bioregistry-0.10.132-py3-none-any.whl", hash = "sha256:f8f3e3b77ca1f6220bf45b63ead717fe130b0adb942305c6ede32a3a4316760e"}, + {file = "bioregistry-0.10.132.tar.gz", hash = "sha256:1fb30ba0229fc04d110de44a8c82616483832b3e7ec28fe2fa559badcffa4e73"}, ] [package.dependencies] @@ -142,16 +186,42 @@ files = [ {file = "cachetools-5.3.2.tar.gz", hash = "sha256:086ee420196f7b2ab9ca2db2520aca326318b68fe5ba8bc4d49cca91add450f2"}, ] +[[package]] +name = "cattrs" +version = "23.2.3" +description = "Composable complex class support for attrs and dataclasses." +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "cattrs-23.2.3-py3-none-any.whl", hash = "sha256:0341994d94971052e9ee70662542699a3162ea1e0c62f7ce1b4a57f563685108"}, + {file = "cattrs-23.2.3.tar.gz", hash = "sha256:a934090d95abaa9e911dac357e3a8699e0b4b14f8529bcc7d2b1ad9d51672b9f"}, +] + +[package.dependencies] +attrs = ">=23.1.0" +exceptiongroup = {version = ">=1.1.1", markers = "python_version < \"3.11\""} +typing-extensions = {version = ">=4.1.0,<4.6.3 || >4.6.3", markers = "python_version < \"3.11\""} + +[package.extras] +bson = ["pymongo (>=4.4.0)"] +cbor2 = ["cbor2 (>=5.4.6)"] +msgpack = ["msgpack (>=1.0.5)"] +orjson = ["orjson (>=3.9.2)"] +pyyaml = ["pyyaml (>=6.0)"] +tomlkit = ["tomlkit (>=0.11.8)"] +ujson = ["ujson (>=5.7.0)"] + [[package]] name = "certifi" -version = "2023.11.17" +version = "2024.2.2" description = "Python package for providing Mozilla's CA Bundle." category = "main" optional = false python-versions = ">=3.6" files = [ - {file = "certifi-2023.11.17-py3-none-any.whl", hash = "sha256:e036ab49d5b79556f99cfc2d9320b34cfbe5be05c5871b51de9329f0603b0474"}, - {file = "certifi-2023.11.17.tar.gz", hash = "sha256:9b469f3a900bf28dc19b8cfbf8019bf47f7fdd1a65a1d4ffb98fc14166beb4d1"}, + {file = "certifi-2024.2.2-py3-none-any.whl", hash = "sha256:dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"}, + {file = "certifi-2024.2.2.tar.gz", hash = "sha256:0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f"}, ] [[package]] @@ -280,6 +350,33 @@ files = [ {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"}, ] +[[package]] +name = "class-resolver" +version = "0.4.2" +description = "Lookup and instantiate classes with style." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "class_resolver-0.4.2-py3-none-any.whl", hash = "sha256:da81d1f76ff0dba252794a0cff2c3f68a1ed4375da687eacae9ec78e4bb733cb"}, + {file = "class_resolver-0.4.2.tar.gz", hash = "sha256:23dbe3cfd55b5bfa51813c9c7a1cdbab5f11fa9f85cd86b80721fcf8beb89c98"}, +] + +[package.dependencies] +importlib-metadata = {version = ">3.6", markers = "python_version < \"3.10\""} + +[package.extras] +click = ["click"] +docdata = ["docdata"] +docs = ["sphinx", "sphinx-autodoc-typehints", "sphinx-automodapi", "sphinx-rtd-theme"] +numpy = ["numpy"] +optuna = ["optuna"] +ray = ["ray[tune] (<2.0.0)"] +sklearn = ["scikit-learn"] +tests = ["coverage", "docdata", "pytest"] +torch = ["torch"] +torch-geometric = ["torch", "torch-geometric", "torch-sparse"] + [[package]] name = "click" version = "8.1.7" @@ -295,6 +392,39 @@ files = [ [package.dependencies] colorama = {version = "*", markers = "platform_system == \"Windows\""} +[[package]] +name = "click-default-group" +version = "1.2.4" +description = "click_default_group" +category = "dev" +optional = false +python-versions = ">=2.7" +files = [ + {file = "click_default_group-1.2.4-py2.py3-none-any.whl", hash = "sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f"}, + {file = "click_default_group-1.2.4.tar.gz", hash = "sha256:eb3f3c99ec0d456ca6cd2a7f08f7d4e91771bef51b01bdd9580cc6450fe1251e"}, +] + +[package.dependencies] +click = "*" + +[package.extras] +test = ["pytest"] + +[[package]] +name = "click-log" +version = "0.4.0" +description = "Logging integration for Click" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "click-log-0.4.0.tar.gz", hash = "sha256:3970f8570ac54491237bcdb3d8ab5e3eef6c057df29f8c3d1151a51a9c23b975"}, + {file = "click_log-0.4.0-py2.py3-none-any.whl", hash = "sha256:a43e394b528d52112af599f2fc9e4b7cf3c15f94e53581f74fa6867e68c91756"}, +] + +[package.dependencies] +click = "*" + [[package]] name = "colorama" version = "0.4.6" @@ -309,14 +439,14 @@ files = [ [[package]] name = "curies" -version = "0.7.4" +version = "0.7.6" description = "Idiomatic conversion between URIs and compact URIs (CURIEs)." category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "curies-0.7.4-py3-none-any.whl", hash = "sha256:478f1818345988933d8bc6060f80a985401331f856ff8cf9bd98fa00d178ad39"}, - {file = "curies-0.7.4.tar.gz", hash = "sha256:d3aaf16644b26ac2605ff83c565ec7df0ba0b5f7425516047666e609ec5fb718"}, + {file = "curies-0.7.6-py3-none-any.whl", hash = "sha256:3307e757e47ed4384edb705c73cad40ad5e688e2dea263a60e6a5e5a6c33105d"}, + {file = "curies-0.7.6.tar.gz", hash = "sha256:f86da3539cee349249f5b64db99651053649551920b9fe945c150719c8b9b40e"}, ] [package.dependencies] @@ -380,16 +510,42 @@ wrapt = ">=1.10,<2" [package.extras] dev = ["PyTest", "PyTest-Cov", "bump2version (<1)", "sphinx (<2)", "tox"] +[[package]] +name = "deprecation" +version = "2.1.0" +description = "A library to handle automated deprecations" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "deprecation-2.1.0-py2.py3-none-any.whl", hash = "sha256:a10811591210e1fb0e768a8c25517cabeabcba6f0bf96564f8ff45189f90b14a"}, + {file = "deprecation-2.1.0.tar.gz", hash = "sha256:72b3bde64e5d778694b0cf68178aed03d15e15477116add3fb773e581f9518ff"}, +] + +[package.dependencies] +packaging = "*" + [[package]] name = "distlib" -version = "0.3.7" +version = "0.3.8" description = "Distribution utilities" category = "main" optional = false python-versions = "*" files = [ - {file = "distlib-0.3.7-py2.py3-none-any.whl", hash = "sha256:2e24928bc811348f0feb63014e97aaae3037f2cf48712d51ae61df7fd6075057"}, - {file = "distlib-0.3.7.tar.gz", hash = "sha256:9dafe54b34a028eafd95039d5e5d4851a13734540f1331060d31c9916e7147a8"}, + {file = "distlib-0.3.8-py2.py3-none-any.whl", hash = "sha256:034db59a0b96f8ca18035f36290806a9a6e6bd9d1ff91e45a7f172eb17e51784"}, + {file = "distlib-0.3.8.tar.gz", hash = "sha256:1530ea13e350031b6312d8580ddb6b27a104275a31106523b8f123787f494f64"}, +] + +[[package]] +name = "docopt" +version = "0.6.2" +description = "Pythonic argument parser, that will make you smile" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "docopt-0.6.2.tar.gz", hash = "sha256:49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491"}, ] [[package]] @@ -416,6 +572,26 @@ files = [ {file = "et_xmlfile-1.1.0.tar.gz", hash = "sha256:8eb9e2bc2f8c97e37a2dc85a09ecdcdec9d8a396530a6d5a33b30b9a92da0c5c"}, ] +[[package]] +name = "eutils" +version = "0.6.0" +description = "\"Python interface to NCBI's eutilities API\"" +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "eutils-0.6.0-py2.py3-none-any.whl", hash = "sha256:4938c4baff6ca52141204ff3eff3a91ec1e83e52a6c5d92e7163585117b96566"}, + {file = "eutils-0.6.0.tar.gz", hash = "sha256:3515178c0aadb836206a3eee2bc9f340f3213c13b53632e058eb58a9219d03cf"}, +] + +[package.dependencies] +lxml = "*" +pytz = "*" +requests = "*" + +[package.extras] +dev = ["flake8", "ipython", "mock", "pytest", "pytest-cov", "restview", "setuptools", "sphinx", "sphinx-rtd-theme", "tox", "vcrpy", "yapf"] + [[package]] name = "exceptiongroup" version = "1.2.0" @@ -431,6 +607,62 @@ files = [ [package.extras] test = ["pytest (>=6)"] +[[package]] +name = "fastobo" +version = "0.12.3" +description = "Faultless AST for Open Biomedical Ontologies in Python." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "fastobo-0.12.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:79fe4f5ba1ec1a2bc1ca0d65834cfc622db639128ba89019328937e623c54094"}, + {file = "fastobo-0.12.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:21c347ec270d0ef6e120ba701370a8ef20953654b397d2814f62595d4d7c0062"}, + {file = "fastobo-0.12.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42b5cc3676bfbe902632075455eb8faef2e3c2812423bb172e0c9bb905e93e04"}, + {file = "fastobo-0.12.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:922e61874e3c436c1990fb741f69b15c8395d1c760c569f2b4f024c7d315a0f4"}, + {file = "fastobo-0.12.3-cp310-cp310-win_amd64.whl", hash = "sha256:c8f73c80ae92fd7ba8e0532880b53308200563a7ce2137ed751dd3bfb5dcde88"}, + {file = "fastobo-0.12.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7862627caf2deda767a8b5278f7da3bf6cb8173130505f7aed03c41d5b512de9"}, + {file = "fastobo-0.12.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b496e003db5ae1d27de3c5078a3a00d1bcb84b436eb68461a55efd3af979bbc6"}, + {file = "fastobo-0.12.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2fed9875760ea2f0d7d9a3697f83a3168c3cd46005b41096dafbae97220a9637"}, + {file = "fastobo-0.12.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:debab1d3144506a9b4c0d98261ecf7bdcadb5f420843358188b11bc9312aec90"}, + {file = "fastobo-0.12.3-cp311-cp311-win_amd64.whl", hash = "sha256:5566f9f54f836e29edbdae15d22b11982db73fedfaefcbe5cc9f10f2568179a4"}, + {file = "fastobo-0.12.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:a9d6502e397bcb644ada900e33ea70683006c23598758f829be7210e375f7952"}, + {file = "fastobo-0.12.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:673aa41d260869ba6ae07aaa716c78cb26203662e61b3e401b006d85d748cf76"}, + {file = "fastobo-0.12.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68841568868408ac1b020d436ce29de50c7457031051d8d7389dc8d838cb244f"}, + {file = "fastobo-0.12.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:09714ec07d4b0211a3ada40b7b1bfcca64aa01ba24c50d39c4d367bea058f996"}, + {file = "fastobo-0.12.3-cp312-cp312-win_amd64.whl", hash = "sha256:fa6aaa4380825692c863f2cf9a0ad667973af8dd9162fd8282331464489b3f6c"}, + {file = "fastobo-0.12.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:fa546543209f3ce95b23c767dd4c2ae4181a81526e8ab2df4a0c079b4073ef72"}, + {file = "fastobo-0.12.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9739bb54c025679108a1ba8638f327ddddb68d7cdd666fd9009a72597a590560"}, + {file = "fastobo-0.12.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d7cce0096b09a73fef542c17899f84db1234aff7d6bc12c1b8b86e109613bfa0"}, + {file = "fastobo-0.12.3-cp37-cp37m-win_amd64.whl", hash = "sha256:64e028355b7ca9fb4d2b8f688759e04a7c48c08db55aaafdc599dca9bc4d70fe"}, + {file = "fastobo-0.12.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:525cf2eebb584e5e2a2fe7c9aca4172109a8bdc008cf5699d14ffbd15a136cae"}, + {file = "fastobo-0.12.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:727743ff6353eb5d2982568e585b7b69fed9f6e63a141ebbbbd3f5d79a4ea8bd"}, + {file = "fastobo-0.12.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5a73ba3d593d420675691e53698cdc21b4500b17036ee80bd26b5acea03192e8"}, + {file = "fastobo-0.12.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:377ecc157842a10ecc8a00c8d9ea9f380010cbb1ee123db42b7aca78d6c12cd9"}, + {file = "fastobo-0.12.3-cp38-cp38-win_amd64.whl", hash = "sha256:bd6d4c7be54900022f85403b5c65f80b2b27997e185920a5e50471bf66e7ff08"}, + {file = "fastobo-0.12.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:eea6e991a4e9c0f9e4c752125f72c22ed27fb8ea3c08e4610b1264c3a3100979"}, + {file = "fastobo-0.12.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e1ea49a9f0b8c8a51d920cb2782c88ddb66f44e81db55ee876ccbc6a2c3a12d2"}, + {file = "fastobo-0.12.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5cdbd0c52a5d0d43035b21294579b73439889e4af08eb5739dc94a59caaa861f"}, + {file = "fastobo-0.12.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c6acd98a335375c384e236b1e37867150b3b067f3a161c0cfe6a3dcf74aa9bd0"}, + {file = "fastobo-0.12.3-cp39-cp39-win_amd64.whl", hash = "sha256:32ce37ba36f3b5e7b6642b6c0e5b9a0a6d95f78e5e98901f45cbbc958665fe46"}, + {file = "fastobo-0.12.3-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:c8fba47c98201d0c3b0c515e1ded7608a1f3015a5a0a34df8d6cbf201d58a00e"}, + {file = "fastobo-0.12.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4071609ee8c8e87b03b2e786c6bd6d6845eb3580410bf95ee29c445699a99530"}, + {file = "fastobo-0.12.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:34781dd51ad9589e6b73bf6c3854edd22a6aba4d78d9ef17fcba3448b8501abe"}, + {file = "fastobo-0.12.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:958da0f135270da6fcfb8181114e5f631e77bc11ad897112039764af19085183"}, + {file = "fastobo-0.12.3-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:75977f4cbdfd7b371b9c4107de953c3bd1a57201cec7c877a9a64eff7817b8ce"}, + {file = "fastobo-0.12.3-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4589124050eab5517416a357b8e0c50ecbd36a7caaf3428b3b403f8147858986"}, + {file = "fastobo-0.12.3-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c3bdbc447398a21b5ea35195bf1541f8634d86680ed763b71aa99928859bc2e"}, + {file = "fastobo-0.12.3-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:29f5180c37428af74ff80f08a4889d13fb716a6ee858debd00ac805f7c4f792b"}, + {file = "fastobo-0.12.3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:9e6d701d9f69a94222c621c86ef47fa7d2cebed0a0f455a2c9144a0a8227d4ea"}, + {file = "fastobo-0.12.3-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d21581d8a22b0acf2db2b987e76c19be3b9e5a714e290690e2858b533bd882a5"}, + {file = "fastobo-0.12.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b676acbf95579a72b1fae985442a583a15f2cc358efd061ab304a1f6e14269a"}, + {file = "fastobo-0.12.3-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:3f245df99769d08c007aa2630b9ca0c2aca628371512f48aaf61953f67625b05"}, + {file = "fastobo-0.12.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:dc566c24d891ab21eb985fbc73d1b5ef3bfa3f096473060cfddbab8b00669756"}, + {file = "fastobo-0.12.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:75205475ce0d6cedd5074107c3719b2c8df4e14cc5d481b1a28a5639418705cd"}, + {file = "fastobo-0.12.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e180e7dcf53e6fc774230d8a53212c7f710b2265ef2b3b07fe4fc75226bae17c"}, + {file = "fastobo-0.12.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:5e6f20a884c9409e9968e77ee74d407564814f2360dfc35440de268d753ad85e"}, + {file = "fastobo-0.12.3.tar.gz", hash = "sha256:f375932a24b078706797eb9296740f2d2e6987a34309bda7c9f235aba1d74217"}, +] + [[package]] name = "filelock" version = "3.13.1" @@ -460,6 +692,26 @@ files = [ {file = "fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f"}, ] +[[package]] +name = "funowl" +version = "0.2.3" +description = "Python rendering of the OWL Functional syntax" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "funowl-0.2.3-py3-none-any.whl", hash = "sha256:4c4328d03c7815cd61d6691f0fafc78dc9a78ec3dcab4c83afb64d125ad3660e"}, + {file = "funowl-0.2.3.tar.gz", hash = "sha256:eecc2f58d792c714f6671a826cb2744e80cd3019fa56b3c8539ce69c8d874126"}, +] + +[package.dependencies] +bcp47 = "*" +jsonasobj = "*" +pyjsg = ">=0.11.6" +rdflib = ">=6.2.0,<8" +rdflib-shim = "*" +rfc3987 = "*" + [[package]] name = "ghp-import" version = "2.1.0" @@ -495,14 +747,14 @@ beautifulsoup4 = "*" [[package]] name = "google-api-core" -version = "2.14.0" +version = "2.16.2" description = "Google API client core library" category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "google-api-core-2.14.0.tar.gz", hash = "sha256:5368a4502b793d9bbf812a5912e13e4e69f9bd87f6efb508460c43f5bbd1ce41"}, - {file = "google_api_core-2.14.0-py3-none-any.whl", hash = "sha256:de2fb50ed34d47ddbb2bd2dcf680ee8fead46279f4ed6b16de362aca23a18952"}, + {file = "google-api-core-2.16.2.tar.gz", hash = "sha256:032d37b45d1d6bdaf68fb11ff621e2593263a239fa9246e2e94325f9c47876d2"}, + {file = "google_api_core-2.16.2-py3-none-any.whl", hash = "sha256:449ca0e3f14c179b4165b664256066c7861610f70b6ffe54bb01a04e9b466929"}, ] [package.dependencies] @@ -518,14 +770,14 @@ grpcio-gcp = ["grpcio-gcp (>=0.2.2,<1.0.dev0)"] [[package]] name = "google-api-python-client" -version = "2.108.0" +version = "2.116.0" description = "Google API Client Library for Python" category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "google-api-python-client-2.108.0.tar.gz", hash = "sha256:6396efca83185fb205c0abdbc1c2ee57b40475578c6af37f6d0e30a639aade99"}, - {file = "google_api_python_client-2.108.0-py2.py3-none-any.whl", hash = "sha256:9d1327213e388943ebcd7db5ce6e7f47987a7e6874e3e1f6116010eea4a0e75d"}, + {file = "google-api-python-client-2.116.0.tar.gz", hash = "sha256:f9f32361e16114d62929638fe07f77be30216b079ad316dc2ced859d9f72e5ad"}, + {file = "google_api_python_client-2.116.0-py2.py3-none-any.whl", hash = "sha256:846e44417c6b7385fa5f5a46cb6b9d23327754c560830245ee53a577c5e44cec"}, ] [package.dependencies] @@ -537,14 +789,14 @@ uritemplate = ">=3.0.1,<5" [[package]] name = "google-auth" -version = "2.23.4" +version = "2.27.0" description = "Google Authentication Library" category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "google-auth-2.23.4.tar.gz", hash = "sha256:79905d6b1652187def79d491d6e23d0cbb3a21d3c7ba0dbaa9c8a01906b13ff3"}, - {file = "google_auth-2.23.4-py2.py3-none-any.whl", hash = "sha256:d4bbc92fe4b8bfd2f3e8d88e5ba7085935da208ee38a134fc280e7ce682a05f2"}, + {file = "google-auth-2.27.0.tar.gz", hash = "sha256:e863a56ccc2d8efa83df7a80272601e43487fa9a728a376205c86c26aaefa821"}, + {file = "google_auth-2.27.0-py2.py3-none-any.whl", hash = "sha256:8e4bad367015430ff253fe49d500fdc3396c1a434db5740828c728e45bcce245"}, ] [package.dependencies] @@ -561,14 +813,14 @@ requests = ["requests (>=2.20.0,<3.0.0.dev0)"] [[package]] name = "google-auth-httplib2" -version = "0.1.1" +version = "0.2.0" description = "Google Authentication Library: httplib2 transport" category = "dev" optional = false python-versions = "*" files = [ - {file = "google-auth-httplib2-0.1.1.tar.gz", hash = "sha256:c64bc555fdc6dd788ea62ecf7bccffcf497bf77244887a3f3d7a5a02f8e3fc29"}, - {file = "google_auth_httplib2-0.1.1-py2.py3-none-any.whl", hash = "sha256:42c50900b8e4dcdf8222364d1f0efe32b8421fb6ed72f2613f12f75cc933478c"}, + {file = "google-auth-httplib2-0.2.0.tar.gz", hash = "sha256:38aa7badf48f974f1eb9861794e9c0cb2a0511a4ec0679b1f886d108f5640e05"}, + {file = "google_auth_httplib2-0.2.0-py2.py3-none-any.whl", hash = "sha256:b65a0a2123300dd71281a7bf6e64d65a0759287df52729bdd1ae2e47dc311a3d"}, ] [package.dependencies] @@ -577,14 +829,14 @@ httplib2 = ">=0.19.0" [[package]] name = "google-auth-oauthlib" -version = "1.1.0" +version = "1.2.0" description = "Google Authentication Library" category = "dev" optional = false python-versions = ">=3.6" files = [ - {file = "google-auth-oauthlib-1.1.0.tar.gz", hash = "sha256:83ea8c3b0881e453790baff4448e8a6112ac8778d1de9da0b68010b843937afb"}, - {file = "google_auth_oauthlib-1.1.0-py2.py3-none-any.whl", hash = "sha256:089c6e587d36f4803ac7e0720c045c6a8b1fd1790088b8424975b90d0ee61c12"}, + {file = "google-auth-oauthlib-1.2.0.tar.gz", hash = "sha256:292d2d3783349f2b0734a0a0207b1e1e322ac193c2c09d8f7c613fb7cc501ea8"}, + {file = "google_auth_oauthlib-1.2.0-py2.py3-none-any.whl", hash = "sha256:297c1ce4cb13a99b5834c74a1fe03252e1e499716718b190f56bcb9c4abc4faf"}, ] [package.dependencies] @@ -596,14 +848,14 @@ tool = ["click (>=6.0.0)"] [[package]] name = "googleapis-common-protos" -version = "1.61.0" +version = "1.62.0" description = "Common protobufs used in Google APIs" category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "googleapis-common-protos-1.61.0.tar.gz", hash = "sha256:8a64866a97f6304a7179873a465d6eee97b7a24ec6cfd78e0f575e96b821240b"}, - {file = "googleapis_common_protos-1.61.0-py2.py3-none-any.whl", hash = "sha256:22f1915393bb3245343f6efe87f6fe868532efc12aa26b391b15132e1279f1c0"}, + {file = "googleapis-common-protos-1.62.0.tar.gz", hash = "sha256:83f0ece9f94e5672cced82f592d2a5edf527a96ed1794f0bab36d5735c996277"}, + {file = "googleapis_common_protos-1.62.0-py2.py3-none-any.whl", hash = "sha256:4750113612205514f9f6aa4cb00d523a94f3e8c06c5ad2fee466387dc4875f07"}, ] [package.dependencies] @@ -631,90 +883,92 @@ test = ["coverage", "mock (>=4)", "pytest (>=7)", "pytest-cov", "pytest-mock (>= [[package]] name = "greenlet" -version = "3.0.1" +version = "3.0.3" description = "Lightweight in-process concurrent programming" category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "greenlet-3.0.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:f89e21afe925fcfa655965ca8ea10f24773a1791400989ff32f467badfe4a064"}, - {file = "greenlet-3.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28e89e232c7593d33cac35425b58950789962011cc274aa43ef8865f2e11f46d"}, - {file = "greenlet-3.0.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b8ba29306c5de7717b5761b9ea74f9c72b9e2b834e24aa984da99cbfc70157fd"}, - {file = "greenlet-3.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:19bbdf1cce0346ef7341705d71e2ecf6f41a35c311137f29b8a2dc2341374565"}, - {file = "greenlet-3.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:599daf06ea59bfedbec564b1692b0166a0045f32b6f0933b0dd4df59a854caf2"}, - {file = "greenlet-3.0.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b641161c302efbb860ae6b081f406839a8b7d5573f20a455539823802c655f63"}, - {file = "greenlet-3.0.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d57e20ba591727da0c230ab2c3f200ac9d6d333860d85348816e1dca4cc4792e"}, - {file = "greenlet-3.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5805e71e5b570d490938d55552f5a9e10f477c19400c38bf1d5190d760691846"}, - {file = "greenlet-3.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:52e93b28db27ae7d208748f45d2db8a7b6a380e0d703f099c949d0f0d80b70e9"}, - {file = "greenlet-3.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:f7bfb769f7efa0eefcd039dd19d843a4fbfbac52f1878b1da2ed5793ec9b1a65"}, - {file = "greenlet-3.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:91e6c7db42638dc45cf2e13c73be16bf83179f7859b07cfc139518941320be96"}, - {file = "greenlet-3.0.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1757936efea16e3f03db20efd0cd50a1c86b06734f9f7338a90c4ba85ec2ad5a"}, - {file = "greenlet-3.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:19075157a10055759066854a973b3d1325d964d498a805bb68a1f9af4aaef8ec"}, - {file = "greenlet-3.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9d21aaa84557d64209af04ff48e0ad5e28c5cca67ce43444e939579d085da72"}, - {file = "greenlet-3.0.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2847e5d7beedb8d614186962c3d774d40d3374d580d2cbdab7f184580a39d234"}, - {file = "greenlet-3.0.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:97e7ac860d64e2dcba5c5944cfc8fa9ea185cd84061c623536154d5a89237884"}, - {file = "greenlet-3.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:b2c02d2ad98116e914d4f3155ffc905fd0c025d901ead3f6ed07385e19122c94"}, - {file = "greenlet-3.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:22f79120a24aeeae2b4471c711dcf4f8c736a2bb2fabad2a67ac9a55ea72523c"}, - {file = "greenlet-3.0.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:100f78a29707ca1525ea47388cec8a049405147719f47ebf3895e7509c6446aa"}, - {file = "greenlet-3.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:60d5772e8195f4e9ebf74046a9121bbb90090f6550f81d8956a05387ba139353"}, - {file = "greenlet-3.0.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:daa7197b43c707462f06d2c693ffdbb5991cbb8b80b5b984007de431493a319c"}, - {file = "greenlet-3.0.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ea6b8aa9e08eea388c5f7a276fabb1d4b6b9d6e4ceb12cc477c3d352001768a9"}, - {file = "greenlet-3.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d11ebbd679e927593978aa44c10fc2092bc454b7d13fdc958d3e9d508aba7d0"}, - {file = "greenlet-3.0.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:dbd4c177afb8a8d9ba348d925b0b67246147af806f0b104af4d24f144d461cd5"}, - {file = "greenlet-3.0.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:20107edf7c2c3644c67c12205dc60b1bb11d26b2610b276f97d666110d1b511d"}, - {file = "greenlet-3.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8bef097455dea90ffe855286926ae02d8faa335ed8e4067326257cb571fc1445"}, - {file = "greenlet-3.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:b2d3337dcfaa99698aa2377c81c9ca72fcd89c07e7eb62ece3f23a3fe89b2ce4"}, - {file = "greenlet-3.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:80ac992f25d10aaebe1ee15df45ca0d7571d0f70b645c08ec68733fb7a020206"}, - {file = "greenlet-3.0.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:337322096d92808f76ad26061a8f5fccb22b0809bea39212cd6c406f6a7060d2"}, - {file = "greenlet-3.0.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b9934adbd0f6e476f0ecff3c94626529f344f57b38c9a541f87098710b18af0a"}, - {file = "greenlet-3.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc4d815b794fd8868c4d67602692c21bf5293a75e4b607bb92a11e821e2b859a"}, - {file = "greenlet-3.0.1-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:41bdeeb552d814bcd7fb52172b304898a35818107cc8778b5101423c9017b3de"}, - {file = "greenlet-3.0.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:6e6061bf1e9565c29002e3c601cf68569c450be7fc3f7336671af7ddb4657166"}, - {file = "greenlet-3.0.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:fa24255ae3c0ab67e613556375a4341af04a084bd58764731972bcbc8baeba36"}, - {file = "greenlet-3.0.1-cp37-cp37m-win32.whl", hash = "sha256:b489c36d1327868d207002391f662a1d163bdc8daf10ab2e5f6e41b9b96de3b1"}, - {file = "greenlet-3.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:f33f3258aae89da191c6ebaa3bc517c6c4cbc9b9f689e5d8452f7aedbb913fa8"}, - {file = "greenlet-3.0.1-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:d2905ce1df400360463c772b55d8e2518d0e488a87cdea13dd2c71dcb2a1fa16"}, - {file = "greenlet-3.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a02d259510b3630f330c86557331a3b0e0c79dac3d166e449a39363beaae174"}, - {file = "greenlet-3.0.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:55d62807f1c5a1682075c62436702aaba941daa316e9161e4b6ccebbbf38bda3"}, - {file = "greenlet-3.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3fcc780ae8edbb1d050d920ab44790201f027d59fdbd21362340a85c79066a74"}, - {file = "greenlet-3.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4eddd98afc726f8aee1948858aed9e6feeb1758889dfd869072d4465973f6bfd"}, - {file = "greenlet-3.0.1-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:eabe7090db68c981fca689299c2d116400b553f4b713266b130cfc9e2aa9c5a9"}, - {file = "greenlet-3.0.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:f2f6d303f3dee132b322a14cd8765287b8f86cdc10d2cb6a6fae234ea488888e"}, - {file = "greenlet-3.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d923ff276f1c1f9680d32832f8d6c040fe9306cbfb5d161b0911e9634be9ef0a"}, - {file = "greenlet-3.0.1-cp38-cp38-win32.whl", hash = "sha256:0b6f9f8ca7093fd4433472fd99b5650f8a26dcd8ba410e14094c1e44cd3ceddd"}, - {file = "greenlet-3.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:990066bff27c4fcf3b69382b86f4c99b3652bab2a7e685d968cd4d0cfc6f67c6"}, - {file = "greenlet-3.0.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:ce85c43ae54845272f6f9cd8320d034d7a946e9773c693b27d620edec825e376"}, - {file = "greenlet-3.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89ee2e967bd7ff85d84a2de09df10e021c9b38c7d91dead95b406ed6350c6997"}, - {file = "greenlet-3.0.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:87c8ceb0cf8a5a51b8008b643844b7f4a8264a2c13fcbcd8a8316161725383fe"}, - {file = "greenlet-3.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d6a8c9d4f8692917a3dc7eb25a6fb337bff86909febe2f793ec1928cd97bedfc"}, - {file = "greenlet-3.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fbc5b8f3dfe24784cee8ce0be3da2d8a79e46a276593db6868382d9c50d97b1"}, - {file = "greenlet-3.0.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:85d2b77e7c9382f004b41d9c72c85537fac834fb141b0296942d52bf03fe4a3d"}, - {file = "greenlet-3.0.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:696d8e7d82398e810f2b3622b24e87906763b6ebfd90e361e88eb85b0e554dc8"}, - {file = "greenlet-3.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:329c5a2e5a0ee942f2992c5e3ff40be03e75f745f48847f118a3cfece7a28546"}, - {file = "greenlet-3.0.1-cp39-cp39-win32.whl", hash = "sha256:cf868e08690cb89360eebc73ba4be7fb461cfbc6168dd88e2fbbe6f31812cd57"}, - {file = "greenlet-3.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:ac4a39d1abae48184d420aa8e5e63efd1b75c8444dd95daa3e03f6c6310e9619"}, - {file = "greenlet-3.0.1.tar.gz", hash = "sha256:816bd9488a94cba78d93e1abb58000e8266fa9cc2aa9ccdd6eb0696acb24005b"}, -] - -[package.extras] -docs = ["Sphinx"] + {file = "greenlet-3.0.3-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:9da2bd29ed9e4f15955dd1595ad7bc9320308a3b766ef7f837e23ad4b4aac31a"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d353cadd6083fdb056bb46ed07e4340b0869c305c8ca54ef9da3421acbdf6881"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dca1e2f3ca00b84a396bc1bce13dd21f680f035314d2379c4160c98153b2059b"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3ed7fb269f15dc662787f4119ec300ad0702fa1b19d2135a37c2c4de6fadfd4a"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd4f49ae60e10adbc94b45c0b5e6a179acc1736cf7a90160b404076ee283cf83"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:73a411ef564e0e097dbe7e866bb2dda0f027e072b04da387282b02c308807405"}, + {file = "greenlet-3.0.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7f362975f2d179f9e26928c5b517524e89dd48530a0202570d55ad6ca5d8a56f"}, + {file = "greenlet-3.0.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:649dde7de1a5eceb258f9cb00bdf50e978c9db1b996964cd80703614c86495eb"}, + {file = "greenlet-3.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:68834da854554926fbedd38c76e60c4a2e3198c6fbed520b106a8986445caaf9"}, + {file = "greenlet-3.0.3-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:b1b5667cced97081bf57b8fa1d6bfca67814b0afd38208d52538316e9422fc61"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52f59dd9c96ad2fc0d5724107444f76eb20aaccb675bf825df6435acb7703559"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:afaff6cf5200befd5cec055b07d1c0a5a06c040fe5ad148abcd11ba6ab9b114e"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe754d231288e1e64323cfad462fcee8f0288654c10bdf4f603a39ed923bef33"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2797aa5aedac23af156bbb5a6aa2cd3427ada2972c828244eb7d1b9255846379"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7f009caad047246ed379e1c4dbcb8b020f0a390667ea74d2387be2998f58a22"}, + {file = "greenlet-3.0.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c5e1536de2aad7bf62e27baf79225d0d64360d4168cf2e6becb91baf1ed074f3"}, + {file = "greenlet-3.0.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:894393ce10ceac937e56ec00bb71c4c2f8209ad516e96033e4b3b1de270e200d"}, + {file = "greenlet-3.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:1ea188d4f49089fc6fb283845ab18a2518d279c7cd9da1065d7a84e991748728"}, + {file = "greenlet-3.0.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:70fb482fdf2c707765ab5f0b6655e9cfcf3780d8d87355a063547b41177599be"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4d1ac74f5c0c0524e4a24335350edad7e5f03b9532da7ea4d3c54d527784f2e"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:149e94a2dd82d19838fe4b2259f1b6b9957d5ba1b25640d2380bea9c5df37676"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:15d79dd26056573940fcb8c7413d84118086f2ec1a8acdfa854631084393efcc"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:881b7db1ebff4ba09aaaeae6aa491daeb226c8150fc20e836ad00041bcb11230"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fcd2469d6a2cf298f198f0487e0a5b1a47a42ca0fa4dfd1b6862c999f018ebbf"}, + {file = "greenlet-3.0.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1f672519db1796ca0d8753f9e78ec02355e862d0998193038c7073045899f305"}, + {file = "greenlet-3.0.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2516a9957eed41dd8f1ec0c604f1cdc86758b587d964668b5b196a9db5bfcde6"}, + {file = "greenlet-3.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:bba5387a6975598857d86de9eac14210a49d554a77eb8261cc68b7d082f78ce2"}, + {file = "greenlet-3.0.3-cp37-cp37m-macosx_11_0_universal2.whl", hash = "sha256:5b51e85cb5ceda94e79d019ed36b35386e8c37d22f07d6a751cb659b180d5274"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:daf3cb43b7cf2ba96d614252ce1684c1bccee6b2183a01328c98d36fcd7d5cb0"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:99bf650dc5d69546e076f413a87481ee1d2d09aaaaaca058c9251b6d8c14783f"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2dd6e660effd852586b6a8478a1d244b8dc90ab5b1321751d2ea15deb49ed414"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3391d1e16e2a5a1507d83e4a8b100f4ee626e8eca43cf2cadb543de69827c4c"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e1f145462f1fa6e4a4ae3c0f782e580ce44d57c8f2c7aae1b6fa88c0b2efdb41"}, + {file = "greenlet-3.0.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:1a7191e42732df52cb5f39d3527217e7ab73cae2cb3694d241e18f53d84ea9a7"}, + {file = "greenlet-3.0.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:0448abc479fab28b00cb472d278828b3ccca164531daab4e970a0458786055d6"}, + {file = "greenlet-3.0.3-cp37-cp37m-win32.whl", hash = "sha256:b542be2440edc2d48547b5923c408cbe0fc94afb9f18741faa6ae970dbcb9b6d"}, + {file = "greenlet-3.0.3-cp37-cp37m-win_amd64.whl", hash = "sha256:01bc7ea167cf943b4c802068e178bbf70ae2e8c080467070d01bfa02f337ee67"}, + {file = "greenlet-3.0.3-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:1996cb9306c8595335bb157d133daf5cf9f693ef413e7673cb07e3e5871379ca"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ddc0f794e6ad661e321caa8d2f0a55ce01213c74722587256fb6566049a8b04"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c9db1c18f0eaad2f804728c67d6c610778456e3e1cc4ab4bbd5eeb8e6053c6fc"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7170375bcc99f1a2fbd9c306f5be8764eaf3ac6b5cb968862cad4c7057756506"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b66c9c1e7ccabad3a7d037b2bcb740122a7b17a53734b7d72a344ce39882a1b"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:098d86f528c855ead3479afe84b49242e174ed262456c342d70fc7f972bc13c4"}, + {file = "greenlet-3.0.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:81bb9c6d52e8321f09c3d165b2a78c680506d9af285bfccbad9fb7ad5a5da3e5"}, + {file = "greenlet-3.0.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fd096eb7ffef17c456cfa587523c5f92321ae02427ff955bebe9e3c63bc9f0da"}, + {file = "greenlet-3.0.3-cp38-cp38-win32.whl", hash = "sha256:d46677c85c5ba00a9cb6f7a00b2bfa6f812192d2c9f7d9c4f6a55b60216712f3"}, + {file = "greenlet-3.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:419b386f84949bf0e7c73e6032e3457b82a787c1ab4a0e43732898a761cc9dbf"}, + {file = "greenlet-3.0.3-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:da70d4d51c8b306bb7a031d5cff6cc25ad253affe89b70352af5f1cb68e74b53"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:086152f8fbc5955df88382e8a75984e2bb1c892ad2e3c80a2508954e52295257"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d73a9fe764d77f87f8ec26a0c85144d6a951a6c438dfe50487df5595c6373eac"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7dcbe92cc99f08c8dd11f930de4d99ef756c3591a5377d1d9cd7dd5e896da71"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1551a8195c0d4a68fac7a4325efac0d541b48def35feb49d803674ac32582f61"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:64d7675ad83578e3fc149b617a444fab8efdafc9385471f868eb5ff83e446b8b"}, + {file = "greenlet-3.0.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b37eef18ea55f2ffd8f00ff8fe7c8d3818abd3e25fb73fae2ca3b672e333a7a6"}, + {file = "greenlet-3.0.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:77457465d89b8263bca14759d7c1684df840b6811b2499838cc5b040a8b5b113"}, + {file = "greenlet-3.0.3-cp39-cp39-win32.whl", hash = "sha256:57e8974f23e47dac22b83436bdcf23080ade568ce77df33159e019d161ce1d1e"}, + {file = "greenlet-3.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:c5ee858cfe08f34712f548c3c363e807e7186f03ad7a5039ebadb29e8c6be067"}, + {file = "greenlet-3.0.3.tar.gz", hash = "sha256:43374442353259554ce33599da8b692d5aa96f8976d567d4badf263371fbe491"}, +] + +[package.extras] +docs = ["Sphinx", "furo"] test = ["objgraph", "psutil"] [[package]] name = "gspread" -version = "5.12.0" +version = "6.0.0" description = "Google Spreadsheets Python API" category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "gspread-5.12.0-py3-none-any.whl", hash = "sha256:6fc8e0e627ec878b57caa69ce1c86225b54bee073bbfe5252f3868ea9a61d965"}, - {file = "gspread-5.12.0.tar.gz", hash = "sha256:a3fb9bdf1c185aeee32a6cf533b32628012f065327c50a810f1c909dc5eba64b"}, + {file = "gspread-6.0.0-py3-none-any.whl", hash = "sha256:a2c5e512b758577b0bde8e071c69bbd820646fe87e843a26d0aed0e8b0ad0dc1"}, + {file = "gspread-6.0.0.tar.gz", hash = "sha256:3b5efe315aeaa290d21befc8ee7bb0239db78c7b495d8831ae29fd1a182292a1"}, ] [package.dependencies] google-auth = ">=1.12.0" google-auth-oauthlib = ">=0.4.1" +StrEnum = "0.4.15" [[package]] name = "gspread-formatting" @@ -760,36 +1014,144 @@ pyparsing = {version = ">=2.4.2,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.0.2 || >3.0 [[package]] name = "idna" -version = "3.4" +version = "3.6" description = "Internationalized Domain Names in Applications (IDNA)" category = "main" optional = false python-versions = ">=3.5" files = [ - {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"}, - {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, + {file = "idna-3.6-py3-none-any.whl", hash = "sha256:c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"}, + {file = "idna-3.6.tar.gz", hash = "sha256:9ecdbbd083b06798ae1e86adcbfe8ab1479cf864e4ee30fe4e46a003d12491ca"}, +] + +[[package]] +name = "ijson" +version = "3.2.3" +description = "Iterative JSON parser with standard Python iterator interfaces" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "ijson-3.2.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0a4ae076bf97b0430e4e16c9cb635a6b773904aec45ed8dcbc9b17211b8569ba"}, + {file = "ijson-3.2.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:cfced0a6ec85916eb8c8e22415b7267ae118eaff2a860c42d2cc1261711d0d31"}, + {file = "ijson-3.2.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0b9d1141cfd1e6d6643aa0b4876730d0d28371815ce846d2e4e84a2d4f471cf3"}, + {file = "ijson-3.2.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9e0a27db6454edd6013d40a956d008361aac5bff375a9c04ab11fc8c214250b5"}, + {file = "ijson-3.2.3-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c0d526ccb335c3c13063c273637d8611f32970603dfb182177b232d01f14c23"}, + {file = "ijson-3.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:545a30b3659df2a3481593d30d60491d1594bc8005f99600e1bba647bb44cbb5"}, + {file = "ijson-3.2.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:9680e37a10fedb3eab24a4a7e749d8a73f26f1a4c901430e7aa81b5da15f7307"}, + {file = "ijson-3.2.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:2a80c0bb1053055d1599e44dc1396f713e8b3407000e6390add72d49633ff3bb"}, + {file = "ijson-3.2.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f05ed49f434ce396ddcf99e9fd98245328e99f991283850c309f5e3182211a79"}, + {file = "ijson-3.2.3-cp310-cp310-win32.whl", hash = "sha256:b4eb2304573c9fdf448d3fa4a4fdcb727b93002b5c5c56c14a5ffbbc39f64ae4"}, + {file = "ijson-3.2.3-cp310-cp310-win_amd64.whl", hash = "sha256:923131f5153c70936e8bd2dd9dcfcff43c67a3d1c789e9c96724747423c173eb"}, + {file = "ijson-3.2.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:904f77dd3d87736ff668884fe5197a184748eb0c3e302ded61706501d0327465"}, + {file = "ijson-3.2.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0974444c1f416e19de1e9f567a4560890095e71e81623c509feff642114c1e53"}, + {file = "ijson-3.2.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c1a4b8eb69b6d7b4e94170aa991efad75ba156b05f0de2a6cd84f991def12ff9"}, + {file = "ijson-3.2.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d052417fd7ce2221114f8d3b58f05a83c1a2b6b99cafe0b86ac9ed5e2fc889df"}, + {file = "ijson-3.2.3-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7b8064a85ec1b0beda7dd028e887f7112670d574db606f68006c72dd0bb0e0e2"}, + {file = "ijson-3.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eaac293853f1342a8d2a45ac1f723c860f700860e7743fb97f7b76356df883a8"}, + {file = "ijson-3.2.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:6c32c18a934c1dc8917455b0ce478fd7a26c50c364bd52c5a4fb0fc6bb516af7"}, + {file = "ijson-3.2.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:713a919e0220ac44dab12b5fed74f9130f3480e55e90f9d80f58de129ea24f83"}, + {file = "ijson-3.2.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:4a3a6a2fbbe7550ffe52d151cf76065e6b89cfb3e9d0463e49a7e322a25d0426"}, + {file = "ijson-3.2.3-cp311-cp311-win32.whl", hash = "sha256:6a4db2f7fb9acfb855c9ae1aae602e4648dd1f88804a0d5cfb78c3639bcf156c"}, + {file = "ijson-3.2.3-cp311-cp311-win_amd64.whl", hash = "sha256:ccd6be56335cbb845f3d3021b1766299c056c70c4c9165fb2fbe2d62258bae3f"}, + {file = "ijson-3.2.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:eeb286639649fb6bed37997a5e30eefcacddac79476d24128348ec890b2a0ccb"}, + {file = "ijson-3.2.3-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:396338a655fb9af4ac59dd09c189885b51fa0eefc84d35408662031023c110d1"}, + {file = "ijson-3.2.3-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0e0243d166d11a2a47c17c7e885debf3b19ed136be2af1f5d1c34212850236ac"}, + {file = "ijson-3.2.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85afdb3f3a5d0011584d4fa8e6dccc5936be51c27e84cd2882fe904ca3bd04c5"}, + {file = "ijson-3.2.3-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:4fc35d569eff3afa76bfecf533f818ecb9390105be257f3f83c03204661ace70"}, + {file = "ijson-3.2.3-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:455d7d3b7a6aacfb8ab1ebcaf697eedf5be66e044eac32508fccdc633d995f0e"}, + {file = "ijson-3.2.3-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:c63f3d57dbbac56cead05b12b81e8e1e259f14ce7f233a8cbe7fa0996733b628"}, + {file = "ijson-3.2.3-cp36-cp36m-win32.whl", hash = "sha256:a4d7fe3629de3ecb088bff6dfe25f77be3e8261ed53d5e244717e266f8544305"}, + {file = "ijson-3.2.3-cp36-cp36m-win_amd64.whl", hash = "sha256:96190d59f015b5a2af388a98446e411f58ecc6a93934e036daa75f75d02386a0"}, + {file = "ijson-3.2.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:35194e0b8a2bda12b4096e2e792efa5d4801a0abb950c48ade351d479cd22ba5"}, + {file = "ijson-3.2.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1053fb5f0b010ee76ca515e6af36b50d26c1728ad46be12f1f147a835341083"}, + {file = "ijson-3.2.3-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:211124cff9d9d139dd0dfced356f1472860352c055d2481459038b8205d7d742"}, + {file = "ijson-3.2.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:92dc4d48e9f6a271292d6079e9fcdce33c83d1acf11e6e12696fb05c5889fe74"}, + {file = "ijson-3.2.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:3dcc33ee56f92a77f48776014ddb47af67c33dda361e84371153c4f1ed4434e1"}, + {file = "ijson-3.2.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:98c6799925a5d1988da4cd68879b8eeab52c6e029acc45e03abb7921a4715c4b"}, + {file = "ijson-3.2.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:4252e48c95cd8ceefc2caade310559ab61c37d82dfa045928ed05328eb5b5f65"}, + {file = "ijson-3.2.3-cp37-cp37m-win32.whl", hash = "sha256:644f4f03349ff2731fd515afd1c91b9e439e90c9f8c28292251834154edbffca"}, + {file = "ijson-3.2.3-cp37-cp37m-win_amd64.whl", hash = "sha256:ba33c764afa9ecef62801ba7ac0319268a7526f50f7601370d9f8f04e77fc02b"}, + {file = "ijson-3.2.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:4b2ec8c2a3f1742cbd5f36b65e192028e541b5fd8c7fd97c1fc0ca6c427c704a"}, + {file = "ijson-3.2.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7dc357da4b4ebd8903e77dbcc3ce0555ee29ebe0747c3c7f56adda423df8ec89"}, + {file = "ijson-3.2.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:bcc51c84bb220ac330122468fe526a7777faa6464e3b04c15b476761beea424f"}, + {file = "ijson-3.2.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8d54b624629f9903005c58d9321a036c72f5c212701bbb93d1a520ecd15e370"}, + {file = "ijson-3.2.3-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d6ea7c7e3ec44742e867c72fd750c6a1e35b112f88a917615332c4476e718d40"}, + {file = "ijson-3.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:916acdc5e504f8b66c3e287ada5d4b39a3275fc1f2013c4b05d1ab9933671a6c"}, + {file = "ijson-3.2.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:81815b4184b85ce124bfc4c446d5f5e5e643fc119771c5916f035220ada29974"}, + {file = "ijson-3.2.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:b49fd5fe1cd9c1c8caf6c59f82b08117dd6bea2ec45b641594e25948f48f4169"}, + {file = "ijson-3.2.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:86b3c91fdcb8ffb30556c9669930f02b7642de58ca2987845b04f0d7fe46d9a8"}, + {file = "ijson-3.2.3-cp38-cp38-win32.whl", hash = "sha256:a729b0c8fb935481afe3cf7e0dadd0da3a69cc7f145dbab8502e2f1e01d85a7c"}, + {file = "ijson-3.2.3-cp38-cp38-win_amd64.whl", hash = "sha256:d34e049992d8a46922f96483e96b32ac4c9cffd01a5c33a928e70a283710cd58"}, + {file = "ijson-3.2.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:9c2a12dcdb6fa28f333bf10b3a0f80ec70bc45280d8435be7e19696fab2bc706"}, + {file = "ijson-3.2.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1844c5b57da21466f255a0aeddf89049e730d7f3dfc4d750f0e65c36e6a61a7c"}, + {file = "ijson-3.2.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2ec3e5ff2515f1c40ef6a94983158e172f004cd643b9e4b5302017139b6c96e4"}, + {file = "ijson-3.2.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:46bafb1b9959872a1f946f8dd9c6f1a30a970fc05b7bfae8579da3f1f988e598"}, + {file = "ijson-3.2.3-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ab4db9fee0138b60e31b3c02fff8a4c28d7b152040553b6a91b60354aebd4b02"}, + {file = "ijson-3.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f4bc87e69d1997c6a55fff5ee2af878720801ff6ab1fb3b7f94adda050651e37"}, + {file = "ijson-3.2.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:e9fd906f0c38e9f0bfd5365e1bed98d649f506721f76bb1a9baa5d7374f26f19"}, + {file = "ijson-3.2.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:e84d27d1acb60d9102728d06b9650e5b7e5cb0631bd6e3dfadba8fb6a80d6c2f"}, + {file = "ijson-3.2.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2cc04fc0a22bb945cd179f614845c8b5106c0b3939ee0d84ce67c7a61ac1a936"}, + {file = "ijson-3.2.3-cp39-cp39-win32.whl", hash = "sha256:e641814793a037175f7ec1b717ebb68f26d89d82cfd66f36e588f32d7e488d5f"}, + {file = "ijson-3.2.3-cp39-cp39-win_amd64.whl", hash = "sha256:6bd3e7e91d031f1e8cea7ce53f704ab74e61e505e8072467e092172422728b22"}, + {file = "ijson-3.2.3-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:06f9707da06a19b01013f8c65bf67db523662a9b4a4ff027e946e66c261f17f0"}, + {file = "ijson-3.2.3-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:be8495f7c13fa1f622a2c6b64e79ac63965b89caf664cc4e701c335c652d15f2"}, + {file = "ijson-3.2.3-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7596b42f38c3dcf9d434dddd50f46aeb28e96f891444c2b4b1266304a19a2c09"}, + {file = "ijson-3.2.3-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fbac4e9609a1086bbad075beb2ceec486a3b138604e12d2059a33ce2cba93051"}, + {file = "ijson-3.2.3-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:db2d6341f9cb538253e7fe23311d59252f124f47165221d3c06a7ed667ecd595"}, + {file = "ijson-3.2.3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:fa8b98be298efbb2588f883f9953113d8a0023ab39abe77fe734b71b46b1220a"}, + {file = "ijson-3.2.3-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:674e585361c702fad050ab4c153fd168dc30f5980ef42b64400bc84d194e662d"}, + {file = "ijson-3.2.3-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fd12e42b9cb9c0166559a3ffa276b4f9fc9d5b4c304e5a13668642d34b48b634"}, + {file = "ijson-3.2.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d31e0d771d82def80cd4663a66de277c3b44ba82cd48f630526b52f74663c639"}, + {file = "ijson-3.2.3-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:7ce4c70c23521179d6da842bb9bc2e36bb9fad1e0187e35423ff0f282890c9ca"}, + {file = "ijson-3.2.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:39f551a6fbeed4433c85269c7c8778e2aaea2501d7ebcb65b38f556030642c17"}, + {file = "ijson-3.2.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b14d322fec0de7af16f3ef920bf282f0dd747200b69e0b9628117f381b7775b"}, + {file = "ijson-3.2.3-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7851a341429b12d4527ca507097c959659baf5106c7074d15c17c387719ffbcd"}, + {file = "ijson-3.2.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db3bf1b42191b5cc9b6441552fdcb3b583594cb6b19e90d1578b7cbcf80d0fae"}, + {file = "ijson-3.2.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:6f662dc44362a53af3084d3765bb01cd7b4734d1f484a6095cad4cb0cbfe5374"}, + {file = "ijson-3.2.3.tar.gz", hash = "sha256:10294e9bf89cb713da05bc4790bdff616610432db561964827074898e174f917"}, ] [[package]] name = "importlib-metadata" -version = "6.8.0" +version = "7.0.1" description = "Read metadata from Python packages" category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "importlib_metadata-6.8.0-py3-none-any.whl", hash = "sha256:3ebb78df84a805d7698245025b975d9d67053cd94c79245ba4b3eb694abe68bb"}, - {file = "importlib_metadata-6.8.0.tar.gz", hash = "sha256:dbace7892d8c0c4ac1ad096662232f831d4e64f4c4545bd53016a3e9d4654743"}, + {file = "importlib_metadata-7.0.1-py3-none-any.whl", hash = "sha256:4805911c3a4ec7c3966410053e9ec6a1fecd629117df5adee56dfc9432a1081e"}, + {file = "importlib_metadata-7.0.1.tar.gz", hash = "sha256:f238736bb06590ae52ac1fab06a3a9ef1d8dce2b7a35b5ab329371d6c8f5d2cc"}, ] [package.dependencies] zipp = ">=0.5" [package.extras] -docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] perf = ["ipython"] testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] +[[package]] +name = "inflect" +version = "6.2.0" +description = "Correctly generate plurals, singular nouns, ordinals, indefinite articles; convert numbers to words" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "inflect-6.2.0-py3-none-any.whl", hash = "sha256:5a005e0c9afe152cc95d552a59b8b0c19efc51823405b43d89e984f0c33bc243"}, + {file = "inflect-6.2.0.tar.gz", hash = "sha256:518088ef414a4e15df70e6bcb40d021da4d423cc6c2fd4c0cad5500d39f86627"}, +] + +[package.dependencies] +pydantic = ">=1.9.1" +typing-extensions = "*" + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["pygments", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-ruff"] + [[package]] name = "iniconfig" version = "2.0.0" @@ -834,14 +1196,14 @@ arrow = ">=0.15.0" [[package]] name = "jinja2" -version = "3.1.2" +version = "3.1.3" description = "A very fast and expressive template engine." category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, - {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, + {file = "Jinja2-3.1.3-py3-none-any.whl", hash = "sha256:7d6d50dd97d52cbc355597bd845fabfbac3f551e1f99619e39a35ce8c370b5fa"}, + {file = "Jinja2-3.1.3.tar.gz", hash = "sha256:ac8bd6544d4bb2c9792bf3a159e80bba8fda7f07e81bc3aed565432d5925ba90"}, ] [package.dependencies] @@ -925,14 +1287,14 @@ jsonpointer = ">=1.9" [[package]] name = "jsonpath-ng" -version = "1.6.0" +version = "1.6.1" description = "A final implementation of JSONPath for Python that aims to be standard compliant, including arithmetic and binary comparison operators and providing clear AST for metaprogramming." category = "dev" optional = false python-versions = "*" files = [ - {file = "jsonpath-ng-1.6.0.tar.gz", hash = "sha256:5483f8e9d74c39c9abfab554c070ae783c1c8cbadf5df60d561bc705ac68a07e"}, - {file = "jsonpath_ng-1.6.0-py3-none-any.whl", hash = "sha256:6fd04833412c4b3d9299edf369542f5e67095ca84efa17cbb7f06a34958adc9f"}, + {file = "jsonpath-ng-1.6.1.tar.gz", hash = "sha256:086c37ba4917304850bd837aeab806670224d3f038fe2833ff593a672ef0a5fa"}, + {file = "jsonpath_ng-1.6.1-py3-none-any.whl", hash = "sha256:8f22cd8273d7772eea9aaa84d922e0841aa36fdb8a2c6b7f6c3791a16a9bc0be"}, ] [package.dependencies] @@ -952,14 +1314,14 @@ files = [ [[package]] name = "jsonschema" -version = "4.20.0" +version = "4.21.1" description = "An implementation of JSON Schema validation for Python" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "jsonschema-4.20.0-py3-none-any.whl", hash = "sha256:ed6231f0429ecf966f5bc8dfef245998220549cbbcf140f913b7464c52c3b6b3"}, - {file = "jsonschema-4.20.0.tar.gz", hash = "sha256:4f614fd46d8d61258610998997743ec5492a648b33cf478c1ddc23ed4598a5fa"}, + {file = "jsonschema-4.21.1-py3-none-any.whl", hash = "sha256:7996507afae316306f9e2290407761157c6f78002dcf7419acb99822143d1c6f"}, + {file = "jsonschema-4.21.1.tar.gz", hash = "sha256:85727c00279f5fa6bedbe6238d2aa6403bedd8b4864ab11207d07df3cc1b2ee5"}, ] [package.dependencies] @@ -982,29 +1344,81 @@ format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339- [[package]] name = "jsonschema-specifications" -version = "2023.11.1" +version = "2023.12.1" description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "jsonschema_specifications-2023.11.1-py3-none-any.whl", hash = "sha256:f596778ab612b3fd29f72ea0d990393d0540a5aab18bf0407a46632eab540779"}, - {file = "jsonschema_specifications-2023.11.1.tar.gz", hash = "sha256:c9b234904ffe02f079bf91b14d79987faa685fd4b39c377a0996954c0090b9ca"}, + {file = "jsonschema_specifications-2023.12.1-py3-none-any.whl", hash = "sha256:87e4fdf3a94858b8a2ba2778d9ba57d8a9cafca7c7489c46ba0d30a8bc6a9c3c"}, + {file = "jsonschema_specifications-2023.12.1.tar.gz", hash = "sha256:48a76787b3e70f5ed53f1160d2b81f586e4ca6d1548c5de7085d1682674764cc"}, ] [package.dependencies] referencing = ">=0.31.0" +[[package]] +name = "kgcl-rdflib" +version = "0.5.0" +description = "Schema for the KGCL project." +category = "dev" +optional = false +python-versions = ">=3.8,<4.0" +files = [ + {file = "kgcl_rdflib-0.5.0-py3-none-any.whl", hash = "sha256:214c011eac692384dd18397e455af2a7375f6a2f71fa318df245e8826678f454"}, + {file = "kgcl_rdflib-0.5.0.tar.gz", hash = "sha256:19e34690316714b9c500e1749a35d1a0d17282f2a38cd2b1fd3d7d8cf5e6013d"}, +] + +[package.dependencies] +kgcl-schema = ">=0.5.0" +linkml-runtime = ">=1.1.24" + +[[package]] +name = "kgcl-schema" +version = "0.6.2" +description = "Schema for the KGCL project." +category = "dev" +optional = false +python-versions = ">=3.9,<4.0" +files = [ + {file = "kgcl_schema-0.6.2-py3-none-any.whl", hash = "sha256:e18b6e763c91db07f3cb6a444658590f43a873332dd2c0c595f379070cbd82e5"}, + {file = "kgcl_schema-0.6.2.tar.gz", hash = "sha256:a96a7c97f809434d8e27c4b1078ec634fdf72f153355afa40fceeb361cd53d7b"}, +] + +[package.dependencies] +curies = ">=0.6.0" +lark = ">=1.1.2" +linkml-runtime = ">=1.1.24" +prefixmaps = ">=0.2.0,<0.3.0" + +[[package]] +name = "lark" +version = "1.1.9" +description = "a modern parsing library" +category = "main" +optional = false +python-versions = ">=3.6" +files = [ + {file = "lark-1.1.9-py3-none-any.whl", hash = "sha256:a0dd3a87289f8ccbb325901e4222e723e7d745dbfc1803eaf5f3d2ace19cf2db"}, + {file = "lark-1.1.9.tar.gz", hash = "sha256:15fa5236490824c2c4aba0e22d2d6d823575dcaf4cdd1848e34b6ad836240fba"}, +] + +[package.extras] +atomic-cache = ["atomicwrites"] +interegular = ["interegular (>=0.3.1,<0.4.0)"] +nearley = ["js2py"] +regex = ["regex"] + [[package]] name = "linkml" -version = "1.6.8" +version = "1.6.10" description = "Linked Open Data Modeling Language" category = "dev" optional = false python-versions = ">=3.8.1,<4.0.0" files = [ - {file = "linkml-1.6.8-py3-none-any.whl", hash = "sha256:4fd8fc28b3c374100155923906094c84b165488fd40f3c2deac7b3d5b7ff7f9e"}, - {file = "linkml-1.6.8.tar.gz", hash = "sha256:dd1a75e5a258b02fc88cbc55063b79023799e0c1127321e736fab182a28dc758"}, + {file = "linkml-1.6.10-py3-none-any.whl", hash = "sha256:d4bc8e756e70a735509da9eab733e783fbc0f7c3074ffae13d1b0fc14b4c7001"}, + {file = "linkml-1.6.10.tar.gz", hash = "sha256:70046ff7886ae0937b5222575a811657121c2fa8514619668b7a65621a4da885"}, ] [package.dependencies] @@ -1052,6 +1466,24 @@ jsonpath-ng = "*" linkml-runtime = ">=1.1.6" "ruamel.yaml" = "*" +[[package]] +name = "linkml-renderer" +version = "0.3.0" +description = "linkml-renderer" +category = "dev" +optional = false +python-versions = ">=3.8,<4.0" +files = [ + {file = "linkml_renderer-0.3.0-py3-none-any.whl", hash = "sha256:9b2c0207751c8b5abb814b67fa1ae0f2a4dce80637d56ed770f74a40d4fee614"}, + {file = "linkml_renderer-0.3.0.tar.gz", hash = "sha256:59441022182d1386ef761ad4d055a23cef5707e0070400e2f6860893751c05f8"}, +] + +[package.dependencies] +airium = ">=0.2.5,<0.3.0" +click = ">=8.1.3,<9.0.0" +linkml-runtime = ">=1.4.1" +pydantic = "*" + [[package]] name = "linkml-runtime" version = "1.6.3" @@ -1081,14 +1513,14 @@ requests = "*" [[package]] name = "linkml-transformer" -version = "0.2.2" +version = "0.2.3" description = "" category = "main" optional = false python-versions = ">=3.9,<4.0" files = [ - {file = "linkml_transformer-0.2.2-py3-none-any.whl", hash = "sha256:53e4185099b1de389e794081ea012a7b37b2f9b50103855e78ee109d340223a5"}, - {file = "linkml_transformer-0.2.2.tar.gz", hash = "sha256:94fdacd42f71a99095eccb734de7c66981a6f59f8f1a82e2407d438d7d369813"}, + {file = "linkml_transformer-0.2.3-py3-none-any.whl", hash = "sha256:46e0e6a39fdd576da29e0905040e66576603d80364c1b27a2959c245968997f8"}, + {file = "linkml_transformer-0.2.3.tar.gz", hash = "sha256:ec22bc8071accdabdb153ed15f38ffd51c61922d0413fb58df484871a95874ea"}, ] [package.dependencies] @@ -1096,18 +1528,112 @@ asteval = ">=0.9.29,<0.10.0" deepdiff = ">=6.7.1,<7.0.0" linkml-runtime = ">=1.5.2" pydantic = ">=2.5.3,<3.0.0" -pyoxigraph = ">=0.3.22,<0.4.0" +ucumvert = ">=0.1.1,<0.2.0" + +[[package]] +name = "lxml" +version = "5.1.0" +description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "lxml-5.1.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:704f5572ff473a5f897745abebc6df40f22d4133c1e0a1f124e4f2bd3330ff7e"}, + {file = "lxml-5.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9d3c0f8567ffe7502d969c2c1b809892dc793b5d0665f602aad19895f8d508da"}, + {file = "lxml-5.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5fcfbebdb0c5d8d18b84118842f31965d59ee3e66996ac842e21f957eb76138c"}, + {file = "lxml-5.1.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2f37c6d7106a9d6f0708d4e164b707037b7380fcd0b04c5bd9cae1fb46a856fb"}, + {file = "lxml-5.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2befa20a13f1a75c751f47e00929fb3433d67eb9923c2c0b364de449121f447c"}, + {file = "lxml-5.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:22b7ee4c35f374e2c20337a95502057964d7e35b996b1c667b5c65c567d2252a"}, + {file = "lxml-5.1.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:bf8443781533b8d37b295016a4b53c1494fa9a03573c09ca5104550c138d5c05"}, + {file = "lxml-5.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:82bddf0e72cb2af3cbba7cec1d2fd11fda0de6be8f4492223d4a268713ef2147"}, + {file = "lxml-5.1.0-cp310-cp310-win32.whl", hash = "sha256:b66aa6357b265670bb574f050ffceefb98549c721cf28351b748be1ef9577d93"}, + {file = "lxml-5.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:4946e7f59b7b6a9e27bef34422f645e9a368cb2be11bf1ef3cafc39a1f6ba68d"}, + {file = "lxml-5.1.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:14deca1460b4b0f6b01f1ddc9557704e8b365f55c63070463f6c18619ebf964f"}, + {file = "lxml-5.1.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ed8c3d2cd329bf779b7ed38db176738f3f8be637bb395ce9629fc76f78afe3d4"}, + {file = "lxml-5.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:436a943c2900bb98123b06437cdd30580a61340fbdb7b28aaf345a459c19046a"}, + {file = "lxml-5.1.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:acb6b2f96f60f70e7f34efe0c3ea34ca63f19ca63ce90019c6cbca6b676e81fa"}, + {file = "lxml-5.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:af8920ce4a55ff41167ddbc20077f5698c2e710ad3353d32a07d3264f3a2021e"}, + {file = "lxml-5.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7cfced4a069003d8913408e10ca8ed092c49a7f6cefee9bb74b6b3e860683b45"}, + {file = "lxml-5.1.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9e5ac3437746189a9b4121db2a7b86056ac8786b12e88838696899328fc44bb2"}, + {file = "lxml-5.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f4c9bda132ad108b387c33fabfea47866af87f4ea6ffb79418004f0521e63204"}, + {file = "lxml-5.1.0-cp311-cp311-win32.whl", hash = "sha256:bc64d1b1dab08f679fb89c368f4c05693f58a9faf744c4d390d7ed1d8223869b"}, + {file = "lxml-5.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:a5ab722ae5a873d8dcee1f5f45ddd93c34210aed44ff2dc643b5025981908cda"}, + {file = "lxml-5.1.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:9aa543980ab1fbf1720969af1d99095a548ea42e00361e727c58a40832439114"}, + {file = "lxml-5.1.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:6f11b77ec0979f7e4dc5ae081325a2946f1fe424148d3945f943ceaede98adb8"}, + {file = "lxml-5.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a36c506e5f8aeb40680491d39ed94670487ce6614b9d27cabe45d94cd5d63e1e"}, + {file = "lxml-5.1.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f643ffd2669ffd4b5a3e9b41c909b72b2a1d5e4915da90a77e119b8d48ce867a"}, + {file = "lxml-5.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:16dd953fb719f0ffc5bc067428fc9e88f599e15723a85618c45847c96f11f431"}, + {file = "lxml-5.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:16018f7099245157564d7148165132c70adb272fb5a17c048ba70d9cc542a1a1"}, + {file = "lxml-5.1.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:82cd34f1081ae4ea2ede3d52f71b7be313756e99b4b5f829f89b12da552d3aa3"}, + {file = "lxml-5.1.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:19a1bc898ae9f06bccb7c3e1dfd73897ecbbd2c96afe9095a6026016e5ca97b8"}, + {file = "lxml-5.1.0-cp312-cp312-win32.whl", hash = "sha256:13521a321a25c641b9ea127ef478b580b5ec82aa2e9fc076c86169d161798b01"}, + {file = "lxml-5.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:1ad17c20e3666c035db502c78b86e58ff6b5991906e55bdbef94977700c72623"}, + {file = "lxml-5.1.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:24ef5a4631c0b6cceaf2dbca21687e29725b7c4e171f33a8f8ce23c12558ded1"}, + {file = "lxml-5.1.0-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8d2900b7f5318bc7ad8631d3d40190b95ef2aa8cc59473b73b294e4a55e9f30f"}, + {file = "lxml-5.1.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:601f4a75797d7a770daed8b42b97cd1bb1ba18bd51a9382077a6a247a12aa38d"}, + {file = "lxml-5.1.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b4b68c961b5cc402cbd99cca5eb2547e46ce77260eb705f4d117fd9c3f932b95"}, + {file = "lxml-5.1.0-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:afd825e30f8d1f521713a5669b63657bcfe5980a916c95855060048b88e1adb7"}, + {file = "lxml-5.1.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:262bc5f512a66b527d026518507e78c2f9c2bd9eb5c8aeeb9f0eb43fcb69dc67"}, + {file = "lxml-5.1.0-cp36-cp36m-win32.whl", hash = "sha256:e856c1c7255c739434489ec9c8aa9cdf5179785d10ff20add308b5d673bed5cd"}, + {file = "lxml-5.1.0-cp36-cp36m-win_amd64.whl", hash = "sha256:c7257171bb8d4432fe9d6fdde4d55fdbe663a63636a17f7f9aaba9bcb3153ad7"}, + {file = "lxml-5.1.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b9e240ae0ba96477682aa87899d94ddec1cc7926f9df29b1dd57b39e797d5ab5"}, + {file = "lxml-5.1.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a96f02ba1bcd330807fc060ed91d1f7a20853da6dd449e5da4b09bfcc08fdcf5"}, + {file = "lxml-5.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e3898ae2b58eeafedfe99e542a17859017d72d7f6a63de0f04f99c2cb125936"}, + {file = "lxml-5.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:61c5a7edbd7c695e54fca029ceb351fc45cd8860119a0f83e48be44e1c464862"}, + {file = "lxml-5.1.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:3aeca824b38ca78d9ee2ab82bd9883083d0492d9d17df065ba3b94e88e4d7ee6"}, + {file = "lxml-5.1.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8f52fe6859b9db71ee609b0c0a70fea5f1e71c3462ecf144ca800d3f434f0764"}, + {file = "lxml-5.1.0-cp37-cp37m-win32.whl", hash = "sha256:d42e3a3fc18acc88b838efded0e6ec3edf3e328a58c68fbd36a7263a874906c8"}, + {file = "lxml-5.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:eac68f96539b32fce2c9b47eb7c25bb2582bdaf1bbb360d25f564ee9e04c542b"}, + {file = "lxml-5.1.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:ae15347a88cf8af0949a9872b57a320d2605ae069bcdf047677318bc0bba45b1"}, + {file = "lxml-5.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:c26aab6ea9c54d3bed716b8851c8bfc40cb249b8e9880e250d1eddde9f709bf5"}, + {file = "lxml-5.1.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:342e95bddec3a698ac24378d61996b3ee5ba9acfeb253986002ac53c9a5f6f84"}, + {file = "lxml-5.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:725e171e0b99a66ec8605ac77fa12239dbe061482ac854d25720e2294652eeaa"}, + {file = "lxml-5.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d184e0d5c918cff04cdde9dbdf9600e960161d773666958c9d7b565ccc60c45"}, + {file = "lxml-5.1.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:98f3f020a2b736566c707c8e034945c02aa94e124c24f77ca097c446f81b01f1"}, + {file = "lxml-5.1.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6d48fc57e7c1e3df57be5ae8614bab6d4e7b60f65c5457915c26892c41afc59e"}, + {file = "lxml-5.1.0-cp38-cp38-win32.whl", hash = "sha256:7ec465e6549ed97e9f1e5ed51c657c9ede767bc1c11552f7f4d022c4df4a977a"}, + {file = "lxml-5.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:b21b4031b53d25b0858d4e124f2f9131ffc1530431c6d1321805c90da78388d1"}, + {file = "lxml-5.1.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:52427a7eadc98f9e62cb1368a5079ae826f94f05755d2d567d93ee1bc3ceb354"}, + {file = "lxml-5.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6a2a2c724d97c1eb8cf966b16ca2915566a4904b9aad2ed9a09c748ffe14f969"}, + {file = "lxml-5.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:843b9c835580d52828d8f69ea4302537337a21e6b4f1ec711a52241ba4a824f3"}, + {file = "lxml-5.1.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9b99f564659cfa704a2dd82d0684207b1aadf7d02d33e54845f9fc78e06b7581"}, + {file = "lxml-5.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4f8b0c78e7aac24979ef09b7f50da871c2de2def043d468c4b41f512d831e912"}, + {file = "lxml-5.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9bcf86dfc8ff3e992fed847c077bd875d9e0ba2fa25d859c3a0f0f76f07f0c8d"}, + {file = "lxml-5.1.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:49a9b4af45e8b925e1cd6f3b15bbba2c81e7dba6dce170c677c9cda547411e14"}, + {file = "lxml-5.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:280f3edf15c2a967d923bcfb1f8f15337ad36f93525828b40a0f9d6c2ad24890"}, + {file = "lxml-5.1.0-cp39-cp39-win32.whl", hash = "sha256:ed7326563024b6e91fef6b6c7a1a2ff0a71b97793ac33dbbcf38f6005e51ff6e"}, + {file = "lxml-5.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:8d7b4beebb178e9183138f552238f7e6613162a42164233e2bda00cb3afac58f"}, + {file = "lxml-5.1.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:9bd0ae7cc2b85320abd5e0abad5ccee5564ed5f0cc90245d2f9a8ef330a8deae"}, + {file = "lxml-5.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d8c1d679df4361408b628f42b26a5d62bd3e9ba7f0c0e7969f925021554755aa"}, + {file = "lxml-5.1.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:2ad3a8ce9e8a767131061a22cd28fdffa3cd2dc193f399ff7b81777f3520e372"}, + {file = "lxml-5.1.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:304128394c9c22b6569eba2a6d98392b56fbdfbad58f83ea702530be80d0f9df"}, + {file = "lxml-5.1.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d74fcaf87132ffc0447b3c685a9f862ffb5b43e70ea6beec2fb8057d5d2a1fea"}, + {file = "lxml-5.1.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:8cf5877f7ed384dabfdcc37922c3191bf27e55b498fecece9fd5c2c7aaa34c33"}, + {file = "lxml-5.1.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:877efb968c3d7eb2dad540b6cabf2f1d3c0fbf4b2d309a3c141f79c7e0061324"}, + {file = "lxml-5.1.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f14a4fb1c1c402a22e6a341a24c1341b4a3def81b41cd354386dcb795f83897"}, + {file = "lxml-5.1.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:25663d6e99659544ee8fe1b89b1a8c0aaa5e34b103fab124b17fa958c4a324a6"}, + {file = "lxml-5.1.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:8b9f19df998761babaa7f09e6bc169294eefafd6149aaa272081cbddc7ba4ca3"}, + {file = "lxml-5.1.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5e53d7e6a98b64fe54775d23a7c669763451340c3d44ad5e3a3b48a1efbdc96f"}, + {file = "lxml-5.1.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c3cd1fc1dc7c376c54440aeaaa0dcc803d2126732ff5c6b68ccd619f2e64be4f"}, + {file = "lxml-5.1.0.tar.gz", hash = "sha256:3eea6ed6e6c918e468e693c41ef07f3c3acc310b70ddd9cc72d9ef84bc9564ca"}, +] + +[package.extras] +cssselect = ["cssselect (>=0.7)"] +html5 = ["html5lib"] +htmlsoup = ["BeautifulSoup4"] +source = ["Cython (>=3.0.7)"] [[package]] name = "markdown" -version = "3.5.1" +version = "3.5.2" description = "Python implementation of John Gruber's Markdown." category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "Markdown-3.5.1-py3-none-any.whl", hash = "sha256:5874b47d4ee3f0b14d764324d2c94c03ea66bee56f2d929da9f2508d65e722dc"}, - {file = "Markdown-3.5.1.tar.gz", hash = "sha256:b65d7beb248dc22f2e8a31fb706d93798093c308dc1aba295aedeb9d41a813bd"}, + {file = "Markdown-3.5.2-py3-none-any.whl", hash = "sha256:d43323865d89fc0cb9b20c75fc8ad313af307cc087e84b657d9eec768eddeadd"}, + {file = "Markdown-3.5.2.tar.gz", hash = "sha256:e1ac7b3dc550ee80e602e71c1d168002f062e49f1b11e26a36264dafd4df2ef8"}, ] [package.dependencies] @@ -1119,72 +1645,72 @@ testing = ["coverage", "pyyaml"] [[package]] name = "markupsafe" -version = "2.1.3" +version = "2.1.5" description = "Safely add untrusted strings to HTML/XML markup." category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:cd0f502fe016460680cd20aaa5a76d241d6f35a1c3350c474bac1273803893fa"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e09031c87a1e51556fdcb46e5bd4f59dfb743061cf93c4d6831bf894f125eb57"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68e78619a61ecf91e76aa3e6e8e33fc4894a2bebe93410754bd28fce0a8a4f9f"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:65c1a9bcdadc6c28eecee2c119465aebff8f7a584dd719facdd9e825ec61ab52"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:525808b8019e36eb524b8c68acdd63a37e75714eac50e988180b169d64480a00"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:962f82a3086483f5e5f64dbad880d31038b698494799b097bc59c2edf392fce6"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:aa7bd130efab1c280bed0f45501b7c8795f9fdbeb02e965371bbef3523627779"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c9c804664ebe8f83a211cace637506669e7890fec1b4195b505c214e50dd4eb7"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-win32.whl", hash = "sha256:10bbfe99883db80bdbaff2dcf681dfc6533a614f700da1287707e8a5d78a8431"}, - {file = "MarkupSafe-2.1.3-cp310-cp310-win_amd64.whl", hash = "sha256:1577735524cdad32f9f694208aa75e422adba74f1baee7551620e43a3141f559"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ad9e82fb8f09ade1c3e1b996a6337afac2b8b9e365f926f5a61aacc71adc5b3c"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3c0fae6c3be832a0a0473ac912810b2877c8cb9d76ca48de1ed31e1c68386575"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b076b6226fb84157e3f7c971a47ff3a679d837cf338547532ab866c57930dbee"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfce63a9e7834b12b87c64d6b155fdd9b3b96191b6bd334bf37db7ff1fe457f2"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:338ae27d6b8745585f87218a3f23f1512dbf52c26c28e322dbe54bcede54ccb9"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e4dd52d80b8c83fdce44e12478ad2e85c64ea965e75d66dbeafb0a3e77308fcc"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:df0be2b576a7abbf737b1575f048c23fb1d769f267ec4358296f31c2479db8f9"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5bbe06f8eeafd38e5d0a4894ffec89378b6c6a625ff57e3028921f8ff59318ac"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-win32.whl", hash = "sha256:dd15ff04ffd7e05ffcb7fe79f1b98041b8ea30ae9234aed2a9168b5797c3effb"}, - {file = "MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl", hash = "sha256:134da1eca9ec0ae528110ccc9e48041e0828d79f24121a1a146161103c76e686"}, - {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f698de3fd0c4e6972b92290a45bd9b1536bffe8c6759c62471efaa8acb4c37bc"}, - {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:aa57bd9cf8ae831a362185ee444e15a93ecb2e344c8e52e4d721ea3ab6ef1823"}, - {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffcc3f7c66b5f5b7931a5aa68fc9cecc51e685ef90282f4a82f0f5e9b704ad11"}, - {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47d4f1c5f80fc62fdd7777d0d40a2e9dda0a05883ab11374334f6c4de38adffd"}, - {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1f67c7038d560d92149c060157d623c542173016c4babc0c1913cca0564b9939"}, - {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:9aad3c1755095ce347e26488214ef77e0485a3c34a50c5a5e2471dff60b9dd9c"}, - {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:14ff806850827afd6b07a5f32bd917fb7f45b046ba40c57abdb636674a8b559c"}, - {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8f9293864fe09b8149f0cc42ce56e3f0e54de883a9de90cd427f191c346eb2e1"}, - {file = "MarkupSafe-2.1.3-cp312-cp312-win32.whl", hash = "sha256:715d3562f79d540f251b99ebd6d8baa547118974341db04f5ad06d5ea3eb8007"}, - {file = "MarkupSafe-2.1.3-cp312-cp312-win_amd64.whl", hash = "sha256:1b8dd8c3fd14349433c79fa8abeb573a55fc0fdd769133baac1f5e07abf54aeb"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8e254ae696c88d98da6555f5ace2279cf7cd5b3f52be2b5cf97feafe883b58d2"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb0932dc158471523c9637e807d9bfb93e06a95cbf010f1a38b98623b929ef2b"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9402b03f1a1b4dc4c19845e5c749e3ab82d5078d16a2a4c2cd2df62d57bb0707"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca379055a47383d02a5400cb0d110cef0a776fc644cda797db0c5696cfd7e18e"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b7ff0f54cb4ff66dd38bebd335a38e2c22c41a8ee45aa608efc890ac3e3931bc"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c011a4149cfbcf9f03994ec2edffcb8b1dc2d2aede7ca243746df97a5d41ce48"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:56d9f2ecac662ca1611d183feb03a3fa4406469dafe241673d521dd5ae92a155"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-win32.whl", hash = "sha256:8758846a7e80910096950b67071243da3e5a20ed2546e6392603c096778d48e0"}, - {file = "MarkupSafe-2.1.3-cp37-cp37m-win_amd64.whl", hash = "sha256:787003c0ddb00500e49a10f2844fac87aa6ce977b90b0feaaf9de23c22508b24"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:2ef12179d3a291be237280175b542c07a36e7f60718296278d8593d21ca937d4"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2c1b19b3aaacc6e57b7e25710ff571c24d6c3613a45e905b1fde04d691b98ee0"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8afafd99945ead6e075b973fefa56379c5b5c53fd8937dad92c662da5d8fd5ee"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c41976a29d078bb235fea9b2ecd3da465df42a562910f9022f1a03107bd02be"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d080e0a5eb2529460b30190fcfcc4199bd7f827663f858a226a81bc27beaa97e"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:69c0f17e9f5a7afdf2cc9fb2d1ce6aabdb3bafb7f38017c0b77862bcec2bbad8"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:504b320cd4b7eff6f968eddf81127112db685e81f7e36e75f9f84f0df46041c3"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:42de32b22b6b804f42c5d98be4f7e5e977ecdd9ee9b660fda1a3edf03b11792d"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-win32.whl", hash = "sha256:ceb01949af7121f9fc39f7d27f91be8546f3fb112c608bc4029aef0bab86a2a5"}, - {file = "MarkupSafe-2.1.3-cp38-cp38-win_amd64.whl", hash = "sha256:1b40069d487e7edb2676d3fbdb2b0829ffa2cd63a2ec26c4938b2d34391b4ecc"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:8023faf4e01efadfa183e863fefde0046de576c6f14659e8782065bcece22198"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6b2b56950d93e41f33b4223ead100ea0fe11f8e6ee5f641eb753ce4b77a7042b"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dcdfd0eaf283af041973bff14a2e143b8bd64e069f4c383416ecd79a81aab58"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05fb21170423db021895e1ea1e1f3ab3adb85d1c2333cbc2310f2a26bc77272e"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:282c2cb35b5b673bbcadb33a585408104df04f14b2d9b01d4c345a3b92861c2c"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab4a0df41e7c16a1392727727e7998a467472d0ad65f3ad5e6e765015df08636"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7ef3cb2ebbf91e330e3bb937efada0edd9003683db6b57bb108c4001f37a02ea"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0a4e4a1aff6c7ac4cd55792abf96c915634c2b97e3cc1c7129578aa68ebd754e"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-win32.whl", hash = "sha256:fec21693218efe39aa7f8599346e90c705afa52c5b31ae019b2e57e8f6542bb2"}, - {file = "MarkupSafe-2.1.3-cp39-cp39-win_amd64.whl", hash = "sha256:3fd4abcb888d15a94f32b75d8fd18ee162ca0c064f35b11134be77050296d6ba"}, - {file = "MarkupSafe-2.1.3.tar.gz", hash = "sha256:af598ed32d6ae86f1b747b82783958b1a4ab8f617b06fe68795c7f026abbdcad"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-win32.whl", hash = "sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-win_amd64.whl", hash = "sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-win32.whl", hash = "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl", hash = "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-win32.whl", hash = "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl", hash = "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7b2e5a267c855eea6b4283940daa6e88a285f5f2a67f2220203786dfa59b37e9"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:2d2d793e36e230fd32babe143b04cec8a8b3eb8a3122d2aceb4a371e6b09b8df"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ce409136744f6521e39fd8e2a24c53fa18ad67aa5bc7c2cf83645cce5b5c4e50"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-win32.whl", hash = "sha256:4096e9de5c6fdf43fb4f04c26fb114f61ef0bf2e5604b6ee3019d51b69e8c371"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-win_amd64.whl", hash = "sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5dedb4db619ba5a2787a94d877bc8ffc0566f92a01c0ef214865e54ecc9ee5e0"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:30b600cf0a7ac9234b2638fbc0fb6158ba5bdcdf46aeb631ead21248b9affbc4"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8dd717634f5a044f860435c1d8c16a270ddf0ef8588d4887037c5028b859b0c3"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-win32.whl", hash = "sha256:daa4ee5a243f0f20d528d939d06670a298dd39b1ad5f8a72a4275124a7819eff"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-win_amd64.whl", hash = "sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bff1b4290a66b490a2f4719358c0cdcd9bafb6b8f061e45c7a2460866bf50c2e"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bc1667f8b83f48511b94671e0e441401371dfd0f0a795c7daa4a3cd1dde55bea"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5049256f536511ee3f7e1b3f87d1d1209d327e818e6ae1365e8653d7e3abb6a6"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-win32.whl", hash = "sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-win_amd64.whl", hash = "sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5"}, + {file = "MarkupSafe-2.1.5.tar.gz", hash = "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b"}, ] [[package]] @@ -1304,15 +1830,49 @@ click = "*" [package.extras] tests = ["coverage", "pytest"] +[[package]] +name = "mypy-extensions" +version = "1.0.0" +description = "Type system extensions for programs checked with the mypy type checker." +category = "dev" +optional = false +python-versions = ">=3.5" +files = [ + {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"}, + {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, +] + +[[package]] +name = "ndex2" +version = "3.7.0" +description = "Nice CX Python includes a client and a data model." +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "ndex2-3.7.0-py2.py3-none-any.whl", hash = "sha256:f7d2d4cbb32eb99b33ad219187139151f996df509b6eca5568919e59d1bed809"}, + {file = "ndex2-3.7.0.tar.gz", hash = "sha256:5fed3b6c204275fd75724f7d609823f9f6e249b3d468fdd8b0a1f7a9be7a294f"}, +] + +[package.dependencies] +ijson = "*" +networkx = "*" +numpy = "*" +pandas = "*" +requests = "*" +requests-toolbelt = "*" +six = "*" +urllib3 = ">=1.16" + [[package]] name = "neo4j" -version = "5.14.1" +version = "5.17.0" description = "Neo4j Bolt driver for Python" category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "neo4j-5.14.1.tar.gz", hash = "sha256:3200be8550ed16622b2fadf4f749d08b9982989c4bfce6f99ab693f104104cb4"}, + {file = "neo4j-5.17.0.tar.gz", hash = "sha256:dcd7150a0c3834a89a6e27505e614f340376f31c97c48ba60dc70a220ee85e3b"}, ] [package.dependencies] @@ -1324,67 +1884,235 @@ pandas = ["numpy (>=1.7.0,<2.0.0)", "pandas (>=1.1.0,<3.0.0)"] pyarrow = ["pyarrow (>=1.0.0)"] [[package]] -name = "oauthlib" -version = "3.2.2" -description = "A generic, spec-compliant, thorough implementation of the OAuth request-signing logic" +name = "networkx" +version = "3.2.1" +description = "Python package for creating and manipulating graphs and networks" category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.9" files = [ - {file = "oauthlib-3.2.2-py3-none-any.whl", hash = "sha256:8139f29aac13e25d502680e9e19963e83f16838d48a0d71c287fe40e7067fbca"}, - {file = "oauthlib-3.2.2.tar.gz", hash = "sha256:9859c40929662bec5d64f34d01c99e093149682a3f38915dc0655d5a633dd918"}, + {file = "networkx-3.2.1-py3-none-any.whl", hash = "sha256:f18c69adc97877c42332c170849c96cefa91881c99a7cb3e95b7c659ebdc1ec2"}, + {file = "networkx-3.2.1.tar.gz", hash = "sha256:9f1bb5cf3409bf324e0a722c20bdb4c20ee39bf1c30ce8ae499c8502b0b5e0c6"}, ] [package.extras] -rsa = ["cryptography (>=3.0.0)"] -signals = ["blinker (>=1.4.0)"] -signedtoken = ["cryptography (>=3.0.0)", "pyjwt (>=2.0.0,<3)"] +default = ["matplotlib (>=3.5)", "numpy (>=1.22)", "pandas (>=1.4)", "scipy (>=1.9,!=1.11.0,!=1.11.1)"] +developer = ["changelist (==0.4)", "mypy (>=1.1)", "pre-commit (>=3.2)", "rtoml"] +doc = ["nb2plots (>=0.7)", "nbconvert (<7.9)", "numpydoc (>=1.6)", "pillow (>=9.4)", "pydata-sphinx-theme (>=0.14)", "sphinx (>=7)", "sphinx-gallery (>=0.14)", "texext (>=0.6.7)"] +extra = ["lxml (>=4.6)", "pydot (>=1.4.2)", "pygraphviz (>=1.11)", "sympy (>=1.10)"] +test = ["pytest (>=7.2)", "pytest-cov (>=4.0)"] [[package]] -name = "ontodev-cogs" -version = "0.3.3" -description = "COGS Operates Google Sheets" +name = "num2words" +version = "0.5.13" +description = "Modules to convert numbers to words. Easily extensible." category = "dev" optional = false -python-versions = ">=3.6, <4" +python-versions = "*" files = [ - {file = "ontodev-cogs-0.3.3.tar.gz", hash = "sha256:04cf448eda59e0645c6626453f7617a6b2be3129c8586c4d4a515ad031f61a18"}, - {file = "ontodev_cogs-0.3.3-py3-none-any.whl", hash = "sha256:b3299b7884891d00e016f9cb0329a1a0dc8af4bfba45dce3815f654360b1f333"}, + {file = "num2words-0.5.13-py3-none-any.whl", hash = "sha256:39e662c663f0a7e15415431ea68eb3dc711b49e3b776d93403e1da0a219ca4ee"}, + {file = "num2words-0.5.13.tar.gz", hash = "sha256:a3064716fbbf90d75c449450cebfbc73a6a13e63b2531d09bdecc3ab1a2209cf"}, ] [package.dependencies] -daff = "*" -google = "*" -google-api-python-client = "*" -gspread = "*" -gspread-formatting = "*" -requests = "*" -tabulate = "*" -termcolor = "*" +docopt = ">=0.6.2" [[package]] -name = "openpyxl" -version = "3.1.2" -description = "A Python library to read/write Excel 2010 xlsx/xlsm files" +name = "numpy" +version = "1.26.3" +description = "Fundamental package for array computing in Python" category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.9" +files = [ + {file = "numpy-1.26.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:806dd64230dbbfaca8a27faa64e2f414bf1c6622ab78cc4264f7f5f028fee3bf"}, + {file = "numpy-1.26.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:02f98011ba4ab17f46f80f7f8f1c291ee7d855fcef0a5a98db80767a468c85cd"}, + {file = "numpy-1.26.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d45b3ec2faed4baca41c76617fcdcfa4f684ff7a151ce6fc78ad3b6e85af0a6"}, + {file = "numpy-1.26.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bdd2b45bf079d9ad90377048e2747a0c82351989a2165821f0c96831b4a2a54b"}, + {file = "numpy-1.26.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:211ddd1e94817ed2d175b60b6374120244a4dd2287f4ece45d49228b4d529178"}, + {file = "numpy-1.26.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b1240f767f69d7c4c8a29adde2310b871153df9b26b5cb2b54a561ac85146485"}, + {file = "numpy-1.26.3-cp310-cp310-win32.whl", hash = "sha256:21a9484e75ad018974a2fdaa216524d64ed4212e418e0a551a2d83403b0531d3"}, + {file = "numpy-1.26.3-cp310-cp310-win_amd64.whl", hash = "sha256:9e1591f6ae98bcfac2a4bbf9221c0b92ab49762228f38287f6eeb5f3f55905ce"}, + {file = "numpy-1.26.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b831295e5472954104ecb46cd98c08b98b49c69fdb7040483aff799a755a7374"}, + {file = "numpy-1.26.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9e87562b91f68dd8b1c39149d0323b42e0082db7ddb8e934ab4c292094d575d6"}, + {file = "numpy-1.26.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c66d6fec467e8c0f975818c1796d25c53521124b7cfb760114be0abad53a0a2"}, + {file = "numpy-1.26.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f25e2811a9c932e43943a2615e65fc487a0b6b49218899e62e426e7f0a57eeda"}, + {file = "numpy-1.26.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:af36e0aa45e25c9f57bf684b1175e59ea05d9a7d3e8e87b7ae1a1da246f2767e"}, + {file = "numpy-1.26.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:51c7f1b344f302067b02e0f5b5d2daa9ed4a721cf49f070280ac202738ea7f00"}, + {file = "numpy-1.26.3-cp311-cp311-win32.whl", hash = "sha256:7ca4f24341df071877849eb2034948459ce3a07915c2734f1abb4018d9c49d7b"}, + {file = "numpy-1.26.3-cp311-cp311-win_amd64.whl", hash = "sha256:39763aee6dfdd4878032361b30b2b12593fb445ddb66bbac802e2113eb8a6ac4"}, + {file = "numpy-1.26.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:a7081fd19a6d573e1a05e600c82a1c421011db7935ed0d5c483e9dd96b99cf13"}, + {file = "numpy-1.26.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:12c70ac274b32bc00c7f61b515126c9205323703abb99cd41836e8125ea0043e"}, + {file = "numpy-1.26.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7f784e13e598e9594750b2ef6729bcd5a47f6cfe4a12cca13def35e06d8163e3"}, + {file = "numpy-1.26.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5f24750ef94d56ce6e33e4019a8a4d68cfdb1ef661a52cdaee628a56d2437419"}, + {file = "numpy-1.26.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:77810ef29e0fb1d289d225cabb9ee6cf4d11978a00bb99f7f8ec2132a84e0166"}, + {file = "numpy-1.26.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8ed07a90f5450d99dad60d3799f9c03c6566709bd53b497eb9ccad9a55867f36"}, + {file = "numpy-1.26.3-cp312-cp312-win32.whl", hash = "sha256:f73497e8c38295aaa4741bdfa4fda1a5aedda5473074369eca10626835445511"}, + {file = "numpy-1.26.3-cp312-cp312-win_amd64.whl", hash = "sha256:da4b0c6c699a0ad73c810736303f7fbae483bcb012e38d7eb06a5e3b432c981b"}, + {file = "numpy-1.26.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1666f634cb3c80ccbd77ec97bc17337718f56d6658acf5d3b906ca03e90ce87f"}, + {file = "numpy-1.26.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:18c3319a7d39b2c6a9e3bb75aab2304ab79a811ac0168a671a62e6346c29b03f"}, + {file = "numpy-1.26.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0b7e807d6888da0db6e7e75838444d62495e2b588b99e90dd80c3459594e857b"}, + {file = "numpy-1.26.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b4d362e17bcb0011738c2d83e0a65ea8ce627057b2fdda37678f4374a382a137"}, + {file = "numpy-1.26.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b8c275f0ae90069496068c714387b4a0eba5d531aace269559ff2b43655edd58"}, + {file = "numpy-1.26.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:cc0743f0302b94f397a4a65a660d4cd24267439eb16493fb3caad2e4389bccbb"}, + {file = "numpy-1.26.3-cp39-cp39-win32.whl", hash = "sha256:9bc6d1a7f8cedd519c4b7b1156d98e051b726bf160715b769106661d567b3f03"}, + {file = "numpy-1.26.3-cp39-cp39-win_amd64.whl", hash = "sha256:867e3644e208c8922a3be26fc6bbf112a035f50f0a86497f98f228c50c607bb2"}, + {file = "numpy-1.26.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3c67423b3703f8fbd90f5adaa37f85b5794d3366948efe9a5190a5f3a83fc34e"}, + {file = "numpy-1.26.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:46f47ee566d98849323f01b349d58f2557f02167ee301e5e28809a8c0e27a2d0"}, + {file = "numpy-1.26.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a8474703bffc65ca15853d5fd4d06b18138ae90c17c8d12169968e998e448bb5"}, + {file = "numpy-1.26.3.tar.gz", hash = "sha256:697df43e2b6310ecc9d95f05d5ef20eacc09c7c4ecc9da3f235d39e71b7da1e4"}, +] + +[[package]] +name = "oaklib" +version = "0.5.25" +description = "Ontology Access Kit: Python library for common ontology operations over a variety of backends" +category = "dev" +optional = false +python-versions = ">=3.9,<4.0.0" files = [ - {file = "openpyxl-3.1.2-py2.py3-none-any.whl", hash = "sha256:f91456ead12ab3c6c2e9491cf33ba6d08357d802192379bb482f1033ade496f5"}, - {file = "openpyxl-3.1.2.tar.gz", hash = "sha256:a6f5977418eff3b2d5500d54d9db50c8277a368436f4e4f8ddb1be3422870184"}, + {file = "oaklib-0.5.25-py3-none-any.whl", hash = "sha256:3ec4f72e9abe883c082561e9a93fbda2c51ba0a7970e6bc952e8b51462b095d5"}, + {file = "oaklib-0.5.25.tar.gz", hash = "sha256:e8983a29d6a83a4dfee994dfc5b82069e78c226d007f734eef9d0fee1fde48be"}, ] [package.dependencies] -et-xmlfile = "*" +airium = ">=0.2.5" +appdirs = ">=1.4.4" +class-resolver = ">=0.4.2" +click = "*" +curies = ">=0.6.6" +eutils = ">=0.6.0" +funowl = ">=0.2.0" +kgcl-rdflib = "0.5.0" +kgcl-schema = ">=0.6.0" +linkml-renderer = ">=0.3.0" +linkml-runtime = ">=1.5.3" +ndex2 = ">=3.5.0,<4.0.0" +networkx = ">=2.7.1" +ols-client = ">=0.1.1" +ontoportal-client = ">=0.0.3" +prefixmaps = ">=0.1.2" +pronto = ">=2.5.0" +pydantic = "*" +pysolr = ">=3.9.0,<4.0.0" +pystow = ">=0.5.0" +ratelimit = ">=2.2.1" +requests-cache = ">=1.0.1,<2.0.0" +semsimian = ">=0.2.1,<0.3.0" +semsql = ">=0.3.1" +SPARQLWrapper = "*" +SQLAlchemy = ">=1.4.32" +sssom = ">=0.4.0,<0.5.0" + +[package.extras] +gilda = ["gilda (>=1.0.0)", "urllib3 (<2)"] +llm = ["llm"] [[package]] -name = "ordered-set" -version = "4.1.0" -description = "An OrderedSet is a custom MutableSet that remembers its order, so that every" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ +name = "oauthlib" +version = "3.2.2" +description = "A generic, spec-compliant, thorough implementation of the OAuth request-signing logic" +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "oauthlib-3.2.2-py3-none-any.whl", hash = "sha256:8139f29aac13e25d502680e9e19963e83f16838d48a0d71c287fe40e7067fbca"}, + {file = "oauthlib-3.2.2.tar.gz", hash = "sha256:9859c40929662bec5d64f34d01c99e093149682a3f38915dc0655d5a633dd918"}, +] + +[package.extras] +rsa = ["cryptography (>=3.0.0)"] +signals = ["blinker (>=1.4.0)"] +signedtoken = ["cryptography (>=3.0.0)", "pyjwt (>=2.0.0,<3)"] + +[[package]] +name = "ols-client" +version = "0.1.4" +description = "A client to the EBI Ontology Lookup Service" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "ols_client-0.1.4-py3-none-any.whl", hash = "sha256:7bdca0590042e07cc7ee3ef3fba99c3b6862cde6c8835afb129de31284b3e010"}, + {file = "ols_client-0.1.4.tar.gz", hash = "sha256:cd2a0f39107f39eaf0f40b9098f12d442cf3d43e28228e63feb407d0aeb44470"}, +] + +[package.dependencies] +class-resolver = "*" +click = "*" +more-click = "*" +pystow = "*" +requests = "*" + +[package.extras] +docs = ["sphinx", "sphinx-autodoc-typehints", "sphinx-automodapi", "sphinx-click", "sphinx-rtd-theme"] +tests = ["coverage", "pytest"] + +[[package]] +name = "ontodev-cogs" +version = "0.3.3" +description = "COGS Operates Google Sheets" +category = "dev" +optional = false +python-versions = ">=3.6, <4" +files = [ + {file = "ontodev-cogs-0.3.3.tar.gz", hash = "sha256:04cf448eda59e0645c6626453f7617a6b2be3129c8586c4d4a515ad031f61a18"}, + {file = "ontodev_cogs-0.3.3-py3-none-any.whl", hash = "sha256:b3299b7884891d00e016f9cb0329a1a0dc8af4bfba45dce3815f654360b1f333"}, +] + +[package.dependencies] +daff = "*" +google = "*" +google-api-python-client = "*" +gspread = "*" +gspread-formatting = "*" +requests = "*" +tabulate = "*" +termcolor = "*" + +[[package]] +name = "ontoportal-client" +version = "0.0.4" +description = "A client to BioPortal and other OntoPortal instances." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "ontoportal_client-0.0.4-py3-none-any.whl", hash = "sha256:0dedd4ce003e0b6c1128fa05101e57bcc128ad79a6c9fcae66037d2447706c4c"}, + {file = "ontoportal_client-0.0.4.tar.gz", hash = "sha256:1bf7edcb94db3ed68ea9a64c620056f0517f7e209826b05dbfda8fe27384fa48"}, +] + +[package.dependencies] +pystow = "*" +typing-extensions = "*" + +[package.extras] +docs = ["sphinx", "sphinx-autodoc-typehints", "sphinx-automodapi", "sphinx-rtd-theme"] +tests = ["coverage", "pytest", "unittest-templates"] + +[[package]] +name = "openpyxl" +version = "3.1.2" +description = "A Python library to read/write Excel 2010 xlsx/xlsm files" +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "openpyxl-3.1.2-py2.py3-none-any.whl", hash = "sha256:f91456ead12ab3c6c2e9491cf33ba6d08357d802192379bb482f1033ade496f5"}, + {file = "openpyxl-3.1.2.tar.gz", hash = "sha256:a6f5977418eff3b2d5500d54d9db50c8277a368436f4e4f8ddb1be3422870184"}, +] + +[package.dependencies] +et-xmlfile = "*" + +[[package]] +name = "ordered-set" +version = "4.1.0" +description = "An OrderedSet is a custom MutableSet that remembers its order, so that every" +category = "main" +optional = false +python-versions = ">=3.7" +files = [ {file = "ordered-set-4.1.0.tar.gz", hash = "sha256:694a8e44c87657c59292ede72891eb91d34131f6531463aab3009191c77364a8"}, {file = "ordered_set-4.1.0-py3-none-any.whl", hash = "sha256:046e1132c71fcf3330438a539928932caf51ddbc582496833e23de611de14562"}, ] @@ -1404,56 +2132,184 @@ files = [ {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"}, ] +[[package]] +name = "pandas" +version = "1.5.3" +description = "Powerful data structures for data analysis, time series, and statistics" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pandas-1.5.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3749077d86e3a2f0ed51367f30bf5b82e131cc0f14260c4d3e499186fccc4406"}, + {file = "pandas-1.5.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:972d8a45395f2a2d26733eb8d0f629b2f90bebe8e8eddbb8829b180c09639572"}, + {file = "pandas-1.5.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:50869a35cbb0f2e0cd5ec04b191e7b12ed688874bd05dd777c19b28cbea90996"}, + {file = "pandas-1.5.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c3ac844a0fe00bfaeb2c9b51ab1424e5c8744f89860b138434a363b1f620f354"}, + {file = "pandas-1.5.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a0a56cef15fd1586726dace5616db75ebcfec9179a3a55e78f72c5639fa2a23"}, + {file = "pandas-1.5.3-cp310-cp310-win_amd64.whl", hash = "sha256:478ff646ca42b20376e4ed3fa2e8d7341e8a63105586efe54fa2508ee087f328"}, + {file = "pandas-1.5.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6973549c01ca91ec96199e940495219c887ea815b2083722821f1d7abfa2b4dc"}, + {file = "pandas-1.5.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c39a8da13cede5adcd3be1182883aea1c925476f4e84b2807a46e2775306305d"}, + {file = "pandas-1.5.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f76d097d12c82a535fda9dfe5e8dd4127952b45fea9b0276cb30cca5ea313fbc"}, + {file = "pandas-1.5.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e474390e60ed609cec869b0da796ad94f420bb057d86784191eefc62b65819ae"}, + {file = "pandas-1.5.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5f2b952406a1588ad4cad5b3f55f520e82e902388a6d5a4a91baa8d38d23c7f6"}, + {file = "pandas-1.5.3-cp311-cp311-win_amd64.whl", hash = "sha256:bc4c368f42b551bf72fac35c5128963a171b40dce866fb066540eeaf46faa003"}, + {file = "pandas-1.5.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:14e45300521902689a81f3f41386dc86f19b8ba8dd5ac5a3c7010ef8d2932813"}, + {file = "pandas-1.5.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9842b6f4b8479e41968eced654487258ed81df7d1c9b7b870ceea24ed9459b31"}, + {file = "pandas-1.5.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:26d9c71772c7afb9d5046e6e9cf42d83dd147b5cf5bcb9d97252077118543792"}, + {file = "pandas-1.5.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5fbcb19d6fceb9e946b3e23258757c7b225ba450990d9ed63ccceeb8cae609f7"}, + {file = "pandas-1.5.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:565fa34a5434d38e9d250af3c12ff931abaf88050551d9fbcdfafca50d62babf"}, + {file = "pandas-1.5.3-cp38-cp38-win32.whl", hash = "sha256:87bd9c03da1ac870a6d2c8902a0e1fd4267ca00f13bc494c9e5a9020920e1d51"}, + {file = "pandas-1.5.3-cp38-cp38-win_amd64.whl", hash = "sha256:41179ce559943d83a9b4bbacb736b04c928b095b5f25dd2b7389eda08f46f373"}, + {file = "pandas-1.5.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c74a62747864ed568f5a82a49a23a8d7fe171d0c69038b38cedf0976831296fa"}, + {file = "pandas-1.5.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c4c00e0b0597c8e4f59e8d461f797e5d70b4d025880516a8261b2817c47759ee"}, + {file = "pandas-1.5.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a50d9a4336a9621cab7b8eb3fb11adb82de58f9b91d84c2cd526576b881a0c5a"}, + {file = "pandas-1.5.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd05f7783b3274aa206a1af06f0ceed3f9b412cf665b7247eacd83be41cf7bf0"}, + {file = "pandas-1.5.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f69c4029613de47816b1bb30ff5ac778686688751a5e9c99ad8c7031f6508e5"}, + {file = "pandas-1.5.3-cp39-cp39-win32.whl", hash = "sha256:7cec0bee9f294e5de5bbfc14d0573f65526071029d036b753ee6507d2a21480a"}, + {file = "pandas-1.5.3-cp39-cp39-win_amd64.whl", hash = "sha256:dfd681c5dc216037e0b0a2c821f5ed99ba9f03ebcf119c7dac0e9a7b960b9ec9"}, + {file = "pandas-1.5.3.tar.gz", hash = "sha256:74a3fd7e5a7ec052f183273dc7b0acd3a863edf7520f5d3a1765c04ffdb3b0b1"}, +] + +[package.dependencies] +numpy = [ + {version = ">=1.20.3", markers = "python_version < \"3.10\""}, + {version = ">=1.21.0", markers = "python_version >= \"3.10\""}, + {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, +] +python-dateutil = ">=2.8.1" +pytz = ">=2020.1" + +[package.extras] +test = ["hypothesis (>=5.5.3)", "pytest (>=6.0)", "pytest-xdist (>=1.31)"] + +[[package]] +name = "pandera" +version = "0.12.0" +description = "A light-weight and flexible data validation and testing tool for statistical data objects." +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pandera-0.12.0-py3-none-any.whl", hash = "sha256:c47110979c0ddf15647563b2ffde0db3e728eb833e78e7801080004a08d78955"}, + {file = "pandera-0.12.0.tar.gz", hash = "sha256:d3255e52b7bbe7a4ba0182b80725bdd71efe0658d06e3e5d1840047d79578535"}, +] + +[package.dependencies] +numpy = ">=1.19.0" +packaging = ">=20.0" +pandas = ">=1.2.0" +pyarrow = "*" +pydantic = "*" +typing-inspect = ">=0.6.0" +wrapt = "*" + +[package.extras] +all = ["black", "dask", "fastapi", "frictionless", "geopandas", "hypothesis (>=5.41.1)", "modin", "pandas-stubs (<=1.4.3.220807)", "pyspark (>=3.2.0)", "pyyaml (>=5.1)", "ray (<=1.7.0)", "scipy", "shapely"] +dask = ["dask"] +fastapi = ["fastapi"] +geopandas = ["geopandas", "shapely"] +hypotheses = ["scipy"] +io = ["black", "frictionless", "pyyaml (>=5.1)"] +modin = ["dask", "modin", "ray (<=1.7.0)"] +modin-dask = ["dask", "modin"] +modin-ray = ["modin", "ray (<=1.7.0)"] +mypy = ["pandas-stubs (<=1.4.3.220807)"] +pyspark = ["pyspark (>=3.2.0)"] +strategies = ["hypothesis (>=5.41.1)"] + +[[package]] +name = "pansql" +version = "0.0.1" +description = "sqldf for pandas" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "pansql-0.0.1-py3-none-any.whl", hash = "sha256:0c49d8c23e418ac065af767ed350c544c0d6d96dc04e2faa1f8b37851d404988"}, + {file = "pansql-0.0.1.tar.gz", hash = "sha256:61091112442c5d663ea5c042b6327a9b6b94c6687831677dddda46f292532e29"}, +] + +[package.dependencies] +numpy = "*" +pandas = "*" +sqlalchemy = "*" + [[package]] name = "parse" -version = "1.19.1" +version = "1.20.1" description = "parse() is the opposite of format()" category = "dev" optional = false python-versions = "*" files = [ - {file = "parse-1.19.1-py2.py3-none-any.whl", hash = "sha256:371ed3800dc63983832159cc9373156613947707bc448b5215473a219dbd4362"}, - {file = "parse-1.19.1.tar.gz", hash = "sha256:cc3a47236ff05da377617ddefa867b7ba983819c664e1afe46249e5b469be464"}, + {file = "parse-1.20.1-py2.py3-none-any.whl", hash = "sha256:76ddd5214255ae711db4c512be636151fbabaa948c6f30115aecc440422ca82c"}, + {file = "parse-1.20.1.tar.gz", hash = "sha256:09002ca350ad42e76629995f71f7b518670bcf93548bdde3684fd55d2be51975"}, ] [[package]] name = "pathspec" -version = "0.11.2" +version = "0.12.1" description = "Utility library for gitignore style pattern matching of file paths." category = "dev" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pathspec-0.11.2-py3-none-any.whl", hash = "sha256:1d6ed233af05e679efb96b1851550ea95bbb64b7c490b0f5aa52996c11e92a20"}, - {file = "pathspec-0.11.2.tar.gz", hash = "sha256:e0d8d0ac2f12da61956eb2306b69f9469b42f4deb0f3cb6ed47b9cce9996ced3"}, + {file = "pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"}, + {file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"}, ] +[[package]] +name = "pint" +version = "0.23" +description = "Physical quantities module" +category = "main" +optional = false +python-versions = ">=3.9" +files = [ + {file = "Pint-0.23-py3-none-any.whl", hash = "sha256:df79b6b5f1beb7ed0cd55d91a0766fc55f972f757a9364e844958c05e8eb66f9"}, + {file = "Pint-0.23.tar.gz", hash = "sha256:e1509b91606dbc52527c600a4ef74ffac12fff70688aff20e9072409346ec9b4"}, +] + +[package.dependencies] +typing-extensions = "*" + +[package.extras] +babel = ["babel (<=2.8)"] +bench = ["pytest", "pytest-codspeed"] +dask = ["dask"] +mip = ["mip (>=1.13)"] +numpy = ["numpy (>=1.19.5)"] +pandas = ["pint-pandas (>=0.3)"] +test = ["pytest", "pytest-benchmark", "pytest-cov", "pytest-mpl", "pytest-subtests"] +testbase = ["pytest", "pytest-benchmark", "pytest-cov", "pytest-subtests"] +uncertainties = ["uncertainties (>=3.1.6)"] +xarray = ["xarray"] + [[package]] name = "platformdirs" -version = "4.0.0" +version = "4.2.0" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "platformdirs-4.0.0-py3-none-any.whl", hash = "sha256:118c954d7e949b35437270383a3f2531e99dd93cf7ce4dc8340d3356d30f173b"}, - {file = "platformdirs-4.0.0.tar.gz", hash = "sha256:cb633b2bcf10c51af60beb0ab06d2f1d69064b43abf4c185ca6b28865f3f9731"}, + {file = "platformdirs-4.2.0-py3-none-any.whl", hash = "sha256:0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"}, + {file = "platformdirs-4.2.0.tar.gz", hash = "sha256:ef0cc731df711022c174543cb70a9b5bd22e5a9337c8624ef2c2ceb8ddad8768"}, ] [package.extras] -docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.1)", "sphinx-autodoc-typehints (>=1.24)"] -test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4)", "pytest-cov (>=4.1)", "pytest-mock (>=3.11.1)"] +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)"] [[package]] name = "pluggy" -version = "1.3.0" +version = "1.4.0" description = "plugin and hook calling mechanisms for python" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "pluggy-1.3.0-py3-none-any.whl", hash = "sha256:d89c696a773f8bd377d18e5ecda92b7a3793cbe66c87060a6fb58c7b6e1061f7"}, - {file = "pluggy-1.3.0.tar.gz", hash = "sha256:cf61ae8f126ac6f7c451172cf30e3e43d3ca77615509771b3a984a0730651e12"}, + {file = "pluggy-1.4.0-py3-none-any.whl", hash = "sha256:7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"}, + {file = "pluggy-1.4.0.tar.gz", hash = "sha256:8c85c2876142a764e5b7548e7d9a0e0ddb46f5185161049a79b7e974454223be"}, ] [package.extras] @@ -1492,14 +2348,14 @@ requests = ">=2.28.1,<3.0.0" [[package]] name = "prefixmaps" -version = "0.2.0" +version = "0.2.1" description = "A python library for retrieving semantic prefix maps" category = "main" optional = false python-versions = ">=3.9,<4.0" files = [ - {file = "prefixmaps-0.2.0-py3-none-any.whl", hash = "sha256:a0f87077ac1651f1b386c178b80cd2edc294a6b7b628b30143ac98a1dae6f0b7"}, - {file = "prefixmaps-0.2.0.tar.gz", hash = "sha256:0e3fdabf90b991e1f44a2b455e9042f6ba0e498fa7a769ffd8a6ad248f43af0c"}, + {file = "prefixmaps-0.2.1-py3-none-any.whl", hash = "sha256:0d204caeb4c368cb7a981de98117665fd8885ba76f058714f27f5963e620d5a1"}, + {file = "prefixmaps-0.2.1.tar.gz", hash = "sha256:8aed88739f900e6c0df0ada061b90223c79c29ca074f5ae6d3de423aef8fa3cf"}, ] [package.dependencies] @@ -1513,27 +2369,176 @@ tox = ">=4.11.3,<5.0.0" docs = ["Sphinx[docs] (>=7.2.6,<8.0.0)", "myst-parser[docs] (>=2.0.0,<3.0.0)", "sphinx-autodoc-typehints[docs] (>=1.23.4,<2.0.0)", "sphinx-click[docs] (>=4.3.0,<5.0.0)", "sphinx-rtd-theme[docs] (>=1.0.0,<2.0.0)"] refresh = ["bioregistry[refresh] (>=0.10.65,<0.11.0)", "rdflib[refresh] (>=6.2.0,<7.0.0)", "requests[refresh] (>=2.28.1,<3.0.0)"] +[[package]] +name = "pronto" +version = "2.5.5" +description = "Python frontend to ontologies." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pronto-2.5.5-py2.py3-none-any.whl", hash = "sha256:92d1206365c81abe733a44be3a70b0b54081dfd21a1f4a826d7a2c1e6d18d256"}, + {file = "pronto-2.5.5.tar.gz", hash = "sha256:8f9a0917156248b2cce05d238c5d76a7b49ee07619f2bce3c73796bff82d5b4f"}, +] + +[package.dependencies] +chardet = ">=5.0,<6.0" +fastobo = ">=0.12.2,<0.13.0" +networkx = ">=2.3,<4.0" +python-dateutil = ">=2.8,<3.0" + [[package]] name = "protobuf" -version = "4.25.1" +version = "4.25.2" description = "" category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "protobuf-4.25.1-cp310-abi3-win32.whl", hash = "sha256:193f50a6ab78a970c9b4f148e7c750cfde64f59815e86f686c22e26b4fe01ce7"}, - {file = "protobuf-4.25.1-cp310-abi3-win_amd64.whl", hash = "sha256:3497c1af9f2526962f09329fd61a36566305e6c72da2590ae0d7d1322818843b"}, - {file = "protobuf-4.25.1-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:0bf384e75b92c42830c0a679b0cd4d6e2b36ae0cf3dbb1e1dfdda48a244f4bcd"}, - {file = "protobuf-4.25.1-cp37-abi3-manylinux2014_aarch64.whl", hash = "sha256:0f881b589ff449bf0b931a711926e9ddaad3b35089cc039ce1af50b21a4ae8cb"}, - {file = "protobuf-4.25.1-cp37-abi3-manylinux2014_x86_64.whl", hash = "sha256:ca37bf6a6d0046272c152eea90d2e4ef34593aaa32e8873fc14c16440f22d4b7"}, - {file = "protobuf-4.25.1-cp38-cp38-win32.whl", hash = "sha256:abc0525ae2689a8000837729eef7883b9391cd6aa7950249dcf5a4ede230d5dd"}, - {file = "protobuf-4.25.1-cp38-cp38-win_amd64.whl", hash = "sha256:1484f9e692091450e7edf418c939e15bfc8fc68856e36ce399aed6889dae8bb0"}, - {file = "protobuf-4.25.1-cp39-cp39-win32.whl", hash = "sha256:8bdbeaddaac52d15c6dce38c71b03038ef7772b977847eb6d374fc86636fa510"}, - {file = "protobuf-4.25.1-cp39-cp39-win_amd64.whl", hash = "sha256:becc576b7e6b553d22cbdf418686ee4daa443d7217999125c045ad56322dda10"}, - {file = "protobuf-4.25.1-py3-none-any.whl", hash = "sha256:a19731d5e83ae4737bb2a089605e636077ac001d18781b3cf489b9546c7c80d6"}, - {file = "protobuf-4.25.1.tar.gz", hash = "sha256:57d65074b4f5baa4ab5da1605c02be90ac20c8b40fb137d6a8df9f416b0d0ce2"}, + {file = "protobuf-4.25.2-cp310-abi3-win32.whl", hash = "sha256:b50c949608682b12efb0b2717f53256f03636af5f60ac0c1d900df6213910fd6"}, + {file = "protobuf-4.25.2-cp310-abi3-win_amd64.whl", hash = "sha256:8f62574857ee1de9f770baf04dde4165e30b15ad97ba03ceac65f760ff018ac9"}, + {file = "protobuf-4.25.2-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:2db9f8fa64fbdcdc93767d3cf81e0f2aef176284071507e3ede160811502fd3d"}, + {file = "protobuf-4.25.2-cp37-abi3-manylinux2014_aarch64.whl", hash = "sha256:10894a2885b7175d3984f2be8d9850712c57d5e7587a2410720af8be56cdaf62"}, + {file = "protobuf-4.25.2-cp37-abi3-manylinux2014_x86_64.whl", hash = "sha256:fc381d1dd0516343f1440019cedf08a7405f791cd49eef4ae1ea06520bc1c020"}, + {file = "protobuf-4.25.2-cp38-cp38-win32.whl", hash = "sha256:33a1aeef4b1927431d1be780e87b641e322b88d654203a9e9d93f218ee359e61"}, + {file = "protobuf-4.25.2-cp38-cp38-win_amd64.whl", hash = "sha256:47f3de503fe7c1245f6f03bea7e8d3ec11c6c4a2ea9ef910e3221c8a15516d62"}, + {file = "protobuf-4.25.2-cp39-cp39-win32.whl", hash = "sha256:5e5c933b4c30a988b52e0b7c02641760a5ba046edc5e43d3b94a74c9fc57c1b3"}, + {file = "protobuf-4.25.2-cp39-cp39-win_amd64.whl", hash = "sha256:d66a769b8d687df9024f2985d5137a337f957a0916cf5464d1513eee96a63ff0"}, + {file = "protobuf-4.25.2-py3-none-any.whl", hash = "sha256:a8b7a98d4ce823303145bf3c1a8bdb0f2f4642a414b196f04ad9853ed0c8f830"}, + {file = "protobuf-4.25.2.tar.gz", hash = "sha256:fe599e175cb347efc8ee524bcd4b902d11f7262c0e569ececcb89995c15f0a5e"}, ] +[[package]] +name = "psycopg2-binary" +version = "2.9.9" +description = "psycopg2 - Python-PostgreSQL Database Adapter" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "psycopg2-binary-2.9.9.tar.gz", hash = "sha256:7f01846810177d829c7692f1f5ada8096762d9172af1b1a28d4ab5b77c923c1c"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c2470da5418b76232f02a2fcd2229537bb2d5a7096674ce61859c3229f2eb202"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c6af2a6d4b7ee9615cbb162b0738f6e1fd1f5c3eda7e5da17861eacf4c717ea7"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:75723c3c0fbbf34350b46a3199eb50638ab22a0228f93fb472ef4d9becc2382b"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:83791a65b51ad6ee6cf0845634859d69a038ea9b03d7b26e703f94c7e93dbcf9"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0ef4854e82c09e84cc63084a9e4ccd6d9b154f1dbdd283efb92ecd0b5e2b8c84"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed1184ab8f113e8d660ce49a56390ca181f2981066acc27cf637d5c1e10ce46e"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d2997c458c690ec2bc6b0b7ecbafd02b029b7b4283078d3b32a852a7ce3ddd98"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:b58b4710c7f4161b5e9dcbe73bb7c62d65670a87df7bcce9e1faaad43e715245"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:0c009475ee389757e6e34611d75f6e4f05f0cf5ebb76c6037508318e1a1e0d7e"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8dbf6d1bc73f1d04ec1734bae3b4fb0ee3cb2a493d35ede9badbeb901fb40f6f"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-win32.whl", hash = "sha256:3f78fd71c4f43a13d342be74ebbc0666fe1f555b8837eb113cb7416856c79682"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-win_amd64.whl", hash = "sha256:876801744b0dee379e4e3c38b76fc89f88834bb15bf92ee07d94acd06ec890a0"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ee825e70b1a209475622f7f7b776785bd68f34af6e7a46e2e42f27b659b5bc26"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1ea665f8ce695bcc37a90ee52de7a7980be5161375d42a0b6c6abedbf0d81f0f"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:143072318f793f53819048fdfe30c321890af0c3ec7cb1dfc9cc87aa88241de2"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c332c8d69fb64979ebf76613c66b985414927a40f8defa16cf1bc028b7b0a7b0"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7fc5a5acafb7d6ccca13bfa8c90f8c51f13d8fb87d95656d3950f0158d3ce53"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:977646e05232579d2e7b9c59e21dbe5261f403a88417f6a6512e70d3f8a046be"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b6356793b84728d9d50ead16ab43c187673831e9d4019013f1402c41b1db9b27"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:bc7bb56d04601d443f24094e9e31ae6deec9ccb23581f75343feebaf30423359"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:77853062a2c45be16fd6b8d6de2a99278ee1d985a7bd8b103e97e41c034006d2"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:78151aa3ec21dccd5cdef6c74c3e73386dcdfaf19bced944169697d7ac7482fc"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-win32.whl", hash = "sha256:dc4926288b2a3e9fd7b50dc6a1909a13bbdadfc67d93f3374d984e56f885579d"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-win_amd64.whl", hash = "sha256:b76bedd166805480ab069612119ea636f5ab8f8771e640ae103e05a4aae3e417"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:8532fd6e6e2dc57bcb3bc90b079c60de896d2128c5d9d6f24a63875a95a088cf"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b0605eaed3eb239e87df0d5e3c6489daae3f7388d455d0c0b4df899519c6a38d"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f8544b092a29a6ddd72f3556a9fcf249ec412e10ad28be6a0c0d948924f2212"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2d423c8d8a3c82d08fe8af900ad5b613ce3632a1249fd6a223941d0735fce493"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2e5afae772c00980525f6d6ecf7cbca55676296b580c0e6abb407f15f3706996"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e6f98446430fdf41bd36d4faa6cb409f5140c1c2cf58ce0bbdaf16af7d3f119"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c77e3d1862452565875eb31bdb45ac62502feabbd53429fdc39a1cc341d681ba"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:cb16c65dcb648d0a43a2521f2f0a2300f40639f6f8c1ecbc662141e4e3e1ee07"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:911dda9c487075abd54e644ccdf5e5c16773470a6a5d3826fda76699410066fb"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:57fede879f08d23c85140a360c6a77709113efd1c993923c59fde17aa27599fe"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-win32.whl", hash = "sha256:64cf30263844fa208851ebb13b0732ce674d8ec6a0c86a4e160495d299ba3c93"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-win_amd64.whl", hash = "sha256:81ff62668af011f9a48787564ab7eded4e9fb17a4a6a74af5ffa6a457400d2ab"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:2293b001e319ab0d869d660a704942c9e2cce19745262a8aba2115ef41a0a42a"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:03ef7df18daf2c4c07e2695e8cfd5ee7f748a1d54d802330985a78d2a5a6dca9"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a602ea5aff39bb9fac6308e9c9d82b9a35c2bf288e184a816002c9fae930b77"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8359bf4791968c5a78c56103702000105501adb557f3cf772b2c207284273984"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:275ff571376626195ab95a746e6a04c7df8ea34638b99fc11160de91f2fef503"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:f9b5571d33660d5009a8b3c25dc1db560206e2d2f89d3df1cb32d72c0d117d52"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:420f9bbf47a02616e8554e825208cb947969451978dceb77f95ad09c37791dae"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:4154ad09dac630a0f13f37b583eae260c6aa885d67dfbccb5b02c33f31a6d420"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a148c5d507bb9b4f2030a2025c545fccb0e1ef317393eaba42e7eabd28eb6041"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-win32.whl", hash = "sha256:68fc1f1ba168724771e38bee37d940d2865cb0f562380a1fb1ffb428b75cb692"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-win_amd64.whl", hash = "sha256:281309265596e388ef483250db3640e5f414168c5a67e9c665cafce9492eda2f"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:60989127da422b74a04345096c10d416c2b41bd7bf2a380eb541059e4e999980"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:246b123cc54bb5361588acc54218c8c9fb73068bf227a4a531d8ed56fa3ca7d6"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34eccd14566f8fe14b2b95bb13b11572f7c7d5c36da61caf414d23b91fcc5d94"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18d0ef97766055fec15b5de2c06dd8e7654705ce3e5e5eed3b6651a1d2a9a152"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d3f82c171b4ccd83bbaf35aa05e44e690113bd4f3b7b6cc54d2219b132f3ae55"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ead20f7913a9c1e894aebe47cccf9dc834e1618b7aa96155d2091a626e59c972"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:ca49a8119c6cbd77375ae303b0cfd8c11f011abbbd64601167ecca18a87e7cdd"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:323ba25b92454adb36fa425dc5cf6f8f19f78948cbad2e7bc6cdf7b0d7982e59"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:1236ed0952fbd919c100bc839eaa4a39ebc397ed1c08a97fc45fee2a595aa1b3"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:729177eaf0aefca0994ce4cffe96ad3c75e377c7b6f4efa59ebf003b6d398716"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-win32.whl", hash = "sha256:804d99b24ad523a1fe18cc707bf741670332f7c7412e9d49cb5eab67e886b9b5"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-win_amd64.whl", hash = "sha256:a6cdcc3ede532f4a4b96000b6362099591ab4a3e913d70bcbac2b56c872446f7"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:72dffbd8b4194858d0941062a9766f8297e8868e1dd07a7b36212aaa90f49472"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:30dcc86377618a4c8f3b72418df92e77be4254d8f89f14b8e8f57d6d43603c0f"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:31a34c508c003a4347d389a9e6fcc2307cc2150eb516462a7a17512130de109e"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:15208be1c50b99203fe88d15695f22a5bed95ab3f84354c494bcb1d08557df67"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1873aade94b74715be2246321c8650cabf5a0d098a95bab81145ffffa4c13876"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a58c98a7e9c021f357348867f537017057c2ed7f77337fd914d0bedb35dace7"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4686818798f9194d03c9129a4d9a702d9e113a89cb03bffe08c6cf799e053291"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:ebdc36bea43063116f0486869652cb2ed7032dbc59fbcb4445c4862b5c1ecf7f"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:ca08decd2697fdea0aea364b370b1249d47336aec935f87b8bbfd7da5b2ee9c1"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ac05fb791acf5e1a3e39402641827780fe44d27e72567a000412c648a85ba860"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-win32.whl", hash = "sha256:9dba73be7305b399924709b91682299794887cbbd88e38226ed9f6712eabee90"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-win_amd64.whl", hash = "sha256:f7ae5d65ccfbebdfa761585228eb4d0df3a8b15cfb53bd953e713e09fbb12957"}, +] + +[[package]] +name = "pyarrow" +version = "15.0.0" +description = "Python library for Apache Arrow" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pyarrow-15.0.0-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:0a524532fd6dd482edaa563b686d754c70417c2f72742a8c990b322d4c03a15d"}, + {file = "pyarrow-15.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:60a6bdb314affa9c2e0d5dddf3d9cbb9ef4a8dddaa68669975287d47ece67642"}, + {file = "pyarrow-15.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:66958fd1771a4d4b754cd385835e66a3ef6b12611e001d4e5edfcef5f30391e2"}, + {file = "pyarrow-15.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1f500956a49aadd907eaa21d4fff75f73954605eaa41f61cb94fb008cf2e00c6"}, + {file = "pyarrow-15.0.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:6f87d9c4f09e049c2cade559643424da84c43a35068f2a1c4653dc5b1408a929"}, + {file = "pyarrow-15.0.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:85239b9f93278e130d86c0e6bb455dcb66fc3fd891398b9d45ace8799a871a1e"}, + {file = "pyarrow-15.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:5b8d43e31ca16aa6e12402fcb1e14352d0d809de70edd185c7650fe80e0769e3"}, + {file = "pyarrow-15.0.0-cp311-cp311-macosx_10_15_x86_64.whl", hash = "sha256:fa7cd198280dbd0c988df525e50e35b5d16873e2cdae2aaaa6363cdb64e3eec5"}, + {file = "pyarrow-15.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8780b1a29d3c8b21ba6b191305a2a607de2e30dab399776ff0aa09131e266340"}, + {file = "pyarrow-15.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fe0ec198ccc680f6c92723fadcb97b74f07c45ff3fdec9dd765deb04955ccf19"}, + {file = "pyarrow-15.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:036a7209c235588c2f07477fe75c07e6caced9b7b61bb897c8d4e52c4b5f9555"}, + {file = "pyarrow-15.0.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:2bd8a0e5296797faf9a3294e9fa2dc67aa7f10ae2207920dbebb785c77e9dbe5"}, + {file = "pyarrow-15.0.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:e8ebed6053dbe76883a822d4e8da36860f479d55a762bd9e70d8494aed87113e"}, + {file = "pyarrow-15.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:17d53a9d1b2b5bd7d5e4cd84d018e2a45bc9baaa68f7e6e3ebed45649900ba99"}, + {file = "pyarrow-15.0.0-cp312-cp312-macosx_10_15_x86_64.whl", hash = "sha256:9950a9c9df24090d3d558b43b97753b8f5867fb8e521f29876aa021c52fda351"}, + {file = "pyarrow-15.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:003d680b5e422d0204e7287bb3fa775b332b3fce2996aa69e9adea23f5c8f970"}, + {file = "pyarrow-15.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f75fce89dad10c95f4bf590b765e3ae98bcc5ba9f6ce75adb828a334e26a3d40"}, + {file = "pyarrow-15.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ca9cb0039923bec49b4fe23803807e4ef39576a2bec59c32b11296464623dc2"}, + {file = "pyarrow-15.0.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:9ed5a78ed29d171d0acc26a305a4b7f83c122d54ff5270810ac23c75813585e4"}, + {file = "pyarrow-15.0.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:6eda9e117f0402dfcd3cd6ec9bfee89ac5071c48fc83a84f3075b60efa96747f"}, + {file = "pyarrow-15.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:9a3a6180c0e8f2727e6f1b1c87c72d3254cac909e609f35f22532e4115461177"}, + {file = "pyarrow-15.0.0-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:19a8918045993349b207de72d4576af0191beef03ea655d8bdb13762f0cd6eac"}, + {file = "pyarrow-15.0.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:d0ec076b32bacb6666e8813a22e6e5a7ef1314c8069d4ff345efa6246bc38593"}, + {file = "pyarrow-15.0.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5db1769e5d0a77eb92344c7382d6543bea1164cca3704f84aa44e26c67e320fb"}, + {file = "pyarrow-15.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e2617e3bf9df2a00020dd1c1c6dce5cc343d979efe10bc401c0632b0eef6ef5b"}, + {file = "pyarrow-15.0.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:d31c1d45060180131caf10f0f698e3a782db333a422038bf7fe01dace18b3a31"}, + {file = "pyarrow-15.0.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:c8c287d1d479de8269398b34282e206844abb3208224dbdd7166d580804674b7"}, + {file = "pyarrow-15.0.0-cp38-cp38-win_amd64.whl", hash = "sha256:07eb7f07dc9ecbb8dace0f58f009d3a29ee58682fcdc91337dfeb51ea618a75b"}, + {file = "pyarrow-15.0.0-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:47af7036f64fce990bb8a5948c04722e4e3ea3e13b1007ef52dfe0aa8f23cf7f"}, + {file = "pyarrow-15.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:93768ccfff85cf044c418bfeeafce9a8bb0cee091bd8fd19011aff91e58de540"}, + {file = "pyarrow-15.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f6ee87fd6892700960d90abb7b17a72a5abb3b64ee0fe8db6c782bcc2d0dc0b4"}, + {file = "pyarrow-15.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:001fca027738c5f6be0b7a3159cc7ba16a5c52486db18160909a0831b063c4e4"}, + {file = "pyarrow-15.0.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:d1c48648f64aec09accf44140dccb92f4f94394b8d79976c426a5b79b11d4fa7"}, + {file = "pyarrow-15.0.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:972a0141be402bb18e3201448c8ae62958c9c7923dfaa3b3d4530c835ac81aed"}, + {file = "pyarrow-15.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:f01fc5cf49081426429127aa2d427d9d98e1cb94a32cb961d583a70b7c4504e6"}, + {file = "pyarrow-15.0.0.tar.gz", hash = "sha256:876858f549d540898f927eba4ef77cd549ad8d24baa3207cf1b72e5788b50e83"}, +] + +[package.dependencies] +numpy = ">=1.16.6,<2" + [[package]] name = "pyasn1" version = "0.5.1" @@ -1563,19 +2568,19 @@ pyasn1 = ">=0.4.6,<0.6.0" [[package]] name = "pydantic" -version = "2.5.3" +version = "2.6.0" description = "Data validation using Python type hints" category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pydantic-2.5.3-py3-none-any.whl", hash = "sha256:d0caf5954bee831b6bfe7e338c32b9e30c85dfe080c843680783ac2b631673b4"}, - {file = "pydantic-2.5.3.tar.gz", hash = "sha256:b3ef57c62535b0941697cce638c08900d87fcb67e29cfa99e8a68f747f393f7a"}, + {file = "pydantic-2.6.0-py3-none-any.whl", hash = "sha256:1440966574e1b5b99cf75a13bec7b20e3512e8a61b894ae252f56275e2c465ae"}, + {file = "pydantic-2.6.0.tar.gz", hash = "sha256:ae887bd94eb404b09d86e4d12f93893bdca79d766e738528c6fa1c849f3c6bcf"}, ] [package.dependencies] annotated-types = ">=0.4.0" -pydantic-core = "2.14.6" +pydantic-core = "2.16.1" typing-extensions = ">=4.6.1" [package.extras] @@ -1583,117 +2588,91 @@ email = ["email-validator (>=2.0.0)"] [[package]] name = "pydantic-core" -version = "2.14.6" +version = "2.16.1" description = "" category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pydantic_core-2.14.6-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:72f9a942d739f09cd42fffe5dc759928217649f070056f03c70df14f5770acf9"}, - {file = "pydantic_core-2.14.6-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6a31d98c0d69776c2576dda4b77b8e0c69ad08e8b539c25c7d0ca0dc19a50d6c"}, - {file = "pydantic_core-2.14.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5aa90562bc079c6c290f0512b21768967f9968e4cfea84ea4ff5af5d917016e4"}, - {file = "pydantic_core-2.14.6-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:370ffecb5316ed23b667d99ce4debe53ea664b99cc37bfa2af47bc769056d534"}, - {file = "pydantic_core-2.14.6-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f85f3843bdb1fe80e8c206fe6eed7a1caeae897e496542cee499c374a85c6e08"}, - {file = "pydantic_core-2.14.6-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9862bf828112e19685b76ca499b379338fd4c5c269d897e218b2ae8fcb80139d"}, - {file = "pydantic_core-2.14.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:036137b5ad0cb0004c75b579445a1efccd072387a36c7f217bb8efd1afbe5245"}, - {file = "pydantic_core-2.14.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:92879bce89f91f4b2416eba4429c7b5ca22c45ef4a499c39f0c5c69257522c7c"}, - {file = "pydantic_core-2.14.6-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0c08de15d50fa190d577e8591f0329a643eeaed696d7771760295998aca6bc66"}, - {file = "pydantic_core-2.14.6-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:36099c69f6b14fc2c49d7996cbf4f87ec4f0e66d1c74aa05228583225a07b590"}, - {file = "pydantic_core-2.14.6-cp310-none-win32.whl", hash = "sha256:7be719e4d2ae6c314f72844ba9d69e38dff342bc360379f7c8537c48e23034b7"}, - {file = "pydantic_core-2.14.6-cp310-none-win_amd64.whl", hash = "sha256:36fa402dcdc8ea7f1b0ddcf0df4254cc6b2e08f8cd80e7010d4c4ae6e86b2a87"}, - {file = "pydantic_core-2.14.6-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:dea7fcd62915fb150cdc373212141a30037e11b761fbced340e9db3379b892d4"}, - {file = "pydantic_core-2.14.6-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ffff855100bc066ff2cd3aa4a60bc9534661816b110f0243e59503ec2df38421"}, - {file = "pydantic_core-2.14.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1b027c86c66b8627eb90e57aee1f526df77dc6d8b354ec498be9a757d513b92b"}, - {file = "pydantic_core-2.14.6-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:00b1087dabcee0b0ffd104f9f53d7d3eaddfaa314cdd6726143af6bc713aa27e"}, - {file = "pydantic_core-2.14.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:75ec284328b60a4e91010c1acade0c30584f28a1f345bc8f72fe8b9e46ec6a96"}, - {file = "pydantic_core-2.14.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7e1f4744eea1501404b20b0ac059ff7e3f96a97d3e3f48ce27a139e053bb370b"}, - {file = "pydantic_core-2.14.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2602177668f89b38b9f84b7b3435d0a72511ddef45dc14446811759b82235a1"}, - {file = "pydantic_core-2.14.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6c8edaea3089bf908dd27da8f5d9e395c5b4dc092dbcce9b65e7156099b4b937"}, - {file = "pydantic_core-2.14.6-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:478e9e7b360dfec451daafe286998d4a1eeaecf6d69c427b834ae771cad4b622"}, - {file = "pydantic_core-2.14.6-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:b6ca36c12a5120bad343eef193cc0122928c5c7466121da7c20f41160ba00ba2"}, - {file = "pydantic_core-2.14.6-cp311-none-win32.whl", hash = "sha256:2b8719037e570639e6b665a4050add43134d80b687288ba3ade18b22bbb29dd2"}, - {file = "pydantic_core-2.14.6-cp311-none-win_amd64.whl", hash = "sha256:78ee52ecc088c61cce32b2d30a826f929e1708f7b9247dc3b921aec367dc1b23"}, - {file = "pydantic_core-2.14.6-cp311-none-win_arm64.whl", hash = "sha256:a19b794f8fe6569472ff77602437ec4430f9b2b9ec7a1105cfd2232f9ba355e6"}, - {file = "pydantic_core-2.14.6-cp312-cp312-macosx_10_7_x86_64.whl", hash = "sha256:667aa2eac9cd0700af1ddb38b7b1ef246d8cf94c85637cbb03d7757ca4c3fdec"}, - {file = "pydantic_core-2.14.6-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:cdee837710ef6b56ebd20245b83799fce40b265b3b406e51e8ccc5b85b9099b7"}, - {file = "pydantic_core-2.14.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2c5bcf3414367e29f83fd66f7de64509a8fd2368b1edf4351e862910727d3e51"}, - {file = "pydantic_core-2.14.6-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:26a92ae76f75d1915806b77cf459811e772d8f71fd1e4339c99750f0e7f6324f"}, - {file = "pydantic_core-2.14.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a983cca5ed1dd9a35e9e42ebf9f278d344603bfcb174ff99a5815f953925140a"}, - {file = "pydantic_core-2.14.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cb92f9061657287eded380d7dc455bbf115430b3aa4741bdc662d02977e7d0af"}, - {file = "pydantic_core-2.14.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4ace1e220b078c8e48e82c081e35002038657e4b37d403ce940fa679e57113b"}, - {file = "pydantic_core-2.14.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ef633add81832f4b56d3b4c9408b43d530dfca29e68fb1b797dcb861a2c734cd"}, - {file = "pydantic_core-2.14.6-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7e90d6cc4aad2cc1f5e16ed56e46cebf4877c62403a311af20459c15da76fd91"}, - {file = "pydantic_core-2.14.6-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:e8a5ac97ea521d7bde7621d86c30e86b798cdecd985723c4ed737a2aa9e77d0c"}, - {file = "pydantic_core-2.14.6-cp312-none-win32.whl", hash = "sha256:f27207e8ca3e5e021e2402ba942e5b4c629718e665c81b8b306f3c8b1ddbb786"}, - {file = "pydantic_core-2.14.6-cp312-none-win_amd64.whl", hash = "sha256:b3e5fe4538001bb82e2295b8d2a39356a84694c97cb73a566dc36328b9f83b40"}, - {file = "pydantic_core-2.14.6-cp312-none-win_arm64.whl", hash = "sha256:64634ccf9d671c6be242a664a33c4acf12882670b09b3f163cd00a24cffbd74e"}, - {file = "pydantic_core-2.14.6-cp37-cp37m-macosx_10_7_x86_64.whl", hash = "sha256:24368e31be2c88bd69340fbfe741b405302993242ccb476c5c3ff48aeee1afe0"}, - {file = "pydantic_core-2.14.6-cp37-cp37m-macosx_11_0_arm64.whl", hash = "sha256:e33b0834f1cf779aa839975f9d8755a7c2420510c0fa1e9fa0497de77cd35d2c"}, - {file = "pydantic_core-2.14.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6af4b3f52cc65f8a0bc8b1cd9676f8c21ef3e9132f21fed250f6958bd7223bed"}, - {file = "pydantic_core-2.14.6-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d15687d7d7f40333bd8266f3814c591c2e2cd263fa2116e314f60d82086e353a"}, - {file = "pydantic_core-2.14.6-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:095b707bb287bfd534044166ab767bec70a9bba3175dcdc3371782175c14e43c"}, - {file = "pydantic_core-2.14.6-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:94fc0e6621e07d1e91c44e016cc0b189b48db053061cc22d6298a611de8071bb"}, - {file = "pydantic_core-2.14.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1ce830e480f6774608dedfd4a90c42aac4a7af0a711f1b52f807130c2e434c06"}, - {file = "pydantic_core-2.14.6-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a306cdd2ad3a7d795d8e617a58c3a2ed0f76c8496fb7621b6cd514eb1532cae8"}, - {file = "pydantic_core-2.14.6-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:2f5fa187bde8524b1e37ba894db13aadd64faa884657473b03a019f625cee9a8"}, - {file = "pydantic_core-2.14.6-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:438027a975cc213a47c5d70672e0d29776082155cfae540c4e225716586be75e"}, - {file = "pydantic_core-2.14.6-cp37-none-win32.whl", hash = "sha256:f96ae96a060a8072ceff4cfde89d261837b4294a4f28b84a28765470d502ccc6"}, - {file = "pydantic_core-2.14.6-cp37-none-win_amd64.whl", hash = "sha256:e646c0e282e960345314f42f2cea5e0b5f56938c093541ea6dbf11aec2862391"}, - {file = "pydantic_core-2.14.6-cp38-cp38-macosx_10_7_x86_64.whl", hash = "sha256:db453f2da3f59a348f514cfbfeb042393b68720787bbef2b4c6068ea362c8149"}, - {file = "pydantic_core-2.14.6-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:3860c62057acd95cc84044e758e47b18dcd8871a328ebc8ccdefd18b0d26a21b"}, - {file = "pydantic_core-2.14.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:36026d8f99c58d7044413e1b819a67ca0e0b8ebe0f25e775e6c3d1fabb3c38fb"}, - {file = "pydantic_core-2.14.6-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8ed1af8692bd8d2a29d702f1a2e6065416d76897d726e45a1775b1444f5928a7"}, - {file = "pydantic_core-2.14.6-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:314ccc4264ce7d854941231cf71b592e30d8d368a71e50197c905874feacc8a8"}, - {file = "pydantic_core-2.14.6-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:982487f8931067a32e72d40ab6b47b1628a9c5d344be7f1a4e668fb462d2da42"}, - {file = "pydantic_core-2.14.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2dbe357bc4ddda078f79d2a36fc1dd0494a7f2fad83a0a684465b6f24b46fe80"}, - {file = "pydantic_core-2.14.6-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2f6ffc6701a0eb28648c845f4945a194dc7ab3c651f535b81793251e1185ac3d"}, - {file = "pydantic_core-2.14.6-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:7f5025db12fc6de7bc1104d826d5aee1d172f9ba6ca936bf6474c2148ac336c1"}, - {file = "pydantic_core-2.14.6-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:dab03ed811ed1c71d700ed08bde8431cf429bbe59e423394f0f4055f1ca0ea60"}, - {file = "pydantic_core-2.14.6-cp38-none-win32.whl", hash = "sha256:dfcbebdb3c4b6f739a91769aea5ed615023f3c88cb70df812849aef634c25fbe"}, - {file = "pydantic_core-2.14.6-cp38-none-win_amd64.whl", hash = "sha256:99b14dbea2fdb563d8b5a57c9badfcd72083f6006caf8e126b491519c7d64ca8"}, - {file = "pydantic_core-2.14.6-cp39-cp39-macosx_10_7_x86_64.whl", hash = "sha256:4ce8299b481bcb68e5c82002b96e411796b844d72b3e92a3fbedfe8e19813eab"}, - {file = "pydantic_core-2.14.6-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b9a9d92f10772d2a181b5ca339dee066ab7d1c9a34ae2421b2a52556e719756f"}, - {file = "pydantic_core-2.14.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fd9e98b408384989ea4ab60206b8e100d8687da18b5c813c11e92fd8212a98e0"}, - {file = "pydantic_core-2.14.6-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4f86f1f318e56f5cbb282fe61eb84767aee743ebe32c7c0834690ebea50c0a6b"}, - {file = "pydantic_core-2.14.6-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:86ce5fcfc3accf3a07a729779d0b86c5d0309a4764c897d86c11089be61da160"}, - {file = "pydantic_core-2.14.6-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3dcf1978be02153c6a31692d4fbcc2a3f1db9da36039ead23173bc256ee3b91b"}, - {file = "pydantic_core-2.14.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eedf97be7bc3dbc8addcef4142f4b4164066df0c6f36397ae4aaed3eb187d8ab"}, - {file = "pydantic_core-2.14.6-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d5f916acf8afbcab6bacbb376ba7dc61f845367901ecd5e328fc4d4aef2fcab0"}, - {file = "pydantic_core-2.14.6-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:8a14c192c1d724c3acbfb3f10a958c55a2638391319ce8078cb36c02283959b9"}, - {file = "pydantic_core-2.14.6-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0348b1dc6b76041516e8a854ff95b21c55f5a411c3297d2ca52f5528e49d8411"}, - {file = "pydantic_core-2.14.6-cp39-none-win32.whl", hash = "sha256:de2a0645a923ba57c5527497daf8ec5df69c6eadf869e9cd46e86349146e5975"}, - {file = "pydantic_core-2.14.6-cp39-none-win_amd64.whl", hash = "sha256:aca48506a9c20f68ee61c87f2008f81f8ee99f8d7f0104bff3c47e2d148f89d9"}, - {file = "pydantic_core-2.14.6-pp310-pypy310_pp73-macosx_10_7_x86_64.whl", hash = "sha256:d5c28525c19f5bb1e09511669bb57353d22b94cf8b65f3a8d141c389a55dec95"}, - {file = "pydantic_core-2.14.6-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:78d0768ee59baa3de0f4adac9e3748b4b1fffc52143caebddfd5ea2961595277"}, - {file = "pydantic_core-2.14.6-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b93785eadaef932e4fe9c6e12ba67beb1b3f1e5495631419c784ab87e975670"}, - {file = "pydantic_core-2.14.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a874f21f87c485310944b2b2734cd6d318765bcbb7515eead33af9641816506e"}, - {file = "pydantic_core-2.14.6-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b89f4477d915ea43b4ceea6756f63f0288941b6443a2b28c69004fe07fde0d0d"}, - {file = "pydantic_core-2.14.6-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:172de779e2a153d36ee690dbc49c6db568d7b33b18dc56b69a7514aecbcf380d"}, - {file = "pydantic_core-2.14.6-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:dfcebb950aa7e667ec226a442722134539e77c575f6cfaa423f24371bb8d2e94"}, - {file = "pydantic_core-2.14.6-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:55a23dcd98c858c0db44fc5c04fc7ed81c4b4d33c653a7c45ddaebf6563a2f66"}, - {file = "pydantic_core-2.14.6-pp37-pypy37_pp73-macosx_10_7_x86_64.whl", hash = "sha256:4241204e4b36ab5ae466ecec5c4c16527a054c69f99bba20f6f75232a6a534e2"}, - {file = "pydantic_core-2.14.6-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e574de99d735b3fc8364cba9912c2bec2da78775eba95cbb225ef7dda6acea24"}, - {file = "pydantic_core-2.14.6-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1302a54f87b5cd8528e4d6d1bf2133b6aa7c6122ff8e9dc5220fbc1e07bffebd"}, - {file = "pydantic_core-2.14.6-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f8e81e4b55930e5ffab4a68db1af431629cf2e4066dbdbfef65348b8ab804ea8"}, - {file = "pydantic_core-2.14.6-pp37-pypy37_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:c99462ffc538717b3e60151dfaf91125f637e801f5ab008f81c402f1dff0cd0f"}, - {file = "pydantic_core-2.14.6-pp37-pypy37_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:e4cf2d5829f6963a5483ec01578ee76d329eb5caf330ecd05b3edd697e7d768a"}, - {file = "pydantic_core-2.14.6-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:cf10b7d58ae4a1f07fccbf4a0a956d705356fea05fb4c70608bb6fa81d103cda"}, - {file = "pydantic_core-2.14.6-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:399ac0891c284fa8eb998bcfa323f2234858f5d2efca3950ae58c8f88830f145"}, - {file = "pydantic_core-2.14.6-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9c6a5c79b28003543db3ba67d1df336f253a87d3112dac3a51b94f7d48e4c0e1"}, - {file = "pydantic_core-2.14.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:599c87d79cab2a6a2a9df4aefe0455e61e7d2aeede2f8577c1b7c0aec643ee8e"}, - {file = "pydantic_core-2.14.6-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:43e166ad47ba900f2542a80d83f9fc65fe99eb63ceec4debec160ae729824052"}, - {file = "pydantic_core-2.14.6-pp38-pypy38_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:3a0b5db001b98e1c649dd55afa928e75aa4087e587b9524a4992316fa23c9fba"}, - {file = "pydantic_core-2.14.6-pp38-pypy38_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:747265448cb57a9f37572a488a57d873fd96bf51e5bb7edb52cfb37124516da4"}, - {file = "pydantic_core-2.14.6-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:7ebe3416785f65c28f4f9441e916bfc8a54179c8dea73c23023f7086fa601c5d"}, - {file = "pydantic_core-2.14.6-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:86c963186ca5e50d5c8287b1d1c9d3f8f024cbe343d048c5bd282aec2d8641f2"}, - {file = "pydantic_core-2.14.6-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:e0641b506486f0b4cd1500a2a65740243e8670a2549bb02bc4556a83af84ae03"}, - {file = "pydantic_core-2.14.6-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71d72ca5eaaa8d38c8df16b7deb1a2da4f650c41b58bb142f3fb75d5ad4a611f"}, - {file = "pydantic_core-2.14.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:27e524624eace5c59af499cd97dc18bb201dc6a7a2da24bfc66ef151c69a5f2a"}, - {file = "pydantic_core-2.14.6-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a3dde6cac75e0b0902778978d3b1646ca9f438654395a362cb21d9ad34b24acf"}, - {file = "pydantic_core-2.14.6-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:00646784f6cd993b1e1c0e7b0fdcbccc375d539db95555477771c27555e3c556"}, - {file = "pydantic_core-2.14.6-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:23598acb8ccaa3d1d875ef3b35cb6376535095e9405d91a3d57a8c7db5d29341"}, - {file = "pydantic_core-2.14.6-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7f41533d7e3cf9520065f610b41ac1c76bc2161415955fbcead4981b22c7611e"}, - {file = "pydantic_core-2.14.6.tar.gz", hash = "sha256:1fd0c1d395372843fba13a51c28e3bb9d59bd7aebfeb17358ffaaa1e4dbbe948"}, + {file = "pydantic_core-2.16.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:300616102fb71241ff477a2cbbc847321dbec49428434a2f17f37528721c4948"}, + {file = "pydantic_core-2.16.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5511f962dd1b9b553e9534c3b9c6a4b0c9ded3d8c2be96e61d56f933feef9e1f"}, + {file = "pydantic_core-2.16.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:98f0edee7ee9cc7f9221af2e1b95bd02810e1c7a6d115cfd82698803d385b28f"}, + {file = "pydantic_core-2.16.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9795f56aa6b2296f05ac79d8a424e94056730c0b860a62b0fdcfe6340b658cc8"}, + {file = "pydantic_core-2.16.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c45f62e4107ebd05166717ac58f6feb44471ed450d07fecd90e5f69d9bf03c48"}, + {file = "pydantic_core-2.16.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:462d599299c5971f03c676e2b63aa80fec5ebc572d89ce766cd11ca8bcb56f3f"}, + {file = "pydantic_core-2.16.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21ebaa4bf6386a3b22eec518da7d679c8363fb7fb70cf6972161e5542f470798"}, + {file = "pydantic_core-2.16.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:99f9a50b56713a598d33bc23a9912224fc5d7f9f292444e6664236ae471ddf17"}, + {file = "pydantic_core-2.16.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8ec364e280db4235389b5e1e6ee924723c693cbc98e9d28dc1767041ff9bc388"}, + {file = "pydantic_core-2.16.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:653a5dfd00f601a0ed6654a8b877b18d65ac32c9d9997456e0ab240807be6cf7"}, + {file = "pydantic_core-2.16.1-cp310-none-win32.whl", hash = "sha256:1661c668c1bb67b7cec96914329d9ab66755911d093bb9063c4c8914188af6d4"}, + {file = "pydantic_core-2.16.1-cp310-none-win_amd64.whl", hash = "sha256:561be4e3e952c2f9056fba5267b99be4ec2afadc27261505d4992c50b33c513c"}, + {file = "pydantic_core-2.16.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:102569d371fadc40d8f8598a59379c37ec60164315884467052830b28cc4e9da"}, + {file = "pydantic_core-2.16.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:735dceec50fa907a3c314b84ed609dec54b76a814aa14eb90da31d1d36873a5e"}, + {file = "pydantic_core-2.16.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e83ebbf020be727d6e0991c1b192a5c2e7113eb66e3def0cd0c62f9f266247e4"}, + {file = "pydantic_core-2.16.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:30a8259569fbeec49cfac7fda3ec8123486ef1b729225222f0d41d5f840b476f"}, + {file = "pydantic_core-2.16.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:920c4897e55e2881db6a6da151198e5001552c3777cd42b8a4c2f72eedc2ee91"}, + {file = "pydantic_core-2.16.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f5247a3d74355f8b1d780d0f3b32a23dd9f6d3ff43ef2037c6dcd249f35ecf4c"}, + {file = "pydantic_core-2.16.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2d5bea8012df5bb6dda1e67d0563ac50b7f64a5d5858348b5c8cb5043811c19d"}, + {file = "pydantic_core-2.16.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ed3025a8a7e5a59817b7494686d449ebfbe301f3e757b852c8d0d1961d6be864"}, + {file = "pydantic_core-2.16.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:06f0d5a1d9e1b7932477c172cc720b3b23c18762ed7a8efa8398298a59d177c7"}, + {file = "pydantic_core-2.16.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:150ba5c86f502c040b822777e2e519b5625b47813bd05f9273a8ed169c97d9ae"}, + {file = "pydantic_core-2.16.1-cp311-none-win32.whl", hash = "sha256:d6cbdf12ef967a6aa401cf5cdf47850559e59eedad10e781471c960583f25aa1"}, + {file = "pydantic_core-2.16.1-cp311-none-win_amd64.whl", hash = "sha256:afa01d25769af33a8dac0d905d5c7bb2d73c7c3d5161b2dd6f8b5b5eea6a3c4c"}, + {file = "pydantic_core-2.16.1-cp311-none-win_arm64.whl", hash = "sha256:1a2fe7b00a49b51047334d84aafd7e39f80b7675cad0083678c58983662da89b"}, + {file = "pydantic_core-2.16.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:0f478ec204772a5c8218e30eb813ca43e34005dff2eafa03931b3d8caef87d51"}, + {file = "pydantic_core-2.16.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f1936ef138bed2165dd8573aa65e3095ef7c2b6247faccd0e15186aabdda7f66"}, + {file = "pydantic_core-2.16.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99d3a433ef5dc3021c9534a58a3686c88363c591974c16c54a01af7efd741f13"}, + {file = "pydantic_core-2.16.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bd88f40f2294440d3f3c6308e50d96a0d3d0973d6f1a5732875d10f569acef49"}, + {file = "pydantic_core-2.16.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3fac641bbfa43d5a1bed99d28aa1fded1984d31c670a95aac1bf1d36ac6ce137"}, + {file = "pydantic_core-2.16.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:72bf9308a82b75039b8c8edd2be2924c352eda5da14a920551a8b65d5ee89253"}, + {file = "pydantic_core-2.16.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fb4363e6c9fc87365c2bc777a1f585a22f2f56642501885ffc7942138499bf54"}, + {file = "pydantic_core-2.16.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:20f724a023042588d0f4396bbbcf4cffd0ddd0ad3ed4f0d8e6d4ac4264bae81e"}, + {file = "pydantic_core-2.16.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:fb4370b15111905bf8b5ba2129b926af9470f014cb0493a67d23e9d7a48348e8"}, + {file = "pydantic_core-2.16.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:23632132f1fd608034f1a56cc3e484be00854db845b3a4a508834be5a6435a6f"}, + {file = "pydantic_core-2.16.1-cp312-none-win32.whl", hash = "sha256:b9f3e0bffad6e238f7acc20c393c1ed8fab4371e3b3bc311020dfa6020d99212"}, + {file = "pydantic_core-2.16.1-cp312-none-win_amd64.whl", hash = "sha256:a0b4cfe408cd84c53bab7d83e4209458de676a6ec5e9c623ae914ce1cb79b96f"}, + {file = "pydantic_core-2.16.1-cp312-none-win_arm64.whl", hash = "sha256:d195add190abccefc70ad0f9a0141ad7da53e16183048380e688b466702195dd"}, + {file = "pydantic_core-2.16.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:502c062a18d84452858f8aea1e520e12a4d5228fc3621ea5061409d666ea1706"}, + {file = "pydantic_core-2.16.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:d8c032ccee90b37b44e05948b449a2d6baed7e614df3d3f47fe432c952c21b60"}, + {file = "pydantic_core-2.16.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:920f4633bee43d7a2818e1a1a788906df5a17b7ab6fe411220ed92b42940f818"}, + {file = "pydantic_core-2.16.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9f5d37ff01edcbace53a402e80793640c25798fb7208f105d87a25e6fcc9ea06"}, + {file = "pydantic_core-2.16.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:399166f24c33a0c5759ecc4801f040dbc87d412c1a6d6292b2349b4c505effc9"}, + {file = "pydantic_core-2.16.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ac89ccc39cd1d556cc72d6752f252dc869dde41c7c936e86beac5eb555041b66"}, + {file = "pydantic_core-2.16.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:73802194f10c394c2bedce7a135ba1d8ba6cff23adf4217612bfc5cf060de34c"}, + {file = "pydantic_core-2.16.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8fa00fa24ffd8c31fac081bf7be7eb495be6d248db127f8776575a746fa55c95"}, + {file = "pydantic_core-2.16.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:601d3e42452cd4f2891c13fa8c70366d71851c1593ed42f57bf37f40f7dca3c8"}, + {file = "pydantic_core-2.16.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:07982b82d121ed3fc1c51faf6e8f57ff09b1325d2efccaa257dd8c0dd937acca"}, + {file = "pydantic_core-2.16.1-cp38-none-win32.whl", hash = "sha256:d0bf6f93a55d3fa7a079d811b29100b019784e2ee6bc06b0bb839538272a5610"}, + {file = "pydantic_core-2.16.1-cp38-none-win_amd64.whl", hash = "sha256:fbec2af0ebafa57eb82c18c304b37c86a8abddf7022955d1742b3d5471a6339e"}, + {file = "pydantic_core-2.16.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:a497be217818c318d93f07e14502ef93d44e6a20c72b04c530611e45e54c2196"}, + {file = "pydantic_core-2.16.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:694a5e9f1f2c124a17ff2d0be613fd53ba0c26de588eb4bdab8bca855e550d95"}, + {file = "pydantic_core-2.16.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d4dfc66abea3ec6d9f83e837a8f8a7d9d3a76d25c9911735c76d6745950e62c"}, + {file = "pydantic_core-2.16.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8655f55fe68c4685673265a650ef71beb2d31871c049c8b80262026f23605ee3"}, + {file = "pydantic_core-2.16.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:21e3298486c4ea4e4d5cc6fb69e06fb02a4e22089304308817035ac006a7f506"}, + {file = "pydantic_core-2.16.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:71b4a48a7427f14679f0015b13c712863d28bb1ab700bd11776a5368135c7d60"}, + {file = "pydantic_core-2.16.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10dca874e35bb60ce4f9f6665bfbfad050dd7573596608aeb9e098621ac331dc"}, + {file = "pydantic_core-2.16.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fa496cd45cda0165d597e9d6f01e36c33c9508f75cf03c0a650018c5048f578e"}, + {file = "pydantic_core-2.16.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:5317c04349472e683803da262c781c42c5628a9be73f4750ac7d13040efb5d2d"}, + {file = "pydantic_core-2.16.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:42c29d54ed4501a30cd71015bf982fa95e4a60117b44e1a200290ce687d3e640"}, + {file = "pydantic_core-2.16.1-cp39-none-win32.whl", hash = "sha256:ba07646f35e4e49376c9831130039d1b478fbfa1215ae62ad62d2ee63cf9c18f"}, + {file = "pydantic_core-2.16.1-cp39-none-win_amd64.whl", hash = "sha256:2133b0e412a47868a358713287ff9f9a328879da547dc88be67481cdac529118"}, + {file = "pydantic_core-2.16.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:d25ef0c33f22649b7a088035fd65ac1ce6464fa2876578df1adad9472f918a76"}, + {file = "pydantic_core-2.16.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:99c095457eea8550c9fa9a7a992e842aeae1429dab6b6b378710f62bfb70b394"}, + {file = "pydantic_core-2.16.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b49c604ace7a7aa8af31196abbf8f2193be605db6739ed905ecaf62af31ccae0"}, + {file = "pydantic_core-2.16.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c56da23034fe66221f2208c813d8aa509eea34d97328ce2add56e219c3a9f41c"}, + {file = "pydantic_core-2.16.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cebf8d56fee3b08ad40d332a807ecccd4153d3f1ba8231e111d9759f02edfd05"}, + {file = "pydantic_core-2.16.1-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:1ae8048cba95f382dba56766525abca438328455e35c283bb202964f41a780b0"}, + {file = "pydantic_core-2.16.1-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:780daad9e35b18d10d7219d24bfb30148ca2afc309928e1d4d53de86822593dc"}, + {file = "pydantic_core-2.16.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:c94b5537bf6ce66e4d7830c6993152940a188600f6ae044435287753044a8fe2"}, + {file = "pydantic_core-2.16.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:adf28099d061a25fbcc6531febb7a091e027605385de9fe14dd6a97319d614cf"}, + {file = "pydantic_core-2.16.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:644904600c15816a1f9a1bafa6aab0d21db2788abcdf4e2a77951280473f33e1"}, + {file = "pydantic_core-2.16.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:87bce04f09f0552b66fca0c4e10da78d17cb0e71c205864bab4e9595122cb9d9"}, + {file = "pydantic_core-2.16.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:877045a7969ace04d59516d5d6a7dee13106822f99a5d8df5e6822941f7bedc8"}, + {file = "pydantic_core-2.16.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9c46e556ee266ed3fb7b7a882b53df3c76b45e872fdab8d9cf49ae5e91147fd7"}, + {file = "pydantic_core-2.16.1-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:4eebbd049008eb800f519578e944b8dc8e0f7d59a5abb5924cc2d4ed3a1834ff"}, + {file = "pydantic_core-2.16.1-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:c0be58529d43d38ae849a91932391eb93275a06b93b79a8ab828b012e916a206"}, + {file = "pydantic_core-2.16.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:b1fc07896fc1851558f532dffc8987e526b682ec73140886c831d773cef44b76"}, + {file = "pydantic_core-2.16.1.tar.gz", hash = "sha256:daff04257b49ab7f4b3f73f98283d3dbb1a65bf3500d55c7beac3c66c310fe34"}, ] [package.dependencies] @@ -1733,70 +2712,23 @@ jsonasobj = ">=1.2.1" [[package]] name = "pymdown-extensions" -version = "10.4" +version = "10.7" description = "Extension pack for Python Markdown." category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "pymdown_extensions-10.4-py3-none-any.whl", hash = "sha256:cfc28d6a09d19448bcbf8eee3ce098c7d17ff99f7bd3069db4819af181212037"}, - {file = "pymdown_extensions-10.4.tar.gz", hash = "sha256:bc46f11749ecd4d6b71cf62396104b4a200bad3498cb0f5dad1b8502fe461a35"}, + {file = "pymdown_extensions-10.7-py3-none-any.whl", hash = "sha256:6ca215bc57bc12bf32b414887a68b810637d039124ed9b2e5bd3325cbb2c050c"}, + {file = "pymdown_extensions-10.7.tar.gz", hash = "sha256:c0d64d5cf62566f59e6b2b690a4095c931107c250a8c8e1351c1de5f6b036deb"}, ] [package.dependencies] -markdown = ">=3.2" +markdown = ">=3.5" pyyaml = "*" [package.extras] extra = ["pygments (>=2.12)"] -[[package]] -name = "pyoxigraph" -version = "0.3.22" -description = "Python bindings of Oxigraph, a SPARQL database and RDF toolkit" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "pyoxigraph-0.3.22-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:49609d3c8d6637193872181e8f9d8b85ae304b3d944b1d50a2e363bd4d3ad878"}, - {file = "pyoxigraph-0.3.22-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fb0a0f2bd4348e9b92fbb92c71f449b7e42f6ac6fb67ce5797cbd8ab3b673c86"}, - {file = "pyoxigraph-0.3.22-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:5e9cd5931488feb3bdd189094a746d2d0c05c5364a2d93a1b748d2bb91145ab8"}, - {file = "pyoxigraph-0.3.22-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:95c43d3da6d43460368f0a5f4b497412b0d6509e55eb12245b0f173248118656"}, - {file = "pyoxigraph-0.3.22-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f9d466025962895e67a7c4a4ba303fe23a911f99d2158f5f53eb50f56949125f"}, - {file = "pyoxigraph-0.3.22-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90dc1e4010e2011c5440b7a3832153a14f52257e12a90a0d7fc6ed16e88a7961"}, - {file = "pyoxigraph-0.3.22-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:10c02f543fa83338e93308cad7868137ccadffc3330827deebac715333070091"}, - {file = "pyoxigraph-0.3.22-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:469039b1ed6a31fef59b8b6c2ef5c836dd147944aa7120b4f4e6db4fd5abf60a"}, - {file = "pyoxigraph-0.3.22-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f2baadd8dba65ff91bdcdf85e57d928806d94612b85da58d64526f0f1d5cd4df"}, - {file = "pyoxigraph-0.3.22-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f7e217e82e541f7df4697705c7cbfbd62e019c50786669647cb261445d75215"}, - {file = "pyoxigraph-0.3.22-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:963bc825e34d7238bffb942572ac0e59a6512e7d33ec8f898f495964a8dac1de"}, - {file = "pyoxigraph-0.3.22-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c99cd7d305a5f154d6fa7eca3a93b153ac94ad2a4aff6c404ec56db38d538ea4"}, - {file = "pyoxigraph-0.3.22-cp37-abi3-macosx_10_14_x86_64.macosx_11_0_arm64.macosx_10_14_universal2.whl", hash = "sha256:32d5630c9fb3d7b819a25401b3afdbd01dbfc9624b1519d41216622fe3af52e6"}, - {file = "pyoxigraph-0.3.22-cp37-abi3-macosx_10_14_x86_64.whl", hash = "sha256:6368f24bc236a6055171f4a80cb63b9ad76fcbdbcb4a3ef981eb6d86d8975c11"}, - {file = "pyoxigraph-0.3.22-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:821e1103cf1e8f12d0738cf1b2625c8374758e33075ca67161ead3669f53e4cb"}, - {file = "pyoxigraph-0.3.22-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:630f1090d67d1199c86f358094289816e0c00a21000164cfe06499c8689f8b9e"}, - {file = "pyoxigraph-0.3.22-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1aca511243209005da32470bbfec9e023ac31095bbeaa8cedabe0a652adce38c"}, - {file = "pyoxigraph-0.3.22-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:ab329df388865afa9a934f1eac2e75264b220962a21bbcded6cb7ead96d1f1dd"}, - {file = "pyoxigraph-0.3.22-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:60b7f13331b91827e2edfa8633ffb7e3bfc8630b708578fb0bc8d43c76754f20"}, - {file = "pyoxigraph-0.3.22-cp37-abi3-win_amd64.whl", hash = "sha256:9a4ffd8ce28c3e8ce888662e0d9e9155e5226ecd8cd967f3c46391cf266c4c1d"}, - {file = "pyoxigraph-0.3.22-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c4b8fde463e507c394f5b165a7a2571fd74028a8b343c161d81f63eb83a7d7c7"}, - {file = "pyoxigraph-0.3.22-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d6ad3d8037af4ab5b1de75999fd2ba1b93becf24a9ee5e46ea0ee20a4efe270b"}, - {file = "pyoxigraph-0.3.22-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:26c229a061372b5c52f2b85f30fae028a69a8ba71654b402cc4099264d04ca58"}, - {file = "pyoxigraph-0.3.22-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:9211b2a9d9f13875aec4acede8e1395ff617d64ac7cff0f80cbaf4c08fc8b648"}, - {file = "pyoxigraph-0.3.22-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:00645cb370ebafc79cfecd08c5ac4656469af9ec450cb9207d94f6939e26ba0e"}, - {file = "pyoxigraph-0.3.22-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e6d55de26adabe7d6fece9e1dad4556d648c4166ee79d65e4f7c64acd898656e"}, - {file = "pyoxigraph-0.3.22-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:1427e62704bce0a1bc03661efd4d6a7c85cf548824e5e48b17efb4509bd034ad"}, - {file = "pyoxigraph-0.3.22-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:e2bebace02e29d1cf3bc324815058f50b2ff59980a02193280a89c905d8437ab"}, - {file = "pyoxigraph-0.3.22-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9e363d0b788f870b1008bb75e41a31b01a6277d9a7cc028ed6534a23bba69e60"}, - {file = "pyoxigraph-0.3.22-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0508eb4515ce1b3c7548d3f9382c1b366f6602c2e01e9e036c20e730d8fece47"}, - {file = "pyoxigraph-0.3.22-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:db64bdef54d5d1c0d51bec08d811cd1ff86c7608e24b9362523ff94fb3b46117"}, - {file = "pyoxigraph-0.3.22-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:33ca01c1727e079af3335883d75e5390619e7d2ece813c8065ba1cbcd71d17a3"}, - {file = "pyoxigraph-0.3.22-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:55322d5b9b852c4813c293575aa5e676cec19c617d0aad5ae7ce47c49b113f0b"}, - {file = "pyoxigraph-0.3.22-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3397138f3a6d2c3299250ebde2bca7c95a25b58b29009eb0b29c2f5d1438d954"}, - {file = "pyoxigraph-0.3.22-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1031f91a0e75c6cd3ae9008f2d5bcdd7b2832bc1354f40dcab04ef7957f1140b"}, - {file = "pyoxigraph-0.3.22-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:16f44f28fff015d310840c9744cdaaa31f6c1a548918c2316873f10bba76e17f"}, - {file = "pyoxigraph-0.3.22.tar.gz", hash = "sha256:430b18cb3cec37b8c71cee0f70ea10601b9e479f1b8c364861660ae9f8629fd9"}, -] - [[package]] name = "pyparsing" version = "3.1.1" @@ -1875,6 +2807,23 @@ pyjsg = ">=0.11.10" rdflib-shim = "*" shexjsg = ">=0.8.1" +[[package]] +name = "pysolr" +version = "3.9.0" +description = "Lightweight Python client for Apache Solr" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "pysolr-3.9.0.tar.gz", hash = "sha256:6ef05feb87c614894243eddc62e9b0a6134a889c159ae868655cf6cd749545e6"}, +] + +[package.dependencies] +requests = ">=2.9.1" + +[package.extras] +solrcloud = ["kazoo (>=2.5.0)"] + [[package]] name = "pystow" version = "0.5.2" @@ -1902,14 +2851,14 @@ xml = ["lxml"] [[package]] name = "pytest" -version = "7.4.3" +version = "8.0.0" description = "pytest: simple powerful testing with Python" category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pytest-7.4.3-py3-none-any.whl", hash = "sha256:0d009c083ea859a71b76adf7c1d502e4bc170b80a8ef002da5806527b9591fac"}, - {file = "pytest-7.4.3.tar.gz", hash = "sha256:d989d136982de4e3b29dabcc838ad581c64e8ed52c11fbe86ddebd9da0818cd5"}, + {file = "pytest-8.0.0-py3-none-any.whl", hash = "sha256:50fb9cbe836c3f20f0dfa99c565201fb75dc54c8d76373cd1bde06b06657bdb6"}, + {file = "pytest-8.0.0.tar.gz", hash = "sha256:249b1b0864530ba251b7438274c4d251c58d868edaaec8762893ad4a0d71c36c"}, ] [package.dependencies] @@ -1917,7 +2866,7 @@ colorama = {version = "*", markers = "sys_platform == \"win32\""} exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} iniconfig = "*" packaging = "*" -pluggy = ">=0.12,<2.0" +pluggy = ">=1.3.0,<2.0" tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} [package.extras] @@ -1968,14 +2917,14 @@ sortedcontainers = "*" [[package]] name = "pytz" -version = "2023.3.post1" +version = "2024.1" description = "World timezone definitions, modern and historical" category = "main" optional = false python-versions = "*" files = [ - {file = "pytz-2023.3.post1-py2.py3-none-any.whl", hash = "sha256:ce42d816b81b68506614c11e8937d3aa9e41007ceb50bfdcb0749b921bf646c7"}, - {file = "pytz-2023.3.post1.tar.gz", hash = "sha256:7b4fddbeb94a1eba4b557da24f19fdf9db575192544270a9101d8509f9f43d7b"}, + {file = "pytz-2024.1-py2.py3-none-any.whl", hash = "sha256:328171f4e3623139da4983451950b28e95ac706e13f3f2630a879749e7a8b319"}, + {file = "pytz-2024.1.tar.gz", hash = "sha256:2a29735ea9c18baf14b448846bde5a48030ed267578472d8955cd0e7443a9812"}, ] [[package]] @@ -2053,27 +3002,57 @@ files = [ [package.dependencies] pyyaml = "*" +[[package]] +name = "quantulum3" +version = "0.7.11" +description = "Extract quantities from unstructured text." +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "quantulum3-0.7.11-py3-none-any.whl", hash = "sha256:f958744cdcca60c5a720aff2084f494ba16d57413344b7bb61100528ff3923ff"}, + {file = "quantulum3-0.7.11.tar.gz", hash = "sha256:cbfd2cc8cdbe9e151ee8c37ad4d65aad24da2bb4be4a13ff16ad6509955b2ec4"}, +] + +[package.dependencies] +inflect = "*" +num2words = "*" + +[[package]] +name = "ratelimit" +version = "2.2.1" +description = "API rate limit decorator" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "ratelimit-2.2.1.tar.gz", hash = "sha256:af8a9b64b821529aca09ebaf6d8d279100d766f19e90b5059ac6a718ca6dee42"}, +] + [[package]] name = "rdflib" -version = "7.0.0" +version = "6.2.0" description = "RDFLib is a Python library for working with RDF, a simple yet powerful language for representing information." category = "main" optional = false -python-versions = ">=3.8.1,<4.0.0" +python-versions = ">=3.7" files = [ - {file = "rdflib-7.0.0-py3-none-any.whl", hash = "sha256:0438920912a642c866a513de6fe8a0001bd86ef975057d6962c79ce4771687cd"}, - {file = "rdflib-7.0.0.tar.gz", hash = "sha256:9995eb8569428059b8c1affd26b25eac510d64f5043d9ce8c84e0d0036e995ae"}, + {file = "rdflib-6.2.0-py3-none-any.whl", hash = "sha256:85c34a86dfc517a41e5f2425a41a0aceacc23983462b32e68610b9fad1383bca"}, + {file = "rdflib-6.2.0.tar.gz", hash = "sha256:62dc3c86d1712db0f55785baf8047f63731fa59b2682be03219cb89262065942"}, ] [package.dependencies] -isodate = ">=0.6.0,<0.7.0" -pyparsing = ">=2.1.0,<4" +isodate = "*" +pyparsing = "*" +setuptools = "*" [package.extras] -berkeleydb = ["berkeleydb (>=18.1.0,<19.0.0)"] -html = ["html5lib (>=1.0,<2.0)"] -lxml = ["lxml (>=4.3.0,<5.0.0)"] -networkx = ["networkx (>=2.0.0,<3.0.0)"] +berkeleydb = ["berkeleydb"] +dev = ["black (==22.6.0)", "flake8", "flakeheaven", "isort", "mypy", "pep8-naming", "types-setuptools"] +docs = ["myst-parser", "sphinx (<6)", "sphinx-autodoc-typehints", "sphinxcontrib-apidoc", "sphinxcontrib-kroki"] +html = ["html5lib"] +networkx = ["networkx"] +tests = ["html5lib", "pytest", "pytest-cov"] [[package]] name = "rdflib-jsonld" @@ -2108,14 +3087,14 @@ rdflib-jsonld = "0.6.1" [[package]] name = "referencing" -version = "0.31.0" +version = "0.33.0" description = "JSON Referencing + Python" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "referencing-0.31.0-py3-none-any.whl", hash = "sha256:381b11e53dd93babb55696c71cf42aef2d36b8a150c49bf0bc301e36d536c882"}, - {file = "referencing-0.31.0.tar.gz", hash = "sha256:cc28f2c88fbe7b961a7817a0abc034c09a1e36358f82fedb4ffdf29a25398863"}, + {file = "referencing-0.33.0-py3-none-any.whl", hash = "sha256:39240f2ecc770258f28b642dd47fd74bc8b02484de54e1882b74b35ebd779bd5"}, + {file = "referencing-0.33.0.tar.gz", hash = "sha256:c775fedf74bc0f9189c2a3be1c12fd03e8c23f4d371dce795df44e06c5b412f7"}, ] [package.dependencies] @@ -2144,6 +3123,37 @@ urllib3 = ">=1.21.1,<3" socks = ["PySocks (>=1.5.6,!=1.5.7)"] use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] +[[package]] +name = "requests-cache" +version = "1.1.1" +description = "A persistent cache for python requests" +category = "dev" +optional = false +python-versions = ">=3.7,<4.0" +files = [ + {file = "requests_cache-1.1.1-py3-none-any.whl", hash = "sha256:c8420cf096f3aafde13c374979c21844752e2694ffd8710e6764685bb577ac90"}, + {file = "requests_cache-1.1.1.tar.gz", hash = "sha256:764f93d3fa860be72125a568c2cc8eafb151cf29b4dc2515433a56ee657e1c60"}, +] + +[package.dependencies] +attrs = ">=21.2" +cattrs = ">=22.2" +platformdirs = ">=2.5" +requests = ">=2.22" +url-normalize = ">=1.4" +urllib3 = ">=1.25.5" + +[package.extras] +all = ["boto3 (>=1.15)", "botocore (>=1.18)", "itsdangerous (>=2.0)", "pymongo (>=3)", "pyyaml (>=5.4)", "redis (>=3)", "ujson (>=5.4)"] +bson = ["bson (>=0.5)"] +docs = ["furo (>=2023.3,<2024.0)", "linkify-it-py (>=2.0,<3.0)", "myst-parser (>=1.0,<2.0)", "sphinx (>=5.0.2,<6.0.0)", "sphinx-autodoc-typehints (>=1.19)", "sphinx-automodapi (>=0.14)", "sphinx-copybutton (>=0.5)", "sphinx-design (>=0.2)", "sphinx-notfound-page (>=0.8)", "sphinxcontrib-apidoc (>=0.3)", "sphinxext-opengraph (>=0.6)"] +dynamodb = ["boto3 (>=1.15)", "botocore (>=1.18)"] +json = ["ujson (>=5.4)"] +mongodb = ["pymongo (>=3)"] +redis = ["redis (>=3)"] +security = ["itsdangerous (>=2.0)"] +yaml = ["pyyaml (>=5.4)"] + [[package]] name = "requests-oauthlib" version = "1.3.1" @@ -2163,6 +3173,21 @@ requests = ">=2.0.0" [package.extras] rsa = ["oauthlib[signedtoken] (>=3.0.0)"] +[[package]] +name = "requests-toolbelt" +version = "1.0.0" +description = "A utility belt for advanced users of python-requests" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "requests-toolbelt-1.0.0.tar.gz", hash = "sha256:7681a0a3d047012b5bdc0ee37d7f8f07ebe76ab08caeccfc3921ce23c88d5bc6"}, + {file = "requests_toolbelt-1.0.0-py2.py3-none-any.whl", hash = "sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06"}, +] + +[package.dependencies] +requests = ">=2.0.1,<3.0.0" + [[package]] name = "rfc3339-validator" version = "0.1.4" @@ -2192,111 +3217,111 @@ files = [ [[package]] name = "rpds-py" -version = "0.13.1" +version = "0.17.1" description = "Python bindings to Rust's persistent data structures (rpds)" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "rpds_py-0.13.1-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:83feb0f682d75a09ddc11aa37ba5c07dd9b824b22915207f6176ea458474ff75"}, - {file = "rpds_py-0.13.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fa84bbe22ffa108f91631935c28a623001e335d66e393438258501e618fb0dde"}, - {file = "rpds_py-0.13.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e04f8c76b8d5c70695b4e8f1d0b391d8ef91df00ef488c6c1ffb910176459bc6"}, - {file = "rpds_py-0.13.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:032c242a595629aacace44128f9795110513ad27217b091e834edec2fb09e800"}, - {file = "rpds_py-0.13.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91276caef95556faeb4b8f09fe4439670d3d6206fee78d47ddb6e6de837f0b4d"}, - {file = "rpds_py-0.13.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d22f2cb82e0b40e427a74a93c9a4231335bbc548aed79955dde0b64ea7f88146"}, - {file = "rpds_py-0.13.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:63c9e2794329ef070844ff9bfc012004aeddc0468dc26970953709723f76c8a5"}, - {file = "rpds_py-0.13.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c797ea56f36c6f248656f0223b11307fdf4a1886f3555eba371f34152b07677f"}, - {file = "rpds_py-0.13.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:82dbcd6463e580bcfb7561cece35046aaabeac5a9ddb775020160b14e6c58a5d"}, - {file = "rpds_py-0.13.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:736817dbbbd030a69a1faf5413a319976c9c8ba8cdcfa98c022d3b6b2e01eca6"}, - {file = "rpds_py-0.13.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:1f36a1e80ef4ed1996445698fd91e0d3e54738bf597c9995118b92da537d7a28"}, - {file = "rpds_py-0.13.1-cp310-none-win32.whl", hash = "sha256:4f13d3f6585bd07657a603780e99beda96a36c86acaba841f131e81393958336"}, - {file = "rpds_py-0.13.1-cp310-none-win_amd64.whl", hash = "sha256:545e94c84575057d3d5c62634611858dac859702b1519b6ffc58eca7fb1adfcf"}, - {file = "rpds_py-0.13.1-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:6bfe72b249264cc1ff2f3629be240d7d2fdc778d9d298087cdec8524c91cd11f"}, - {file = "rpds_py-0.13.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:edc91c50e17f5cd945d821f0f1af830522dba0c10267c3aab186dc3dbaab8def"}, - {file = "rpds_py-0.13.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2eca04a365be380ca1f8fa48b334462e19e3382c0bb7386444d8ca43aa01c481"}, - {file = "rpds_py-0.13.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3e3ac5b602fea378243f993d8b707189f9061e55ebb4e56cb9fdef8166060f28"}, - {file = "rpds_py-0.13.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dfb5d2ab183c0efe5e7b8917e4eaa2e837aacafad8a69b89aa6bc81550eed857"}, - {file = "rpds_py-0.13.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d9793d46d3e6522ae58e9321032827c9c0df1e56cbe5d3de965facb311aed6aa"}, - {file = "rpds_py-0.13.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9cd935c0220d012a27c20135c140f9cdcbc6249d5954345c81bfb714071b985c"}, - {file = "rpds_py-0.13.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:37b08df45f02ff1866043b95096cbe91ac99de05936dd09d6611987a82a3306a"}, - {file = "rpds_py-0.13.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:ad666a904212aa9a6c77da7dce9d5170008cda76b7776e6731928b3f8a0d40fa"}, - {file = "rpds_py-0.13.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:8a6ad8429340e0a4de89353447c6441329def3632e7b2293a7d6e873217d3c2b"}, - {file = "rpds_py-0.13.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:7c40851b659d958c5245c1236e34f0d065cc53dca8d978b49a032c8e0adfda6e"}, - {file = "rpds_py-0.13.1-cp311-none-win32.whl", hash = "sha256:4145172ab59b6c27695db6d78d040795f635cba732cead19c78cede74800949a"}, - {file = "rpds_py-0.13.1-cp311-none-win_amd64.whl", hash = "sha256:46a07a258bda12270de02b34c4884f200f864bba3dcd6e3a37fef36a168b859d"}, - {file = "rpds_py-0.13.1-cp312-cp312-macosx_10_7_x86_64.whl", hash = "sha256:ba4432301ad7eeb1b00848cf46fae0e5fecfd18a8cb5fdcf856c67985f79ecc7"}, - {file = "rpds_py-0.13.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d22e0660de24bd8e9ac82f4230a22a5fe4e397265709289d61d5fb333839ba50"}, - {file = "rpds_py-0.13.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76a8374b294e4ccb39ccaf11d39a0537ed107534139c00b4393ca3b542cc66e5"}, - {file = "rpds_py-0.13.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7d152ec7bb431040af2500e01436c9aa0d993f243346f0594a15755016bf0be1"}, - {file = "rpds_py-0.13.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:74a2044b870df7c9360bb3ce7e12f9ddf8e72e49cd3a353a1528cbf166ad2383"}, - {file = "rpds_py-0.13.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:960e7e460fda2d0af18c75585bbe0c99f90b8f09963844618a621b804f8c3abe"}, - {file = "rpds_py-0.13.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37f79f4f1f06cc96151f4a187528c3fd4a7e1065538a4af9eb68c642365957f7"}, - {file = "rpds_py-0.13.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cd4ea56c9542ad0091dfdef3e8572ae7a746e1e91eb56c9e08b8d0808b40f1d1"}, - {file = "rpds_py-0.13.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:0290712eb5603a725769b5d857f7cf15cf6ca93dda3128065bbafe6fdb709beb"}, - {file = "rpds_py-0.13.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0b70c1f800059c92479dc94dda41288fd6607f741f9b1b8f89a21a86428f6383"}, - {file = "rpds_py-0.13.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3dd5fb7737224e1497c886fb3ca681c15d9c00c76171f53b3c3cc8d16ccfa7fb"}, - {file = "rpds_py-0.13.1-cp312-none-win32.whl", hash = "sha256:74be3b215a5695690a0f1a9f68b1d1c93f8caad52e23242fcb8ba56aaf060281"}, - {file = "rpds_py-0.13.1-cp312-none-win_amd64.whl", hash = "sha256:f47eef55297799956464efc00c74ae55c48a7b68236856d56183fe1ddf866205"}, - {file = "rpds_py-0.13.1-cp38-cp38-macosx_10_7_x86_64.whl", hash = "sha256:e4a45ba34f904062c63049a760790c6a2fa7a4cc4bd160d8af243b12371aaa05"}, - {file = "rpds_py-0.13.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:20147996376be452cd82cd6c17701daba69a849dc143270fa10fe067bb34562a"}, - {file = "rpds_py-0.13.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42b9535aa22ab023704cfc6533e968f7e420affe802d85e956d8a7b4c0b0b5ea"}, - {file = "rpds_py-0.13.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d4fa1eeb9bea6d9b64ac91ec51ee94cc4fc744955df5be393e1c923c920db2b0"}, - {file = "rpds_py-0.13.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2b2415d5a7b7ee96aa3a54d4775c1fec140476a17ee12353806297e900eaeddc"}, - {file = "rpds_py-0.13.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:577d40a72550eac1386b77b43836151cb61ff6700adacda2ad4d883ca5a0b6f2"}, - {file = "rpds_py-0.13.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:af2d1648eb625a460eee07d3e1ea3a4a6e84a1fb3a107f6a8e95ac19f7dcce67"}, - {file = "rpds_py-0.13.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5b769396eb358d6b55dbf78f3f7ca631ca1b2fe02136faad5af74f0111b4b6b7"}, - {file = "rpds_py-0.13.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:249c8e0055ca597707d71c5ad85fd2a1c8fdb99386a8c6c257e1b47b67a9bec1"}, - {file = "rpds_py-0.13.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:fe30ef31172bdcf946502a945faad110e8fff88c32c4bec9a593df0280e64d8a"}, - {file = "rpds_py-0.13.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:2647192facf63be9ed2d7a49ceb07efe01dc6cfb083bd2cc53c418437400cb99"}, - {file = "rpds_py-0.13.1-cp38-none-win32.whl", hash = "sha256:4011d5c854aa804c833331d38a2b6f6f2fe58a90c9f615afdb7aa7cf9d31f721"}, - {file = "rpds_py-0.13.1-cp38-none-win_amd64.whl", hash = "sha256:7cfae77da92a20f56cf89739a557b76e5c6edc094f6ad5c090b9e15fbbfcd1a4"}, - {file = "rpds_py-0.13.1-cp39-cp39-macosx_10_7_x86_64.whl", hash = "sha256:e9be1f7c5f9673616f875299339984da9447a40e3aea927750c843d6e5e2e029"}, - {file = "rpds_py-0.13.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:839676475ac2ccd1532d36af3d10d290a2ca149b702ed464131e450a767550df"}, - {file = "rpds_py-0.13.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a90031658805c63fe488f8e9e7a88b260ea121ba3ee9cdabcece9c9ddb50da39"}, - {file = "rpds_py-0.13.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8ba9fbc5d6e36bfeb5292530321cc56c4ef3f98048647fabd8f57543c34174ec"}, - {file = "rpds_py-0.13.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:08832078767545c5ee12561ce980714e1e4c6619b5b1e9a10248de60cddfa1fd"}, - {file = "rpds_py-0.13.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:19f5aa7f5078d35ed8e344bcba40f35bc95f9176dddb33fc4f2084e04289fa63"}, - {file = "rpds_py-0.13.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80080972e1d000ad0341c7cc58b6855c80bd887675f92871221451d13a975072"}, - {file = "rpds_py-0.13.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:181ee352691c4434eb1c01802e9daa5edcc1007ff15023a320e2693fed6a661b"}, - {file = "rpds_py-0.13.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:d20da6b4c7aa9ee75ad0730beaba15d65157f5beeaca54a038bb968f92bf3ce3"}, - {file = "rpds_py-0.13.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:faa12a9f34671a30ea6bb027f04ec4e1fb8fa3fb3ed030893e729d4d0f3a9791"}, - {file = "rpds_py-0.13.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7cf241dbb50ea71c2e628ab2a32b5bfcd36e199152fc44e5c1edb0b773f1583e"}, - {file = "rpds_py-0.13.1-cp39-none-win32.whl", hash = "sha256:dab979662da1c9fbb464e310c0b06cb5f1d174d09a462553af78f0bfb3e01920"}, - {file = "rpds_py-0.13.1-cp39-none-win_amd64.whl", hash = "sha256:a2b3c79586636f1fa69a7bd59c87c15fca80c0d34b5c003d57f2f326e5276575"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-macosx_10_7_x86_64.whl", hash = "sha256:5967fa631d0ed9f8511dede08bc943a9727c949d05d1efac4ac82b2938024fb7"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:8308a8d49d1354278d5c068c888a58d7158a419b2e4d87c7839ed3641498790c"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0580faeb9def6d0beb7aa666294d5604e569c4e24111ada423cf9936768d95c"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2da81c1492291c1a90987d76a47c7b2d310661bf7c93a9de0511e27b796a8b46"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1c9a1dc5e898ce30e2f9c0aa57181cddd4532b22b7780549441d6429d22d3b58"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f4ae6f423cb7d1c6256b7482025ace2825728f53b7ac58bcd574de6ee9d242c2"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc3179e0815827cf963e634095ae5715ee73a5af61defbc8d6ca79f1bdae1d1d"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0d9f8930092558fd15c9e07198625efb698f7cc00b3dc311c83eeec2540226a8"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:d1d388d2f5f5a6065cf83c54dd12112b7389095669ff395e632003ae8999c6b8"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:08b335fb0c45f0a9e2478a9ece6a1bfb00b6f4c4780f9be3cf36479c5d8dd374"}, - {file = "rpds_py-0.13.1-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:d11afdc5992bbd7af60ed5eb519873690d921425299f51d80aa3099ed49f2bcc"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:8c1f6c8df23be165eb0cb78f305483d00c6827a191e3a38394c658d5b9c80bbd"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:528e2afaa56d815d2601b857644aeb395afe7e59212ab0659906dc29ae68d9a6"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df2af1180b8eeececf4f819d22cc0668bfadadfd038b19a90bd2fb2ee419ec6f"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:88956c993a20201744282362e3fd30962a9d86dc4f1dcf2bdb31fab27821b61f"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ee70ee5f4144a45a9e6169000b5b525d82673d5dab9f7587eccc92794814e7ac"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c5fd099acaee2325f01281a130a39da08d885e4dedf01b84bf156ec2737d78fe"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9656a09653b18b80764647d585750df2dff8928e03a706763ab40ec8c4872acc"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7ba239bb37663b2b4cd08e703e79e13321512dccd8e5f0e9451d9e53a6b8509a"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:3f55ae773abd96b1de25fc5c3fb356f491bd19116f8f854ba705beffc1ddc3c5"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:f4b15a163448ec79241fb2f1bc5a8ae1a4a304f7a48d948d208a2935b26bf8a5"}, - {file = "rpds_py-0.13.1-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:1a3b2583c86bbfbf417304eeb13400ce7f8725376dc7d3efbf35dc5d7052ad48"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:f1059ca9a51c936c9a8d46fbc2c9a6b4c15ab3f13a97f1ad32f024b39666ba85"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:f55601fb58f92e4f4f1d05d80c24cb77505dc42103ddfd63ddfdc51d3da46fa2"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fcfd5f91b882eedf8d9601bd21261d6ce0e61a8c66a7152d1f5df08d3f643ab1"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6574f619e8734140d96c59bfa8a6a6e7a3336820ccd1bfd95ffa610673b650a2"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a4b9d3f5c48bbe8d9e3758e498b3c34863f2c9b1ac57a4e6310183740e59c980"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cdd6f8738e1f1d9df5b1603bb03cb30e442710e5672262b95d0f9fcb4edb0dab"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8c2bf286e5d755a075e5e97ba56b3de08cccdad6b323ab0b21cc98875176b03"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b3d4b390ee70ca9263b331ccfaf9819ee20e90dfd0201a295e23eb64a005dbef"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:db8d0f0ad92f74feb61c4e4a71f1d573ef37c22ef4dc19cab93e501bfdad8cbd"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:2abd669a39be69cdfe145927c7eb53a875b157740bf1e2d49e9619fc6f43362e"}, - {file = "rpds_py-0.13.1-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:2c173f529666bab8e3f948b74c6d91afa22ea147e6ebae49a48229d9020a47c4"}, - {file = "rpds_py-0.13.1.tar.gz", hash = "sha256:264f3a5906c62b9df3a00ad35f6da1987d321a053895bd85f9d5c708de5c0fbf"}, + {file = "rpds_py-0.17.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:4128980a14ed805e1b91a7ed551250282a8ddf8201a4e9f8f5b7e6225f54170d"}, + {file = "rpds_py-0.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ff1dcb8e8bc2261a088821b2595ef031c91d499a0c1b031c152d43fe0a6ecec8"}, + {file = "rpds_py-0.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d65e6b4f1443048eb7e833c2accb4fa7ee67cc7d54f31b4f0555b474758bee55"}, + {file = "rpds_py-0.17.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a71169d505af63bb4d20d23a8fbd4c6ce272e7bce6cc31f617152aa784436f29"}, + {file = "rpds_py-0.17.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:436474f17733c7dca0fbf096d36ae65277e8645039df12a0fa52445ca494729d"}, + {file = "rpds_py-0.17.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:10162fe3f5f47c37ebf6d8ff5a2368508fe22007e3077bf25b9c7d803454d921"}, + {file = "rpds_py-0.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:720215373a280f78a1814becb1312d4e4d1077b1202a56d2b0815e95ccb99ce9"}, + {file = "rpds_py-0.17.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:70fcc6c2906cfa5c6a552ba7ae2ce64b6c32f437d8f3f8eea49925b278a61453"}, + {file = "rpds_py-0.17.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:91e5a8200e65aaac342a791272c564dffcf1281abd635d304d6c4e6b495f29dc"}, + {file = "rpds_py-0.17.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:99f567dae93e10be2daaa896e07513dd4bf9c2ecf0576e0533ac36ba3b1d5394"}, + {file = "rpds_py-0.17.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:24e4900a6643f87058a27320f81336d527ccfe503984528edde4bb660c8c8d59"}, + {file = "rpds_py-0.17.1-cp310-none-win32.whl", hash = "sha256:0bfb09bf41fe7c51413f563373e5f537eaa653d7adc4830399d4e9bdc199959d"}, + {file = "rpds_py-0.17.1-cp310-none-win_amd64.whl", hash = "sha256:20de7b7179e2031a04042e85dc463a93a82bc177eeba5ddd13ff746325558aa6"}, + {file = "rpds_py-0.17.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:65dcf105c1943cba45d19207ef51b8bc46d232a381e94dd38719d52d3980015b"}, + {file = "rpds_py-0.17.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:01f58a7306b64e0a4fe042047dd2b7d411ee82e54240284bab63e325762c1147"}, + {file = "rpds_py-0.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:071bc28c589b86bc6351a339114fb7a029f5cddbaca34103aa573eba7b482382"}, + {file = "rpds_py-0.17.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ae35e8e6801c5ab071b992cb2da958eee76340e6926ec693b5ff7d6381441745"}, + {file = "rpds_py-0.17.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:149c5cd24f729e3567b56e1795f74577aa3126c14c11e457bec1b1c90d212e38"}, + {file = "rpds_py-0.17.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e796051f2070f47230c745d0a77a91088fbee2cc0502e9b796b9c6471983718c"}, + {file = "rpds_py-0.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:60e820ee1004327609b28db8307acc27f5f2e9a0b185b2064c5f23e815f248f8"}, + {file = "rpds_py-0.17.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1957a2ab607f9added64478a6982742eb29f109d89d065fa44e01691a20fc20a"}, + {file = "rpds_py-0.17.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8587fd64c2a91c33cdc39d0cebdaf30e79491cc029a37fcd458ba863f8815383"}, + {file = "rpds_py-0.17.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:4dc889a9d8a34758d0fcc9ac86adb97bab3fb7f0c4d29794357eb147536483fd"}, + {file = "rpds_py-0.17.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:2953937f83820376b5979318840f3ee47477d94c17b940fe31d9458d79ae7eea"}, + {file = "rpds_py-0.17.1-cp311-none-win32.whl", hash = "sha256:1bfcad3109c1e5ba3cbe2f421614e70439f72897515a96c462ea657261b96518"}, + {file = "rpds_py-0.17.1-cp311-none-win_amd64.whl", hash = "sha256:99da0a4686ada4ed0f778120a0ea8d066de1a0a92ab0d13ae68492a437db78bf"}, + {file = "rpds_py-0.17.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:1dc29db3900cb1bb40353772417800f29c3d078dbc8024fd64655a04ee3c4bdf"}, + {file = "rpds_py-0.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:82ada4a8ed9e82e443fcef87e22a3eed3654dd3adf6e3b3a0deb70f03e86142a"}, + {file = "rpds_py-0.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d36b2b59e8cc6e576f8f7b671e32f2ff43153f0ad6d0201250a7c07f25d570e"}, + {file = "rpds_py-0.17.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3677fcca7fb728c86a78660c7fb1b07b69b281964673f486ae72860e13f512ad"}, + {file = "rpds_py-0.17.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:516fb8c77805159e97a689e2f1c80655c7658f5af601c34ffdb916605598cda2"}, + {file = "rpds_py-0.17.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:df3b6f45ba4515632c5064e35ca7f31d51d13d1479673185ba8f9fefbbed58b9"}, + {file = "rpds_py-0.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a967dd6afda7715d911c25a6ba1517975acd8d1092b2f326718725461a3d33f9"}, + {file = "rpds_py-0.17.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:dbbb95e6fc91ea3102505d111b327004d1c4ce98d56a4a02e82cd451f9f57140"}, + {file = "rpds_py-0.17.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:02866e060219514940342a1f84303a1ef7a1dad0ac311792fbbe19b521b489d2"}, + {file = "rpds_py-0.17.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:2528ff96d09f12e638695f3a2e0c609c7b84c6df7c5ae9bfeb9252b6fa686253"}, + {file = "rpds_py-0.17.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:bd345a13ce06e94c753dab52f8e71e5252aec1e4f8022d24d56decd31e1b9b23"}, + {file = "rpds_py-0.17.1-cp312-none-win32.whl", hash = "sha256:2a792b2e1d3038daa83fa474d559acfd6dc1e3650ee93b2662ddc17dbff20ad1"}, + {file = "rpds_py-0.17.1-cp312-none-win_amd64.whl", hash = "sha256:292f7344a3301802e7c25c53792fae7d1593cb0e50964e7bcdcc5cf533d634e3"}, + {file = "rpds_py-0.17.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:8ffe53e1d8ef2520ebcf0c9fec15bb721da59e8ef283b6ff3079613b1e30513d"}, + {file = "rpds_py-0.17.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4341bd7579611cf50e7b20bb8c2e23512a3dc79de987a1f411cb458ab670eb90"}, + {file = "rpds_py-0.17.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f4eb548daf4836e3b2c662033bfbfc551db58d30fd8fe660314f86bf8510b93"}, + {file = "rpds_py-0.17.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b686f25377f9c006acbac63f61614416a6317133ab7fafe5de5f7dc8a06d42eb"}, + {file = "rpds_py-0.17.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4e21b76075c01d65d0f0f34302b5a7457d95721d5e0667aea65e5bb3ab415c25"}, + {file = "rpds_py-0.17.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b86b21b348f7e5485fae740d845c65a880f5d1eda1e063bc59bef92d1f7d0c55"}, + {file = "rpds_py-0.17.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f175e95a197f6a4059b50757a3dca33b32b61691bdbd22c29e8a8d21d3914cae"}, + {file = "rpds_py-0.17.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1701fc54460ae2e5efc1dd6350eafd7a760f516df8dbe51d4a1c79d69472fbd4"}, + {file = "rpds_py-0.17.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:9051e3d2af8f55b42061603e29e744724cb5f65b128a491446cc029b3e2ea896"}, + {file = "rpds_py-0.17.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:7450dbd659fed6dd41d1a7d47ed767e893ba402af8ae664c157c255ec6067fde"}, + {file = "rpds_py-0.17.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:5a024fa96d541fd7edaa0e9d904601c6445e95a729a2900c5aec6555fe921ed6"}, + {file = "rpds_py-0.17.1-cp38-none-win32.whl", hash = "sha256:da1ead63368c04a9bded7904757dfcae01eba0e0f9bc41d3d7f57ebf1c04015a"}, + {file = "rpds_py-0.17.1-cp38-none-win_amd64.whl", hash = "sha256:841320e1841bb53fada91c9725e766bb25009cfd4144e92298db296fb6c894fb"}, + {file = "rpds_py-0.17.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:f6c43b6f97209e370124baf2bf40bb1e8edc25311a158867eb1c3a5d449ebc7a"}, + {file = "rpds_py-0.17.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5e7d63ec01fe7c76c2dbb7e972fece45acbb8836e72682bde138e7e039906e2c"}, + {file = "rpds_py-0.17.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:81038ff87a4e04c22e1d81f947c6ac46f122e0c80460b9006e6517c4d842a6ec"}, + {file = "rpds_py-0.17.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:810685321f4a304b2b55577c915bece4c4a06dfe38f6e62d9cc1d6ca8ee86b99"}, + {file = "rpds_py-0.17.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:25f071737dae674ca8937a73d0f43f5a52e92c2d178330b4c0bb6ab05586ffa6"}, + {file = "rpds_py-0.17.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aa5bfb13f1e89151ade0eb812f7b0d7a4d643406caaad65ce1cbabe0a66d695f"}, + {file = "rpds_py-0.17.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dfe07308b311a8293a0d5ef4e61411c5c20f682db6b5e73de6c7c8824272c256"}, + {file = "rpds_py-0.17.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a000133a90eea274a6f28adc3084643263b1e7c1a5a66eb0a0a7a36aa757ed74"}, + {file = "rpds_py-0.17.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:5d0e8a6434a3fbf77d11448c9c25b2f25244226cfbec1a5159947cac5b8c5fa4"}, + {file = "rpds_py-0.17.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:efa767c220d94aa4ac3a6dd3aeb986e9f229eaf5bce92d8b1b3018d06bed3772"}, + {file = "rpds_py-0.17.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:dbc56680ecf585a384fbd93cd42bc82668b77cb525343170a2d86dafaed2a84b"}, + {file = "rpds_py-0.17.1-cp39-none-win32.whl", hash = "sha256:270987bc22e7e5a962b1094953ae901395e8c1e1e83ad016c5cfcfff75a15a3f"}, + {file = "rpds_py-0.17.1-cp39-none-win_amd64.whl", hash = "sha256:2a7b2f2f56a16a6d62e55354dd329d929560442bd92e87397b7a9586a32e3e76"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a3264e3e858de4fc601741498215835ff324ff2482fd4e4af61b46512dd7fc83"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:f2f3b28b40fddcb6c1f1f6c88c6f3769cd933fa493ceb79da45968a21dccc920"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9584f8f52010295a4a417221861df9bea4c72d9632562b6e59b3c7b87a1522b7"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c64602e8be701c6cfe42064b71c84ce62ce66ddc6422c15463fd8127db3d8066"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:060f412230d5f19fc8c8b75f315931b408d8ebf56aec33ef4168d1b9e54200b1"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b9412abdf0ba70faa6e2ee6c0cc62a8defb772e78860cef419865917d86c7342"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9737bdaa0ad33d34c0efc718741abaafce62fadae72c8b251df9b0c823c63b22"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9f0e4dc0f17dcea4ab9d13ac5c666b6b5337042b4d8f27e01b70fae41dd65c57"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:1db228102ab9d1ff4c64148c96320d0be7044fa28bd865a9ce628ce98da5973d"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:d8bbd8e56f3ba25a7d0cf980fc42b34028848a53a0e36c9918550e0280b9d0b6"}, + {file = "rpds_py-0.17.1-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:be22ae34d68544df293152b7e50895ba70d2a833ad9566932d750d3625918b82"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:bf046179d011e6114daf12a534d874958b039342b347348a78b7cdf0dd9d6041"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:1a746a6d49665058a5896000e8d9d2f1a6acba8a03b389c1e4c06e11e0b7f40d"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f0b8bf5b8db49d8fd40f54772a1dcf262e8be0ad2ab0206b5a2ec109c176c0a4"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f7f4cb1f173385e8a39c29510dd11a78bf44e360fb75610594973f5ea141028b"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7fbd70cb8b54fe745301921b0816c08b6d917593429dfc437fd024b5ba713c58"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9bdf1303df671179eaf2cb41e8515a07fc78d9d00f111eadbe3e14262f59c3d0"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fad059a4bd14c45776600d223ec194e77db6c20255578bb5bcdd7c18fd169361"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:3664d126d3388a887db44c2e293f87d500c4184ec43d5d14d2d2babdb4c64cad"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:698ea95a60c8b16b58be9d854c9f993c639f5c214cf9ba782eca53a8789d6b19"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:c3d2010656999b63e628a3c694f23020322b4178c450dc478558a2b6ef3cb9bb"}, + {file = "rpds_py-0.17.1-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:938eab7323a736533f015e6069a7d53ef2dcc841e4e533b782c2bfb9fb12d84b"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:1e626b365293a2142a62b9a614e1f8e331b28f3ca57b9f05ebbf4cf2a0f0bdc5"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:380e0df2e9d5d5d339803cfc6d183a5442ad7ab3c63c2a0982e8c824566c5ccc"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b760a56e080a826c2e5af09002c1a037382ed21d03134eb6294812dda268c811"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5576ee2f3a309d2bb403ec292d5958ce03953b0e57a11d224c1f134feaf8c40f"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1f3c3461ebb4c4f1bbc70b15d20b565759f97a5aaf13af811fcefc892e9197ba"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:637b802f3f069a64436d432117a7e58fab414b4e27a7e81049817ae94de45d8d"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ffee088ea9b593cc6160518ba9bd319b5475e5f3e578e4552d63818773c6f56a"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:3ac732390d529d8469b831949c78085b034bff67f584559340008d0f6041a049"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:93432e747fb07fa567ad9cc7aaadd6e29710e515aabf939dfbed8046041346c6"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:7b7d9ca34542099b4e185b3c2a2b2eda2e318a7dbde0b0d83357a6d4421b5296"}, + {file = "rpds_py-0.17.1-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:0387ce69ba06e43df54e43968090f3626e231e4bc9150e4c3246947567695f68"}, + {file = "rpds_py-0.17.1.tar.gz", hash = "sha256:0210b2668f24c078307260bf88bdac9d6f1093635df5123789bfee4d8d7fc8e7"}, ] [[package]] @@ -2373,6 +3398,38 @@ files = [ {file = "ruamel.yaml.clib-0.2.8.tar.gz", hash = "sha256:beb2e0404003de9a4cab9753a8805a8fe9320ee6673136ed7f04255fe60bb512"}, ] +[[package]] +name = "schema-automator" +version = "0.4.0" +description = "Infer models, enrich with meaning for terms including enum permissible values" +category = "dev" +optional = false +python-versions = ">=3.9,<4.0" +files = [ + {file = "schema_automator-0.4.0-py3-none-any.whl", hash = "sha256:c1e07b9efc2171797d7124a30f0f9f56e6c7da0783c47165e7714c4ca7876cba"}, + {file = "schema_automator-0.4.0.tar.gz", hash = "sha256:e94b73dfbf5c632724ac1fb6f74592585a83db1ecf2e5d54b5c603d6580b89f2"}, +] + +[package.dependencies] +click-default-group = ">=1.2.4,<2.0.0" +click-log = ">=0.4.0" +funowl = ">=0.2.3" +inflect = ">=6.0.0" +jsonpatch = ">=1.32" +linkml = ">=1.6.7" +mkdocs = ">=1.2.3" +oaklib = ">=0.5.25" +pandas = ">=1.3.5" +pandera = ">=0.12.0" +psycopg2-binary = ">=2.9.2,<3.0.0" +python-dateutil = ">=2.8.2" +quantulum3 = ">=0.7.9" +requests = ">=2.26.0" +schemasheets = ">=0.1.24" +strsimpy = ">=0.2.1" +tomlkit = ">=0.11.4" +xmltodict = ">=0.13.0,<0.14.0" + [[package]] name = "schemasheets" version = "0.1.24" @@ -2392,16 +3449,121 @@ linkml = ">=1.5.0" linkml-runtime = ">=1.5.0" ontodev-cogs = ">=0.3.3,<0.4.0" +[[package]] +name = "scipy" +version = "1.12.0" +description = "Fundamental algorithms for scientific computing in Python" +category = "dev" +optional = false +python-versions = ">=3.9" +files = [ + {file = "scipy-1.12.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:78e4402e140879387187f7f25d91cc592b3501a2e51dfb320f48dfb73565f10b"}, + {file = "scipy-1.12.0-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:f5f00ebaf8de24d14b8449981a2842d404152774c1a1d880c901bf454cb8e2a1"}, + {file = "scipy-1.12.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e53958531a7c695ff66c2e7bb7b79560ffdc562e2051644c5576c39ff8efb563"}, + {file = "scipy-1.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5e32847e08da8d895ce09d108a494d9eb78974cf6de23063f93306a3e419960c"}, + {file = "scipy-1.12.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4c1020cad92772bf44b8e4cdabc1df5d87376cb219742549ef69fc9fd86282dd"}, + {file = "scipy-1.12.0-cp310-cp310-win_amd64.whl", hash = "sha256:75ea2a144096b5e39402e2ff53a36fecfd3b960d786b7efd3c180e29c39e53f2"}, + {file = "scipy-1.12.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:408c68423f9de16cb9e602528be4ce0d6312b05001f3de61fe9ec8b1263cad08"}, + {file = "scipy-1.12.0-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:5adfad5dbf0163397beb4aca679187d24aec085343755fcdbdeb32b3679f254c"}, + {file = "scipy-1.12.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c3003652496f6e7c387b1cf63f4bb720951cfa18907e998ea551e6de51a04467"}, + {file = "scipy-1.12.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b8066bce124ee5531d12a74b617d9ac0ea59245246410e19bca549656d9a40a"}, + {file = "scipy-1.12.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:8bee4993817e204d761dba10dbab0774ba5a8612e57e81319ea04d84945375ba"}, + {file = "scipy-1.12.0-cp311-cp311-win_amd64.whl", hash = "sha256:a24024d45ce9a675c1fb8494e8e5244efea1c7a09c60beb1eeb80373d0fecc70"}, + {file = "scipy-1.12.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:e7e76cc48638228212c747ada851ef355c2bb5e7f939e10952bc504c11f4e372"}, + {file = "scipy-1.12.0-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:f7ce148dffcd64ade37b2df9315541f9adad6efcaa86866ee7dd5db0c8f041c3"}, + {file = "scipy-1.12.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9c39f92041f490422924dfdb782527a4abddf4707616e07b021de33467f917bc"}, + {file = "scipy-1.12.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a7ebda398f86e56178c2fa94cad15bf457a218a54a35c2a7b4490b9f9cb2676c"}, + {file = "scipy-1.12.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:95e5c750d55cf518c398a8240571b0e0782c2d5a703250872f36eaf737751338"}, + {file = "scipy-1.12.0-cp312-cp312-win_amd64.whl", hash = "sha256:e646d8571804a304e1da01040d21577685ce8e2db08ac58e543eaca063453e1c"}, + {file = "scipy-1.12.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:913d6e7956c3a671de3b05ccb66b11bc293f56bfdef040583a7221d9e22a2e35"}, + {file = "scipy-1.12.0-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:bba1b0c7256ad75401c73e4b3cf09d1f176e9bd4248f0d3112170fb2ec4db067"}, + {file = "scipy-1.12.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:730badef9b827b368f351eacae2e82da414e13cf8bd5051b4bdfd720271a5371"}, + {file = "scipy-1.12.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6546dc2c11a9df6926afcbdd8a3edec28566e4e785b915e849348c6dd9f3f490"}, + {file = "scipy-1.12.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:196ebad3a4882081f62a5bf4aeb7326aa34b110e533aab23e4374fcccb0890dc"}, + {file = "scipy-1.12.0-cp39-cp39-win_amd64.whl", hash = "sha256:b360f1b6b2f742781299514e99ff560d1fe9bd1bff2712894b52abe528d1fd1e"}, + {file = "scipy-1.12.0.tar.gz", hash = "sha256:4bf5abab8a36d20193c698b0f1fc282c1d083c94723902c447e5d2f1780936a3"}, +] + +[package.dependencies] +numpy = ">=1.22.4,<1.29.0" + +[package.extras] +dev = ["click", "cython-lint (>=0.12.2)", "doit (>=0.36.0)", "mypy", "pycodestyle", "pydevtool", "rich-click", "ruff", "types-psutil", "typing_extensions"] +doc = ["jupytext", "matplotlib (>2)", "myst-nb", "numpydoc", "pooch", "pydata-sphinx-theme (==0.9.0)", "sphinx (!=4.1.0)", "sphinx-design (>=0.2.0)"] +test = ["asv", "gmpy2", "hypothesis", "mpmath", "pooch", "pytest", "pytest-cov", "pytest-timeout", "pytest-xdist", "scikit-umfpack", "threadpoolctl"] + +[[package]] +name = "semsimian" +version = "0.2.11" +description = "" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "semsimian-0.2.11-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:f9a5d1bef1049da4c046154b01d285e1f9a276f0cbca146432b026a1b91899cf"}, + {file = "semsimian-0.2.11-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:df4045092780e33f5fe0387554f7b71d90fc0b509de78d80ebea1d0cffa4afbc"}, + {file = "semsimian-0.2.11-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5c2b2a64f794f492afa12d0ef9d0e448e3cef5263c08d30d1feea3eebd884a5"}, + {file = "semsimian-0.2.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd3b379baef13060ac9ac1e44983b4c53cea3f4b2f79437375c504fd24b5d50d"}, + {file = "semsimian-0.2.11-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:7750a28895f38dadeb8c8a515864fbf8fa1608a311a756e91f5f91de91319dc1"}, + {file = "semsimian-0.2.11-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:f06a04a2344daaf462b18869b79abb013b32757fe9ce3cbf7181fd186b96dac1"}, + {file = "semsimian-0.2.11-cp310-none-win_amd64.whl", hash = "sha256:0b4730995a0a65e82559beee77c3a97ddf9512f51a9f944305b31d04a7b082a2"}, + {file = "semsimian-0.2.11-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:4f65162dae4e7db1af92b8413e3c7529975778a1d1edf3fbdba7bf23a13296e0"}, + {file = "semsimian-0.2.11-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:3ec8ef9eed833bd343940b507022011c490be2e56eb5d2d438ccbdd106d740ce"}, + {file = "semsimian-0.2.11-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:817cf085f7643fb95bc165e6f3f4354cbb75097927c038aa804852c004aa45fd"}, + {file = "semsimian-0.2.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:961d1f72f8b0bf24376522ab72d47633ce1f1a46141b7048ab0c1eaedd58c8f6"}, + {file = "semsimian-0.2.11-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:2e13ec990b196ed3aafd6bd8abbf8ab704b2b189dcb10171259ec04bf4f0b261"}, + {file = "semsimian-0.2.11-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a45b5fbefa163f5bddecd599626f0a46eb2b78e1437da1e35f9dcc815f46dd14"}, + {file = "semsimian-0.2.11-cp311-none-win_amd64.whl", hash = "sha256:df2fa4274fad81492aca0d6b1b5094b5d69f093d4c3b7e53a357ab35c19bc406"}, + {file = "semsimian-0.2.11-cp37-cp37m-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:c7305a26eaf529e28565b09f730000a9a91b3da23939c05e557efdacff6634b1"}, + {file = "semsimian-0.2.11-cp37-cp37m-macosx_10_12_x86_64.whl", hash = "sha256:96272b9ad6ff204cb4f1439b4e3602f926d344e09f578cebca40ff2d6cc7d114"}, + {file = "semsimian-0.2.11-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4e87de2dec9a1fd8a13bd8ccfb66067e6f11cae5c5b7ee6ecddc617688f843e3"}, + {file = "semsimian-0.2.11-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf92cc1ad21fe7e2c9d047481790f2910c722f5f476694116f51b93d3ce60e8d"}, + {file = "semsimian-0.2.11-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:f405baf1ecd2240b39fa325c57e4f87a9a1f43fac55a5850f307edc1c6f55647"}, + {file = "semsimian-0.2.11-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:c5612ddbaa18a0d406944c08940d432e3c86b06292c20f3e81f5ef379e9ecab0"}, + {file = "semsimian-0.2.11-cp37-none-win_amd64.whl", hash = "sha256:6686dcc0da6324e6bea07bc95d5448dd0820f0a64d3013c5e71325506be2cfe9"}, + {file = "semsimian-0.2.11-cp38-cp38-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:dbfd1815e53835477344e4768a3caa14af01861d3618315d58feda2ce7520531"}, + {file = "semsimian-0.2.11-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:709907e5136dfc41e0f2b7fc6374c89bf28952ffbac5f49b750957b39c8f06be"}, + {file = "semsimian-0.2.11-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7512fc3b82865d7ce76d1aba53687e40dfa81e678d2e95f70f303cbcf0356fa"}, + {file = "semsimian-0.2.11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:57c8e49340b00cacc710b213b6a2d5f21bf24f8b64fc5bf1ed827db9726024dd"}, + {file = "semsimian-0.2.11-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:cdcf6144665c1519c63e4b47d3e4a2e25fe630286da44f421ee0d79ae2d85410"}, + {file = "semsimian-0.2.11-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:f822b8f2c91e5a5137fc14eab833fc427faeee2fd29272a544541296b7279c28"}, + {file = "semsimian-0.2.11-cp38-none-win_amd64.whl", hash = "sha256:5fdf160c1808a533633c0d84aca52049e6f601bedb236c45582190da391d3ff0"}, + {file = "semsimian-0.2.11-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:ab194191e0f8ba0e2e0eab694a2a6153d245945d90e1ff154056e5f80aea38f9"}, + {file = "semsimian-0.2.11-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:5b0cf235e34e7f52c8eb0d545ef498bdd5185f6c137601e42ef7af0c6360a1c0"}, + {file = "semsimian-0.2.11-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd4c7089334213ed5fd4bd67a0171757a7721b36047778d23147021f2e2c2436"}, + {file = "semsimian-0.2.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39bec78011ddb991d91296e3ba59b22d8e4d03d2a2a239e5d3c3b5f325da6297"}, + {file = "semsimian-0.2.11-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:61f82b9717cfe55be79bcd7dfd000700fde1a218e195d7c607710e18dcfefa4c"}, + {file = "semsimian-0.2.11-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:766fe01dae2278d2dd832dd25a48e595d0cf741ce32a3d0f4e6617007d6a586f"}, + {file = "semsimian-0.2.11-cp39-none-win_amd64.whl", hash = "sha256:9b4cc029e1b353b4301d35d3fe449dc8ec214d8bd4f270ce83475933351438bc"}, +] + +[[package]] +name = "semsql" +version = "0.3.3" +description = "" +category = "dev" +optional = false +python-versions = ">=3.8,<4.0" +files = [ + {file = "semsql-0.3.3-py3-none-any.whl", hash = "sha256:7249cf1faf61dabf2605a06dd0955775e1adad2e462e3f95ebbb1b7caed0e54c"}, + {file = "semsql-0.3.3.tar.gz", hash = "sha256:af75543bbe7469b856f58653d490095527f3653c6b499e27a714c6da78f1d185"}, +] + +[package.dependencies] +click = ">=8.1.3,<9.0.0" +linkml-runtime = ">=1.2.15,<2.0.0" +SQLAlchemy-Utils = ">=0.38.2,<0.39.0" + [[package]] name = "setuptools" -version = "69.0.2" +version = "69.0.3" description = "Easily download, build, install, upgrade, and uninstall Python packages" -category = "dev" +category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "setuptools-69.0.2-py3-none-any.whl", hash = "sha256:1e8fdff6797d3865f37397be788a4e3cba233608e9b509382a2777d25ebde7f2"}, - {file = "setuptools-69.0.2.tar.gz", hash = "sha256:735896e78a4742605974de002ac60562d286fa8051a7e2299445e8e8fbb01aa6"}, + {file = "setuptools-69.0.3-py3-none-any.whl", hash = "sha256:385eb4edd9c9d5c17540511303e39a147ce2fc04bc55289c322b9e5904fe2c05"}, + {file = "setuptools-69.0.3.tar.gz", hash = "sha256:be1af57fc409f93647f2e8e4573a142ed38724b8cdd389706a867bb4efcf1e78"}, ] [package.extras] @@ -2500,71 +3662,71 @@ pandas = ["pandas (>=1.3.5)"] [[package]] name = "sqlalchemy" -version = "2.0.23" +version = "2.0.25" description = "Database Abstraction Library" category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "SQLAlchemy-2.0.23-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:638c2c0b6b4661a4fd264f6fb804eccd392745c5887f9317feb64bb7cb03b3ea"}, - {file = "SQLAlchemy-2.0.23-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e3b5036aa326dc2df50cba3c958e29b291a80f604b1afa4c8ce73e78e1c9f01d"}, - {file = "SQLAlchemy-2.0.23-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:787af80107fb691934a01889ca8f82a44adedbf5ef3d6ad7d0f0b9ac557e0c34"}, - {file = "SQLAlchemy-2.0.23-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c14eba45983d2f48f7546bb32b47937ee2cafae353646295f0e99f35b14286ab"}, - {file = "SQLAlchemy-2.0.23-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0666031df46b9badba9bed00092a1ffa3aa063a5e68fa244acd9f08070e936d3"}, - {file = "SQLAlchemy-2.0.23-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:89a01238fcb9a8af118eaad3ffcc5dedaacbd429dc6fdc43fe430d3a941ff965"}, - {file = "SQLAlchemy-2.0.23-cp310-cp310-win32.whl", hash = "sha256:cabafc7837b6cec61c0e1e5c6d14ef250b675fa9c3060ed8a7e38653bd732ff8"}, - {file = "SQLAlchemy-2.0.23-cp310-cp310-win_amd64.whl", hash = "sha256:87a3d6b53c39cd173990de2f5f4b83431d534a74f0e2f88bd16eabb5667e65c6"}, - {file = "SQLAlchemy-2.0.23-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d5578e6863eeb998980c212a39106ea139bdc0b3f73291b96e27c929c90cd8e1"}, - {file = "SQLAlchemy-2.0.23-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:62d9e964870ea5ade4bc870ac4004c456efe75fb50404c03c5fd61f8bc669a72"}, - {file = "SQLAlchemy-2.0.23-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c80c38bd2ea35b97cbf7c21aeb129dcbebbf344ee01a7141016ab7b851464f8e"}, - {file = "SQLAlchemy-2.0.23-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75eefe09e98043cff2fb8af9796e20747ae870c903dc61d41b0c2e55128f958d"}, - {file = "SQLAlchemy-2.0.23-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:bd45a5b6c68357578263d74daab6ff9439517f87da63442d244f9f23df56138d"}, - {file = "SQLAlchemy-2.0.23-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a86cb7063e2c9fb8e774f77fbf8475516d270a3e989da55fa05d08089d77f8c4"}, - {file = "SQLAlchemy-2.0.23-cp311-cp311-win32.whl", hash = "sha256:b41f5d65b54cdf4934ecede2f41b9c60c9f785620416e8e6c48349ab18643855"}, - {file = "SQLAlchemy-2.0.23-cp311-cp311-win_amd64.whl", hash = "sha256:9ca922f305d67605668e93991aaf2c12239c78207bca3b891cd51a4515c72e22"}, - {file = "SQLAlchemy-2.0.23-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d0f7fb0c7527c41fa6fcae2be537ac137f636a41b4c5a4c58914541e2f436b45"}, - {file = "SQLAlchemy-2.0.23-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7c424983ab447dab126c39d3ce3be5bee95700783204a72549c3dceffe0fc8f4"}, - {file = "SQLAlchemy-2.0.23-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f508ba8f89e0a5ecdfd3761f82dda2a3d7b678a626967608f4273e0dba8f07ac"}, - {file = "SQLAlchemy-2.0.23-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6463aa765cf02b9247e38b35853923edbf2f6fd1963df88706bc1d02410a5577"}, - {file = "SQLAlchemy-2.0.23-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:e599a51acf3cc4d31d1a0cf248d8f8d863b6386d2b6782c5074427ebb7803bda"}, - {file = "SQLAlchemy-2.0.23-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fd54601ef9cc455a0c61e5245f690c8a3ad67ddb03d3b91c361d076def0b4c60"}, - {file = "SQLAlchemy-2.0.23-cp312-cp312-win32.whl", hash = "sha256:42d0b0290a8fb0165ea2c2781ae66e95cca6e27a2fbe1016ff8db3112ac1e846"}, - {file = "SQLAlchemy-2.0.23-cp312-cp312-win_amd64.whl", hash = "sha256:227135ef1e48165f37590b8bfc44ed7ff4c074bf04dc8d6f8e7f1c14a94aa6ca"}, - {file = "SQLAlchemy-2.0.23-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:14aebfe28b99f24f8a4c1346c48bc3d63705b1f919a24c27471136d2f219f02d"}, - {file = "SQLAlchemy-2.0.23-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e983fa42164577d073778d06d2cc5d020322425a509a08119bdcee70ad856bf"}, - {file = "SQLAlchemy-2.0.23-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e0dc9031baa46ad0dd5a269cb7a92a73284d1309228be1d5935dac8fb3cae24"}, - {file = "SQLAlchemy-2.0.23-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:5f94aeb99f43729960638e7468d4688f6efccb837a858b34574e01143cf11f89"}, - {file = "SQLAlchemy-2.0.23-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:63bfc3acc970776036f6d1d0e65faa7473be9f3135d37a463c5eba5efcdb24c8"}, - {file = "SQLAlchemy-2.0.23-cp37-cp37m-win32.whl", hash = "sha256:f48ed89dd11c3c586f45e9eec1e437b355b3b6f6884ea4a4c3111a3358fd0c18"}, - {file = "SQLAlchemy-2.0.23-cp37-cp37m-win_amd64.whl", hash = "sha256:1e018aba8363adb0599e745af245306cb8c46b9ad0a6fc0a86745b6ff7d940fc"}, - {file = "SQLAlchemy-2.0.23-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:64ac935a90bc479fee77f9463f298943b0e60005fe5de2aa654d9cdef46c54df"}, - {file = "SQLAlchemy-2.0.23-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c4722f3bc3c1c2fcc3702dbe0016ba31148dd6efcd2a2fd33c1b4897c6a19693"}, - {file = "SQLAlchemy-2.0.23-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4af79c06825e2836de21439cb2a6ce22b2ca129bad74f359bddd173f39582bf5"}, - {file = "SQLAlchemy-2.0.23-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:683ef58ca8eea4747737a1c35c11372ffeb84578d3aab8f3e10b1d13d66f2bc4"}, - {file = "SQLAlchemy-2.0.23-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d4041ad05b35f1f4da481f6b811b4af2f29e83af253bf37c3c4582b2c68934ab"}, - {file = "SQLAlchemy-2.0.23-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:aeb397de65a0a62f14c257f36a726945a7f7bb60253462e8602d9b97b5cbe204"}, - {file = "SQLAlchemy-2.0.23-cp38-cp38-win32.whl", hash = "sha256:42ede90148b73fe4ab4a089f3126b2cfae8cfefc955c8174d697bb46210c8306"}, - {file = "SQLAlchemy-2.0.23-cp38-cp38-win_amd64.whl", hash = "sha256:964971b52daab357d2c0875825e36584d58f536e920f2968df8d581054eada4b"}, - {file = "SQLAlchemy-2.0.23-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:616fe7bcff0a05098f64b4478b78ec2dfa03225c23734d83d6c169eb41a93e55"}, - {file = "SQLAlchemy-2.0.23-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0e680527245895aba86afbd5bef6c316831c02aa988d1aad83c47ffe92655e74"}, - {file = "SQLAlchemy-2.0.23-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9585b646ffb048c0250acc7dad92536591ffe35dba624bb8fd9b471e25212a35"}, - {file = "SQLAlchemy-2.0.23-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4895a63e2c271ffc7a81ea424b94060f7b3b03b4ea0cd58ab5bb676ed02f4221"}, - {file = "SQLAlchemy-2.0.23-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:cc1d21576f958c42d9aec68eba5c1a7d715e5fc07825a629015fe8e3b0657fb0"}, - {file = "SQLAlchemy-2.0.23-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:967c0b71156f793e6662dd839da54f884631755275ed71f1539c95bbada9aaab"}, - {file = "SQLAlchemy-2.0.23-cp39-cp39-win32.whl", hash = "sha256:0a8c6aa506893e25a04233bc721c6b6cf844bafd7250535abb56cb6cc1368884"}, - {file = "SQLAlchemy-2.0.23-cp39-cp39-win_amd64.whl", hash = "sha256:f3420d00d2cb42432c1d0e44540ae83185ccbbc67a6054dcc8ab5387add6620b"}, - {file = "SQLAlchemy-2.0.23-py3-none-any.whl", hash = "sha256:31952bbc527d633b9479f5f81e8b9dfada00b91d6baba021a869095f1a97006d"}, - {file = "SQLAlchemy-2.0.23.tar.gz", hash = "sha256:c1bda93cbbe4aa2aa0aa8655c5aeda505cd219ff3e8da91d1d329e143e4aff69"}, + {file = "SQLAlchemy-2.0.25-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4344d059265cc8b1b1be351bfb88749294b87a8b2bbe21dfbe066c4199541ebd"}, + {file = "SQLAlchemy-2.0.25-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6f9e2e59cbcc6ba1488404aad43de005d05ca56e069477b33ff74e91b6319735"}, + {file = "SQLAlchemy-2.0.25-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:84daa0a2055df9ca0f148a64fdde12ac635e30edbca80e87df9b3aaf419e144a"}, + {file = "SQLAlchemy-2.0.25-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc8b7dabe8e67c4832891a5d322cec6d44ef02f432b4588390017f5cec186a84"}, + {file = "SQLAlchemy-2.0.25-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f5693145220517b5f42393e07a6898acdfe820e136c98663b971906120549da5"}, + {file = "SQLAlchemy-2.0.25-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:db854730a25db7c956423bb9fb4bdd1216c839a689bf9cc15fada0a7fb2f4570"}, + {file = "SQLAlchemy-2.0.25-cp310-cp310-win32.whl", hash = "sha256:14a6f68e8fc96e5e8f5647ef6cda6250c780612a573d99e4d881581432ef1669"}, + {file = "SQLAlchemy-2.0.25-cp310-cp310-win_amd64.whl", hash = "sha256:87f6e732bccd7dcf1741c00f1ecf33797383128bd1c90144ac8adc02cbb98643"}, + {file = "SQLAlchemy-2.0.25-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:342d365988ba88ada8af320d43df4e0b13a694dbd75951f537b2d5e4cb5cd002"}, + {file = "SQLAlchemy-2.0.25-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f37c0caf14b9e9b9e8f6dbc81bc56db06acb4363eba5a633167781a48ef036ed"}, + {file = "SQLAlchemy-2.0.25-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aa9373708763ef46782d10e950b49d0235bfe58facebd76917d3f5cbf5971aed"}, + {file = "SQLAlchemy-2.0.25-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d24f571990c05f6b36a396218f251f3e0dda916e0c687ef6fdca5072743208f5"}, + {file = "SQLAlchemy-2.0.25-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:75432b5b14dc2fff43c50435e248b45c7cdadef73388e5610852b95280ffd0e9"}, + {file = "SQLAlchemy-2.0.25-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:884272dcd3ad97f47702965a0e902b540541890f468d24bd1d98bcfe41c3f018"}, + {file = "SQLAlchemy-2.0.25-cp311-cp311-win32.whl", hash = "sha256:e607cdd99cbf9bb80391f54446b86e16eea6ad309361942bf88318bcd452363c"}, + {file = "SQLAlchemy-2.0.25-cp311-cp311-win_amd64.whl", hash = "sha256:7d505815ac340568fd03f719446a589162d55c52f08abd77ba8964fbb7eb5b5f"}, + {file = "SQLAlchemy-2.0.25-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0dacf67aee53b16f365c589ce72e766efaabd2b145f9de7c917777b575e3659d"}, + {file = "SQLAlchemy-2.0.25-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b801154027107461ee992ff4b5c09aa7cc6ec91ddfe50d02bca344918c3265c6"}, + {file = "SQLAlchemy-2.0.25-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:59a21853f5daeb50412d459cfb13cb82c089ad4c04ec208cd14dddd99fc23b39"}, + {file = "SQLAlchemy-2.0.25-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:29049e2c299b5ace92cbed0c1610a7a236f3baf4c6b66eb9547c01179f638ec5"}, + {file = "SQLAlchemy-2.0.25-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:b64b183d610b424a160b0d4d880995e935208fc043d0302dd29fee32d1ee3f95"}, + {file = "SQLAlchemy-2.0.25-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4f7a7d7fcc675d3d85fbf3b3828ecd5990b8d61bd6de3f1b260080b3beccf215"}, + {file = "SQLAlchemy-2.0.25-cp312-cp312-win32.whl", hash = "sha256:cf18ff7fc9941b8fc23437cc3e68ed4ebeff3599eec6ef5eebf305f3d2e9a7c2"}, + {file = "SQLAlchemy-2.0.25-cp312-cp312-win_amd64.whl", hash = "sha256:91f7d9d1c4dd1f4f6e092874c128c11165eafcf7c963128f79e28f8445de82d5"}, + {file = "SQLAlchemy-2.0.25-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:bb209a73b8307f8fe4fe46f6ad5979649be01607f11af1eb94aa9e8a3aaf77f0"}, + {file = "SQLAlchemy-2.0.25-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:798f717ae7c806d67145f6ae94dc7c342d3222d3b9a311a784f371a4333212c7"}, + {file = "SQLAlchemy-2.0.25-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5fdd402169aa00df3142149940b3bf9ce7dde075928c1886d9a1df63d4b8de62"}, + {file = "SQLAlchemy-2.0.25-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:0d3cab3076af2e4aa5693f89622bef7fa770c6fec967143e4da7508b3dceb9b9"}, + {file = "SQLAlchemy-2.0.25-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:74b080c897563f81062b74e44f5a72fa44c2b373741a9ade701d5f789a10ba23"}, + {file = "SQLAlchemy-2.0.25-cp37-cp37m-win32.whl", hash = "sha256:87d91043ea0dc65ee583026cb18e1b458d8ec5fc0a93637126b5fc0bc3ea68c4"}, + {file = "SQLAlchemy-2.0.25-cp37-cp37m-win_amd64.whl", hash = "sha256:75f99202324383d613ddd1f7455ac908dca9c2dd729ec8584c9541dd41822a2c"}, + {file = "SQLAlchemy-2.0.25-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:420362338681eec03f53467804541a854617faed7272fe71a1bfdb07336a381e"}, + {file = "SQLAlchemy-2.0.25-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7c88f0c7dcc5f99bdb34b4fd9b69b93c89f893f454f40219fe923a3a2fd11625"}, + {file = "SQLAlchemy-2.0.25-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a3be4987e3ee9d9a380b66393b77a4cd6d742480c951a1c56a23c335caca4ce3"}, + {file = "SQLAlchemy-2.0.25-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2a159111a0f58fb034c93eeba211b4141137ec4b0a6e75789ab7a3ef3c7e7e3"}, + {file = "SQLAlchemy-2.0.25-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8b8cb63d3ea63b29074dcd29da4dc6a97ad1349151f2d2949495418fd6e48db9"}, + {file = "SQLAlchemy-2.0.25-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:736ea78cd06de6c21ecba7416499e7236a22374561493b456a1f7ffbe3f6cdb4"}, + {file = "SQLAlchemy-2.0.25-cp38-cp38-win32.whl", hash = "sha256:10331f129982a19df4284ceac6fe87353ca3ca6b4ca77ff7d697209ae0a5915e"}, + {file = "SQLAlchemy-2.0.25-cp38-cp38-win_amd64.whl", hash = "sha256:c55731c116806836a5d678a70c84cb13f2cedba920212ba7dcad53260997666d"}, + {file = "SQLAlchemy-2.0.25-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:605b6b059f4b57b277f75ace81cc5bc6335efcbcc4ccb9066695e515dbdb3900"}, + {file = "SQLAlchemy-2.0.25-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:665f0a3954635b5b777a55111ababf44b4fc12b1f3ba0a435b602b6387ffd7cf"}, + {file = "SQLAlchemy-2.0.25-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ecf6d4cda1f9f6cb0b45803a01ea7f034e2f1aed9475e883410812d9f9e3cfcf"}, + {file = "SQLAlchemy-2.0.25-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c51db269513917394faec5e5c00d6f83829742ba62e2ac4fa5c98d58be91662f"}, + {file = "SQLAlchemy-2.0.25-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:790f533fa5c8901a62b6fef5811d48980adeb2f51f1290ade8b5e7ba990ba3de"}, + {file = "SQLAlchemy-2.0.25-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:1b1180cda6df7af84fe72e4530f192231b1f29a7496951db4ff38dac1687202d"}, + {file = "SQLAlchemy-2.0.25-cp39-cp39-win32.whl", hash = "sha256:555651adbb503ac7f4cb35834c5e4ae0819aab2cd24857a123370764dc7d7e24"}, + {file = "SQLAlchemy-2.0.25-cp39-cp39-win_amd64.whl", hash = "sha256:dc55990143cbd853a5d038c05e79284baedf3e299661389654551bd02a6a68d7"}, + {file = "SQLAlchemy-2.0.25-py3-none-any.whl", hash = "sha256:a86b4240e67d4753dc3092d9511886795b3c2852abe599cffe108952f7af7ac3"}, + {file = "SQLAlchemy-2.0.25.tar.gz", hash = "sha256:a2c69a7664fb2d54b8682dd774c3b54f67f84fa123cf84dda2a5f40dcaa04e08"}, ] [package.dependencies] 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.2.0" +typing-extensions = ">=4.6.0" [package.extras] aiomysql = ["aiomysql (>=0.2.0)", "greenlet (!=0.4.17)"] aioodbc = ["aioodbc", "greenlet (!=0.4.17)"] -aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing-extensions (!=3.10.0.1)"] +aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing_extensions (!=3.10.0.1)"] asyncio = ["greenlet (!=0.4.17)"] asyncmy = ["asyncmy (>=0.2.3,!=0.2.4,!=0.2.6)", "greenlet (!=0.4.17)"] mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2,!=1.1.5)"] @@ -2574,7 +3736,7 @@ mssql-pyodbc = ["pyodbc"] mypy = ["mypy (>=0.910)"] mysql = ["mysqlclient (>=1.4.0)"] mysql-connector = ["mysql-connector-python"] -oracle = ["cx-oracle (>=8)"] +oracle = ["cx_oracle (>=8)"] oracle-oracledb = ["oracledb (>=1.0.1)"] postgresql = ["psycopg2 (>=2.7)"] postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] @@ -2584,7 +3746,108 @@ postgresql-psycopg2binary = ["psycopg2-binary"] postgresql-psycopg2cffi = ["psycopg2cffi"] postgresql-psycopgbinary = ["psycopg[binary] (>=3.0.7)"] pymysql = ["pymysql"] -sqlcipher = ["sqlcipher3-binary"] +sqlcipher = ["sqlcipher3_binary"] + +[[package]] +name = "sqlalchemy-utils" +version = "0.38.3" +description = "Various utility functions for SQLAlchemy." +category = "dev" +optional = false +python-versions = "~=3.6" +files = [ + {file = "SQLAlchemy-Utils-0.38.3.tar.gz", hash = "sha256:9f9afba607a40455cf703adfa9846584bf26168a0c5a60a70063b70d65051f4d"}, + {file = "SQLAlchemy_Utils-0.38.3-py3-none-any.whl", hash = "sha256:5c13b5d08adfaa85f3d4e8ec09a75136216fad41346980d02974a70a77988bf9"}, +] + +[package.dependencies] +SQLAlchemy = ">=1.3" + +[package.extras] +arrow = ["arrow (>=0.3.4)"] +babel = ["Babel (>=1.3)"] +color = ["colour (>=0.0.4)"] +encrypted = ["cryptography (>=0.6)"] +intervals = ["intervals (>=0.7.1)"] +password = ["passlib (>=1.6,<2.0)"] +pendulum = ["pendulum (>=2.0.5)"] +phone = ["phonenumbers (>=5.9.2)"] +test = ["Jinja2 (>=2.3)", "Pygments (>=1.2)", "backports.zoneinfo", "docutils (>=0.10)", "flake8 (>=2.4.0)", "flexmock (>=0.9.7)", "isort (>=4.2.2)", "pg8000 (>=1.12.4)", "psycopg2 (>=2.5.1)", "psycopg2cffi (>=2.8.1)", "pymysql", "pyodbc", "pytest (>=2.7.1)", "python-dateutil (>=2.6)", "pytz (>=2014.2)"] +test-all = ["Babel (>=1.3)", "Jinja2 (>=2.3)", "Pygments (>=1.2)", "arrow (>=0.3.4)", "backports.zoneinfo", "colour (>=0.0.4)", "cryptography (>=0.6)", "docutils (>=0.10)", "flake8 (>=2.4.0)", "flexmock (>=0.9.7)", "furl (>=0.4.1)", "intervals (>=0.7.1)", "isort (>=4.2.2)", "passlib (>=1.6,<2.0)", "pendulum (>=2.0.5)", "pg8000 (>=1.12.4)", "phonenumbers (>=5.9.2)", "psycopg2 (>=2.5.1)", "psycopg2cffi (>=2.8.1)", "pymysql", "pyodbc", "pytest (>=2.7.1)", "python-dateutil", "python-dateutil (>=2.6)", "pytz (>=2014.2)"] +timezone = ["python-dateutil"] +url = ["furl (>=0.4.1)"] + +[[package]] +name = "sssom" +version = "0.4.3" +description = "Operations on SSSOM mapping tables" +category = "dev" +optional = false +python-versions = ">=3.8,<4.0" +files = [ + {file = "sssom-0.4.3-py3-none-any.whl", hash = "sha256:52d6dc634d059e6118f695bdb869338c18d2fce335b69e5c32f5b5a21fbb248e"}, + {file = "sssom-0.4.3.tar.gz", hash = "sha256:b339fd5518595ccc55db379726d1dfe819fa62e7abb6cfb4d633bfe9664f3e57"}, +] + +[package.dependencies] +click = ">=8.1.6" +curies = ">=0.7.3" +deprecation = ">=2.1.0,<3.0.0" +linkml-runtime = ">=1.5.5" +networkx = {version = ">=3.1", extras = ["networkx"]} +pandas = ">1.0.3" +pansql = {version = ">=0.0.1", extras = ["pansql"]} +pyyaml = ">=6.0.1,<7.0.0" +rdflib = ">=6.0.0" +scipy = {version = "*", extras = ["scipy"]} +sparqlwrapper = ">=2.0.0" +sssom-schema = ">=0.14.0" +validators = ">=0.20.0" + +[[package]] +name = "sssom-schema" +version = "0.15.0" +description = "SSSOM is a Simple Standard for Sharing Ontology Mappings." +category = "dev" +optional = false +python-versions = ">=3.7.6,<4.0.0" +files = [ + {file = "sssom_schema-0.15.0-py3-none-any.whl", hash = "sha256:0ba81a0fe76d28a2c65d65a99e0cd17d8dd08274f9735776a70c8d2f3734e901"}, + {file = "sssom_schema-0.15.0.tar.gz", hash = "sha256:35d56ba6d0350b1e07df2789aebac9c5c70b0888bf88ec3c0592c89e9c13d228"}, +] + +[package.dependencies] +linkml-runtime = "*" +mkdocs-mermaid2-plugin = ">=0.6.0,<0.7.0" + +[[package]] +name = "strenum" +version = "0.4.15" +description = "An Enum that inherits from str." +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "StrEnum-0.4.15-py3-none-any.whl", hash = "sha256:a30cda4af7cc6b5bf52c8055bc4bf4b2b6b14a93b574626da33df53cf7740659"}, + {file = "StrEnum-0.4.15.tar.gz", hash = "sha256:878fb5ab705442070e4dd1929bb5e2249511c0bcf2b0eeacf3bcd80875c82eff"}, +] + +[package.extras] +docs = ["myst-parser[linkify]", "sphinx", "sphinx-rtd-theme"] +release = ["twine"] +test = ["pylint", "pytest", "pytest-black", "pytest-cov", "pytest-pylint"] + +[[package]] +name = "strsimpy" +version = "0.2.1" +description = "A library implementing different string similarity and distance measures" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "strsimpy-0.2.1-py3-none-any.whl", hash = "sha256:d676a440d5d3dbcf5ba92d01814a03a218776ce07bd7a8185da7019e04cf9ba7"}, + {file = "strsimpy-0.2.1.tar.gz", hash = "sha256:0842eb57f7af86c882a59a1bc8721ec2580a267e563fd0503ced2972040372c9"}, +] [[package]] name = "tabulate" @@ -2603,14 +3866,14 @@ widechars = ["wcwidth"] [[package]] name = "termcolor" -version = "2.3.0" +version = "2.4.0" description = "ANSI color formatting for output in terminal" category = "dev" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "termcolor-2.3.0-py3-none-any.whl", hash = "sha256:3afb05607b89aed0ffe25202399ee0867ad4d3cb4180d98aaf8eefa6a5f7d475"}, - {file = "termcolor-2.3.0.tar.gz", hash = "sha256:b5b08f68937f138fe92f6c089b99f1e2da0ae56c52b78bf7075fd95420fd9a5a"}, + {file = "termcolor-2.4.0-py3-none-any.whl", hash = "sha256:9297c0df9c99445c2412e832e882a7884038a25617c60cea2ad69488d4040d63"}, + {file = "termcolor-2.4.0.tar.gz", hash = "sha256:aab9e56047c8ac41ed798fa36d892a37aca6b3e9159f3e0c24bc64a9b3ac7b7a"}, ] [package.extras] @@ -2628,33 +3891,45 @@ files = [ {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, ] +[[package]] +name = "tomlkit" +version = "0.11.8" +description = "Style preserving TOML library" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tomlkit-0.11.8-py3-none-any.whl", hash = "sha256:8c726c4c202bdb148667835f68d68780b9a003a9ec34167b6c673b38eff2a171"}, + {file = "tomlkit-0.11.8.tar.gz", hash = "sha256:9330fc7faa1db67b541b28e62018c17d20be733177d290a13b24c62d1614e0c3"}, +] + [[package]] name = "tox" -version = "4.11.3" +version = "4.12.1" description = "tox is a generic virtualenv management and test command line tool" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "tox-4.11.3-py3-none-any.whl", hash = "sha256:599af5e5bb0cad0148ac1558a0b66f8fff219ef88363483b8d92a81e4246f28f"}, - {file = "tox-4.11.3.tar.gz", hash = "sha256:5039f68276461fae6a9452a3b2c7295798f00a0e92edcd9a3b78ba1a73577951"}, + {file = "tox-4.12.1-py3-none-any.whl", hash = "sha256:c07ea797880a44f3c4f200ad88ad92b446b83079d4ccef89585df64cc574375c"}, + {file = "tox-4.12.1.tar.gz", hash = "sha256:61aafbeff1bd8a5af84e54ef6e8402f53c6a6066d0782336171ddfbf5362122e"}, ] [package.dependencies] -cachetools = ">=5.3.1" +cachetools = ">=5.3.2" chardet = ">=5.2" colorama = ">=0.4.6" -filelock = ">=3.12.3" -packaging = ">=23.1" -platformdirs = ">=3.10" +filelock = ">=3.13.1" +packaging = ">=23.2" +platformdirs = ">=4.1" pluggy = ">=1.3" pyproject-api = ">=1.6.1" tomli = {version = ">=2.0.1", markers = "python_version < \"3.11\""} -virtualenv = ">=20.24.3" +virtualenv = ">=20.25" [package.extras] -docs = ["furo (>=2023.8.19)", "sphinx (>=7.2.4)", "sphinx-argparse-cli (>=1.11.1)", "sphinx-autodoc-typehints (>=1.24)", "sphinx-copybutton (>=0.5.2)", "sphinx-inline-tabs (>=2023.4.21)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"] -testing = ["build[virtualenv] (>=0.10)", "covdefaults (>=2.3)", "detect-test-pollution (>=1.1.1)", "devpi-process (>=1)", "diff-cover (>=7.7)", "distlib (>=0.3.7)", "flaky (>=3.7)", "hatch-vcs (>=0.3)", "hatchling (>=1.18)", "psutil (>=5.9.5)", "pytest (>=7.4)", "pytest-cov (>=4.1)", "pytest-mock (>=3.11.1)", "pytest-xdist (>=3.3.1)", "re-assert (>=1.1)", "time-machine (>=2.12)", "wheel (>=0.41.2)"] +docs = ["furo (>=2023.9.10)", "sphinx (>=7.2.6)", "sphinx-argparse-cli (>=1.11.1)", "sphinx-autodoc-typehints (>=1.25.2)", "sphinx-copybutton (>=0.5.2)", "sphinx-inline-tabs (>=2023.4.21)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.11)"] +testing = ["build[virtualenv] (>=1.0.3)", "covdefaults (>=2.3)", "detect-test-pollution (>=1.2)", "devpi-process (>=1)", "diff-cover (>=8.0.2)", "distlib (>=0.3.8)", "flaky (>=3.7)", "hatch-vcs (>=0.4)", "hatchling (>=1.21)", "psutil (>=5.9.7)", "pytest (>=7.4.4)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)", "pytest-xdist (>=3.5)", "re-assert (>=1.1)", "time-machine (>=2.13)", "wheel (>=0.42)"] [[package]] name = "tqdm" @@ -2679,28 +3954,65 @@ telegram = ["requests"] [[package]] name = "types-python-dateutil" -version = "2.8.19.14" +version = "2.8.19.20240106" description = "Typing stubs for python-dateutil" category = "dev" optional = false -python-versions = "*" +python-versions = ">=3.8" files = [ - {file = "types-python-dateutil-2.8.19.14.tar.gz", hash = "sha256:1f4f10ac98bb8b16ade9dbee3518d9ace017821d94b057a425b069f834737f4b"}, - {file = "types_python_dateutil-2.8.19.14-py3-none-any.whl", hash = "sha256:f977b8de27787639986b4e28963263fd0e5158942b3ecef91b9335c130cb1ce9"}, + {file = "types-python-dateutil-2.8.19.20240106.tar.gz", hash = "sha256:1f8db221c3b98e6ca02ea83a58371b22c374f42ae5bbdf186db9c9a76581459f"}, + {file = "types_python_dateutil-2.8.19.20240106-py3-none-any.whl", hash = "sha256:efbbdc54590d0f16152fa103c9879c7d4a00e82078f6e2cf01769042165acaa2"}, ] [[package]] name = "typing-extensions" -version = "4.8.0" +version = "4.9.0" description = "Backported and Experimental Type Hints for Python 3.8+" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "typing_extensions-4.8.0-py3-none-any.whl", hash = "sha256:8f92fc8806f9a6b641eaa5318da32b44d401efaac0f6678c9bc448ba3605faa0"}, - {file = "typing_extensions-4.8.0.tar.gz", hash = "sha256:df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef"}, + {file = "typing_extensions-4.9.0-py3-none-any.whl", hash = "sha256:af72aea155e91adfc61c3ae9e0e342dbc0cba726d6cba4b6c72c1f34e47291cd"}, + {file = "typing_extensions-4.9.0.tar.gz", hash = "sha256:23478f88c37f27d76ac8aee6c905017a143b0b1b886c3c9f66bc2fd94f9f5783"}, ] +[[package]] +name = "typing-inspect" +version = "0.9.0" +description = "Runtime inspection utilities for typing module." +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "typing_inspect-0.9.0-py3-none-any.whl", hash = "sha256:9ee6fc59062311ef8547596ab6b955e1b8aa46242d854bfc78f4f6b0eff35f9f"}, + {file = "typing_inspect-0.9.0.tar.gz", hash = "sha256:b23fc42ff6f6ef6954e4852c1fb512cdd18dbea03134f91f856a95ccc9461f78"}, +] + +[package.dependencies] +mypy-extensions = ">=0.3.0" +typing-extensions = ">=3.7.4" + +[[package]] +name = "ucumvert" +version = "0.1.1" +description = "Python parser & interface for UCUM (Unified Code for Units of Measure)." +category = "main" +optional = false +python-versions = ">=3.8" +files = [ + {file = "ucumvert-0.1.1-py3-none-any.whl", hash = "sha256:4aeb75d978e4cc85ed269144edf4b7513640c1fec622ec50dc38189cfd27e0d6"}, + {file = "ucumvert-0.1.1.tar.gz", hash = "sha256:547911befd4afed6c5265fc613ae1d7981619e20f18998b3b8725ef916c78e23"}, +] + +[package.dependencies] +lark = "*" +pint = "*" + +[package.extras] +dev = ["openpyxl", "pydot", "ruff", "ucumvert[lint,tests]"] +lint = ["black"] +tests = ["coverage", "pytest"] + [[package]] name = "uri-template" version = "1.3.0" @@ -2728,33 +4040,72 @@ files = [ {file = "uritemplate-4.1.1.tar.gz", hash = "sha256:4346edfc5c3b79f694bccd6d6099a322bbeb628dbf2cd86eea55a456ce5124f0"}, ] +[[package]] +name = "url-normalize" +version = "1.4.3" +description = "URL normalization for Python" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +files = [ + {file = "url-normalize-1.4.3.tar.gz", hash = "sha256:d23d3a070ac52a67b83a1c59a0e68f8608d1cd538783b401bc9de2c0fac999b2"}, + {file = "url_normalize-1.4.3-py2.py3-none-any.whl", hash = "sha256:ec3c301f04e5bb676d333a7fa162fa977ad2ca04b7e652bfc9fac4e405728eed"}, +] + +[package.dependencies] +six = "*" + [[package]] name = "urllib3" -version = "2.1.0" +version = "2.2.0" description = "HTTP library with thread-safe connection pooling, file post, and more." category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "urllib3-2.1.0-py3-none-any.whl", hash = "sha256:55901e917a5896a349ff771be919f8bd99aff50b79fe58fec595eb37bbc56bb3"}, - {file = "urllib3-2.1.0.tar.gz", hash = "sha256:df7aa8afb0148fa78488e7899b2c59b5f4ffcfa82e6c54ccb9dd37c1d7b52d54"}, + {file = "urllib3-2.2.0-py3-none-any.whl", hash = "sha256:ce3711610ddce217e6d113a2732fafad960a03fd0318c91faa79481e35c11224"}, + {file = "urllib3-2.2.0.tar.gz", hash = "sha256:051d961ad0c62a94e50ecf1af379c3aba230c66c710493493560c0c223c49f20"}, ] [package.extras] brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] zstd = ["zstandard (>=0.18.0)"] +[[package]] +name = "validators" +version = "0.22.0" +description = "Python Data Validation for Humansâ„¢" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "validators-0.22.0-py3-none-any.whl", hash = "sha256:61cf7d4a62bbae559f2e54aed3b000cea9ff3e2fdbe463f51179b92c58c9585a"}, + {file = "validators-0.22.0.tar.gz", hash = "sha256:77b2689b172eeeb600d9605ab86194641670cdb73b60afd577142a9397873370"}, +] + +[package.extras] +docs-offline = ["myst-parser (>=2.0.0)", "pypandoc-binary (>=1.11)", "sphinx (>=7.1.1)"] +docs-online = ["mkdocs (>=1.5.2)", "mkdocs-git-revision-date-localized-plugin (>=1.2.0)", "mkdocs-material (>=9.2.6)", "mkdocstrings[python] (>=0.22.0)", "pyaml (>=23.7.0)"] +hooks = ["pre-commit (>=3.3.3)"] +package = ["build (>=1.0.0)", "twine (>=4.0.2)"] +runner = ["tox (>=4.11.1)"] +sast = ["bandit[toml] (>=1.7.5)"] +testing = ["pytest (>=7.4.0)"] +tooling = ["black (>=23.7.0)", "pyright (>=1.1.325)", "ruff (>=0.0.287)"] +tooling-extras = ["pyaml (>=23.7.0)", "pypandoc-binary (>=1.11)", "pytest (>=7.4.0)"] + [[package]] name = "virtualenv" -version = "20.24.7" +version = "20.25.0" description = "Virtual Python Environment builder" category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "virtualenv-20.24.7-py3-none-any.whl", hash = "sha256:a18b3fd0314ca59a2e9f4b556819ed07183b3e9a3702ecfe213f593d44f7b3fd"}, - {file = "virtualenv-20.24.7.tar.gz", hash = "sha256:69050ffb42419c91f6c1284a7b24e0475d793447e35929b488bf6a0aade39353"}, + {file = "virtualenv-20.25.0-py3-none-any.whl", hash = "sha256:4238949c5ffe6876362d9c0180fc6c3a824a7b12b80604eeb8085f2ed7460de3"}, + {file = "virtualenv-20.25.0.tar.gz", hash = "sha256:bf51c0d9c7dd63ea8e44086fa1e4fb1093a31e963b86959257378aef020e1f1b"}, ] [package.dependencies] @@ -2902,6 +4253,18 @@ files = [ {file = "wrapt-1.16.0.tar.gz", hash = "sha256:5f370f952971e7d17c7d1ead40e49f32345a7f7a5373571ef44d800d06b1899d"}, ] +[[package]] +name = "xmltodict" +version = "0.13.0" +description = "Makes working with XML feel like you are working with JSON" +category = "dev" +optional = false +python-versions = ">=3.4" +files = [ + {file = "xmltodict-0.13.0-py2.py3-none-any.whl", hash = "sha256:aa89e8fd76320154a40d19a0df04a4695fb9dc5ba977cbb68ab3e4eb225e7852"}, + {file = "xmltodict-0.13.0.tar.gz", hash = "sha256:341595a488e3e01a85a9d8911d8912fd922ede5fecc4dce437eb4b6c8d037e56"}, +] + [[package]] name = "zipp" version = "3.17.0" @@ -2924,4 +4287,4 @@ docs = [] [metadata] lock-version = "2.0" python-versions = "^3.9" -content-hash = "ee2f9dc86cc28d3fcd0b86f6bf434e419380b4ef14e9922ab981855fc035b90f" +content-hash = "ab89a72bcf22c85de28bb503bcf0afa274fb9a051b4eaddf58dfbef3dbcafa4f" diff --git a/project/excel/linkml_common.xlsx b/project/excel/linkml_common.xlsx index 0729c255979bd884d7d8d57a56a5871c7fb7c047..0e006b284583c561f97d126d16e6b2e4e4f8248b 100644 GIT binary patch literal 45894 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 I7uP@iADWjAY5)KL diff --git a/project/graphql/linkml_common.graphql b/project/graphql/linkml_common.graphql index 1c823c3..b5f590a 100644 --- a/project/graphql/linkml_common.graphql +++ b/project/graphql/linkml_common.graphql @@ -1,7 +1,27 @@ +type Agent + { + id: Uriorcurie! + name: String + type: String + subtype: String + ontologyTypes: [Concept] + description: String + } + type Any { } +type AutomatedAgent + { + id: Uriorcurie! + name: String + type: String + subtype: String + ontologyTypes: [Concept] + description: String + } + type BasicFoodType { id: Uriorcurie! @@ -43,6 +63,9 @@ type ClinicalCohortEnrollment description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration patient: Patient cohort: ClinicalCohort } @@ -73,6 +96,23 @@ type Concept description: String } +type CreativeWork + { + id: Uriorcurie! + name: String + type: String + subtype: String + ontologyTypes: [Concept] + description: String + title: String + abstract: String + rights: String + creators: [Agent] + contributors: [Agent] + contacts: [Agent] + keywords: [String] + } + type DataGenerationFromSample { id: Uriorcurie! @@ -83,16 +123,43 @@ type DataGenerationFromSample description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration usesPhysicalDevice: PhysicalDevice followsProcedure: InvestigativeProtocol partOf: Investigation } +type Dataset + { + id: Uriorcurie! + name: String + type: String + subtype: String + ontologyTypes: [Concept] + description: String + title: String + abstract: String + rights: String + creators: [Agent] + contributors: [Agent] + contacts: [Agent] + keywords: [String] + collectedAsPartOf: [Investigation] + } + type DataStructure { type: String } +type Duration + { + type: String + hasQuantityKind: QuantityKind + } + type EngineeringMaterialProcessing { id: Uriorcurie! @@ -103,6 +170,9 @@ type EngineeringMaterialProcessing description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration followsProcedure: Procedure usesPhysicalDevice: PhysicalDevice } @@ -117,6 +187,9 @@ type EngineeringProcess description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration followsProcedure: EngineeringSpecification partOf: EngineeringProcess } @@ -136,10 +209,26 @@ interface Entity type: String } +type EnvironmentalMonitoring + { + } + type EnvironmentalProcess { } +type EnvironmentalSite + { + id: Uriorcurie! + name: String + type: String + subtype: String + ontologyTypes: [Concept] + description: String + address: PostalAddress + geolocation: GeoPointLocation + } + type Event { id: Uriorcurie! @@ -150,11 +239,15 @@ type Event description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration } type FoodIngredient { type: String + hasQuantityKind: QuantityKind } type FoodProcessing @@ -167,6 +260,9 @@ type FoodProcessing description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration followsProcedure: Procedure usesPhysicalDevice: PhysicalDevice } @@ -210,6 +306,9 @@ type HealthcareConditionOccurrence description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration patient: Patient observedDuring: HealthcareEncounter } @@ -223,6 +322,9 @@ type HealthcareEncounter description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration patient: Patient provider: HealthcareProvider subtype: HealthcareEncounterClassification @@ -240,6 +342,7 @@ type HealthcareOrganization type HealthcareProvider { + type: String isPerson: Person speciality: Concept careSite: HealthcareSite @@ -247,6 +350,7 @@ type HealthcareProvider type HealthcareRole { + type: String isPerson: Person } @@ -287,6 +391,7 @@ type Investigation ontologyTypes: [Concept] description: String objectives: String + variables: [Variable] } type InvestigativeProcess @@ -299,6 +404,9 @@ type InvestigativeProcess description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration usesPhysicalDevice: PhysicalDevice followsProcedure: InvestigativeProtocol partOf: Investigation @@ -336,6 +444,9 @@ type LifeEvent description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration } interface Location @@ -352,6 +463,9 @@ type MaterialCollection description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration followsProcedure: Procedure usesPhysicalDevice: PhysicalDevice } @@ -366,6 +480,9 @@ type MaterialProcessing description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration followsProcedure: Procedure usesPhysicalDevice: PhysicalDevice } @@ -412,6 +529,7 @@ type Organization type Patient { + type: String isPerson: Person } @@ -461,6 +579,9 @@ type PlannedProcess description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration followsProcedure: Procedure usesPhysicalDevice: PhysicalDevice } @@ -498,11 +619,29 @@ type Publication subtype: String ontologyTypes: [Concept] description: String + title: String + abstract: String + rights: String + creators: [Agent] + contributors: [Agent] + contacts: [Agent] + keywords: [String] } type Quantity { type: String + hasQuantityKind: QuantityKind + } + +type QuantityKind + { + id: Uriorcurie! + name: String + type: String + subtype: String + ontologyTypes: [Concept] + description: String } type QuantityRange @@ -515,6 +654,7 @@ type QuantityRange type Ratio { type: String + hasQuantityKind: QuantityKind numerator: Quantity denominator: Quantity } @@ -531,6 +671,12 @@ type RawMaterial interface Relationship { + type: String + } + +interface Role + { + type: String } type SampleCollectionProcess @@ -543,6 +689,9 @@ type SampleCollectionProcess description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration usesPhysicalDevice: PhysicalDevice followsProcedure: InvestigativeProtocol partOf: Investigation @@ -570,19 +719,66 @@ type SampleProcessing description: String startsAt: TimePoint endsAt: TimePoint + happensAt: TimePoint + hasInterval: TemporalInterval + hasDuration: Duration followsProcedure: Procedure usesPhysicalDevice: PhysicalDevice } +type Service + { + type: String + } + type SimpleQuantity { type: String + hasQuantityKind: QuantityKind value: Float unit: UnitConcept } +type Specification + { + id: Uriorcurie! + name: String + type: String + subtype: String + ontologyTypes: [Concept] + description: String + } + +type StudyDesign + { + id: Uriorcurie! + name: String + type: String + subtype: String + ontologyTypes: [Concept] + description: String + } + +type TemporalInterval + { + type: String + startsAt: TimePoint + endsAt: TimePoint + } + +type TemporalRelationship + { + type: String + predicate: RelativeTimeEnum + relativeTo: Entity + } + type TimePoint { + type: String + startsAt: TimePoint + endsAt: TimePoint + yearValue: Integer dateValue: Date timeValue: Time datetimeValue: Datetime @@ -590,6 +786,13 @@ type TimePoint description: String } +type TimePointOrTemporalInterval + { + type: String + startsAt: TimePoint + endsAt: TimePoint + } + type UnitConcept { id: Uriorcurie! @@ -614,8 +817,3 @@ type Variable allowedUnits: [UnitConcept] } -type XProcess - { - type: String - } - diff --git a/project/jsonld/linkml_common.context.jsonld b/project/jsonld/linkml_common.context.jsonld index 411473d..d8c8e61 100644 --- a/project/jsonld/linkml_common.context.jsonld +++ b/project/jsonld/linkml_common.context.jsonld @@ -1,14 +1,26 @@ { "comments": { "description": "Auto generated by LinkML jsonld context generator", - "generation_date": "2024-01-13T18:02:29", + "generation_date": "2024-02-02T17:33:00", "source": "linkml_common.yaml" }, "@context": { + "BFO": { + "@id": "http://purl.obolibrary.org/obo/BFO_", + "@prefix": true + }, "ENVO": { "@id": "http://purl.obolibrary.org/obo/ENVO_", "@prefix": true }, + "IAO": { + "@id": "http://purl.obolibrary.org/obo/IAO_", + "@prefix": true + }, + "OBI": { + "@id": "http://purl.obolibrary.org/obo/OBI_", + "@prefix": true + }, "PATO": { "@id": "http://purl.obolibrary.org/obo/PATO_", "@prefix": true @@ -16,14 +28,21 @@ "UCUM": "http://example.org/UNKNOWN/UCUM/", "UO": "http://example.org/UNKNOWN/UO/", "biolink": "https://w3id.org/biolink/", + "dcterms": "http://purl.org/dc/terms/", "example": "https://example.org/", "fhir": "http://hl7.org/fhir/", + "fibo": "http://example.org/UNKNOWN/fibo/", + "fibo.DatesAndTimes": "https://www.omg.org/spec/Commons/DatesAndTimes/", + "fibo.QuantitiesAndUnits": "https://www.omg.org/spec/Commons/QuantitiesAndUnits/", + "fibo.commons.PartiesAndSituations": "https://spec.edmcouncil.org/fibo/ontology/FBC/ommons/PartiesAndSituations/", "linkml": "https://w3id.org/linkml/", "linkml_common": "https://w3id.org/linkml-common/", "nmdcschema": "http://example.org/UNKNOWN/nmdcschema/", "omopschema": "http://example.org/omop/", - "qudt": "http://example.org/UNKNOWN/qudt/", - "rdf": "http://example.org/UNKNOWN/rdf/", + "prov": "http://www.w3.org/ns/prov#", + "qudt": "http://qudt.org/vocab/unit/", + "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", + "rdfs": "http://www.w3.org/2000/01/rdf-schema#", "schema": "http://schema.org/", "skos": "http://www.w3.org/2004/02/skos/core#", "@vocab": "https://w3id.org/linkml-common/", @@ -49,6 +68,24 @@ "members": { "@type": "@id" }, + "contacts": { + "@type": "@id", + "@id": "schema:contactPoint" + }, + "contributors": { + "@type": "@id", + "@id": "dcterms:contributor" + }, + "creators": { + "@type": "@id", + "@id": "dcterms:creator" + }, + "keywords": { + "@id": "schema:keywords" + }, + "collected_as_part_of": { + "@type": "@id" + }, "date_value": { "@type": "xsd:date" }, @@ -89,6 +126,15 @@ "longitude": { "@type": "xsd:decimal" }, + "happens_at": { + "@type": "@id" + }, + "has_duration": { + "@type": "@id" + }, + "has_interval": { + "@type": "@id" + }, "observed_during": { "@type": "@id" }, @@ -105,6 +151,9 @@ "@type": "@id" }, "id": "@id", + "variables": { + "@type": "@id" + }, "marker_event": { "@type": "@id" }, @@ -142,6 +191,9 @@ "primary_email": { "@id": "schema:email" }, + "has_quantity_kind": { + "@type": "@id" + }, "lower_bound": { "@type": "@id" }, @@ -173,6 +225,17 @@ "@type": "@id", "@id": "rdf:subject" }, + "predicate": { + "@context": { + "@vocab": "@null", + "text": "skos:notation", + "description": "skos:prefLabel", + "meaning": "@id" + } + }, + "relative_to": { + "@type": "@id" + }, "time_value": { "@type": "xsd:time" }, @@ -187,6 +250,9 @@ "meaning": "@id" } }, + "year_value": { + "@type": "xsd:integer" + }, "Any": { "@id": "linkml:Any" }, @@ -211,6 +277,9 @@ "Ratio": { "@id": "fhir:Ratio" }, + "Role": { + "@id": "schema:Role" + }, "SimpleQuantity": { "@id": "fhir:SimpleQuantity" } diff --git a/project/jsonld/linkml_common.jsonld b/project/jsonld/linkml_common.jsonld index 6f08aa8..57cf697 100644 --- a/project/jsonld/linkml_common.jsonld +++ b/project/jsonld/linkml_common.jsonld @@ -10,6 +10,7 @@ "linkml:types", "core", "bibliographic", + "datasets", "clinicalresearch", "computational", "engineering", @@ -416,6 +417,42 @@ } ] }, + { + "name": "CaseOrControlEnum", + "definition_uri": "https://w3id.org/linkml-common/CaseOrControlEnum", + "from_schema": "https://w3id.org/linkml-common/investigations", + "permissible_values": [ + { + "text": "CASE", + "meaning": "OBI:0002492", + "title": "case role in case-control study" + }, + { + "text": "CONTROL", + "meaning": "OBI:0002493", + "title": "control role in case-control study" + } + ] + }, + { + "name": "StudyDesignEnum", + "definition_uri": "https://w3id.org/linkml-common/StudyDesignEnum", + "from_schema": "https://w3id.org/linkml-common/investigations", + "reachable_from": { + "source_nodes": [ + "OBI:0500000" + ], + "relationship_types": [ + "rdfs:subClassOf" + ] + } + }, + { + "name": "HumanLanguageCodeEnum", + "definition_uri": "https://w3id.org/linkml-common/HumanLanguageCodeEnum", + "description": "An enumeration of languages", + "from_schema": "https://w3id.org/linkml-common/social" + }, { "name": "PersonStatus", "definition_uri": "https://w3id.org/linkml-common/PersonStatus", @@ -439,6 +476,22 @@ ] } ] + }, + { + "name": "RelativeTimeEnum", + "definition_uri": "https://w3id.org/linkml-common/RelativeTimeEnum", + "from_schema": "https://w3id.org/linkml-common/time", + "permissible_values": [ + { + "text": "BEFORE" + }, + { + "text": "AFTER" + }, + { + "text": "AT_SAME_TIME_AS" + } + ] } ], "slots": [ @@ -557,9 +610,9 @@ "description": "The subject of a relationship", "from_schema": "https://w3id.org/linkml-common/core", "mappings": [ - "http://example.org/UNKNOWN/rdf/subject" + "http://www.w3.org/1999/02/22-rdf-syntax-ns#subject" ], - "slot_uri": "http://example.org/UNKNOWN/rdf/subject", + "slot_uri": "http://www.w3.org/1999/02/22-rdf-syntax-ns#subject", "range": "Any", "inlined": true, "@type": "SlotDefinition" @@ -570,9 +623,9 @@ "description": "The object of a relationship", "from_schema": "https://w3id.org/linkml-common/core", "mappings": [ - "http://example.org/UNKNOWN/rdf/object" + "http://www.w3.org/1999/02/22-rdf-syntax-ns#object" ], - "slot_uri": "http://example.org/UNKNOWN/rdf/object", + "slot_uri": "http://www.w3.org/1999/02/22-rdf-syntax-ns#object", "range": "Any", "inlined": true, "@type": "SlotDefinition" @@ -667,9 +720,11 @@ "definition_uri": "https://w3id.org/linkml-common/starts_at", "from_schema": "https://w3id.org/linkml-common/time", "slot_uri": "https://w3id.org/linkml-common/starts_at", - "owner": "Event", + "owner": "TemporalInterval", "domain_of": [ - "Event" + "Event", + "TimePointOrTemporalInterval", + "TemporalInterval" ], "range": "TimePoint", "inlined": true, @@ -680,6 +735,21 @@ "definition_uri": "https://w3id.org/linkml-common/ends_at", "from_schema": "https://w3id.org/linkml-common/time", "slot_uri": "https://w3id.org/linkml-common/ends_at", + "owner": "TemporalInterval", + "domain_of": [ + "Event", + "TimePointOrTemporalInterval", + "TemporalInterval" + ], + "range": "TimePoint", + "inlined": true, + "@type": "SlotDefinition" + }, + { + "name": "happens_at", + "definition_uri": "https://w3id.org/linkml-common/happens_at", + "from_schema": "https://w3id.org/linkml-common/time", + "slot_uri": "https://w3id.org/linkml-common/happens_at", "owner": "Event", "domain_of": [ "Event" @@ -688,6 +758,18 @@ "inlined": true, "@type": "SlotDefinition" }, + { + "name": "year_value", + "definition_uri": "https://w3id.org/linkml-common/year_value", + "from_schema": "https://w3id.org/linkml-common/time", + "slot_uri": "https://w3id.org/linkml-common/year_value", + "owner": "TimePoint", + "domain_of": [ + "TimePoint" + ], + "range": "integer", + "@type": "SlotDefinition" + }, { "name": "date_value", "definition_uri": "https://w3id.org/linkml-common/date_value", @@ -736,6 +818,32 @@ "range": "Event", "@type": "SlotDefinition" }, + { + "name": "has_interval", + "definition_uri": "https://w3id.org/linkml-common/has_interval", + "from_schema": "https://w3id.org/linkml-common/time", + "slot_uri": "https://w3id.org/linkml-common/has_interval", + "owner": "Event", + "domain_of": [ + "Event" + ], + "range": "TemporalInterval", + "inlined": true, + "@type": "SlotDefinition" + }, + { + "name": "has_duration", + "definition_uri": "https://w3id.org/linkml-common/has_duration", + "from_schema": "https://w3id.org/linkml-common/time", + "slot_uri": "https://w3id.org/linkml-common/has_duration", + "owner": "Event", + "domain_of": [ + "Event" + ], + "range": "Duration", + "inlined": true, + "@type": "SlotDefinition" + }, { "name": "mathematicalOperation__inputs", "description": "The inputs to the operation", @@ -812,6 +920,19 @@ "inlined_as_list": true, "@type": "SlotDefinition" }, + { + "name": "dataset__collected_as_part_of", + "from_schema": "https://w3id.org/linkml-common/datasets", + "slot_uri": "https://w3id.org/linkml-common/collected_as_part_of", + "multivalued": true, + "alias": "collected_as_part_of", + "owner": "Dataset", + "domain_of": [ + "Dataset" + ], + "range": "Investigation", + "@type": "SlotDefinition" + }, { "name": "clinicalCohort__definition", "from_schema": "https://w3id.org/linkml-common/clinicalresearch", @@ -1128,6 +1249,20 @@ "range": "string", "@type": "SlotDefinition" }, + { + "name": "investigation__variables", + "from_schema": "https://w3id.org/linkml-common/investigations", + "slot_uri": "https://w3id.org/linkml-common/variables", + "multivalued": true, + "alias": "variables", + "owner": "Investigation", + "domain_of": [ + "Investigation" + ], + "range": "Variable", + "inlined": true, + "@type": "SlotDefinition" + }, { "name": "investigativeProcess__follows_procedure", "from_schema": "https://w3id.org/linkml-common/investigations", @@ -1218,6 +1353,19 @@ "range": "UnitConcept", "@type": "SlotDefinition" }, + { + "name": "quantity__has_quantity_kind", + "description": "The kind of quantity", + "from_schema": "https://w3id.org/linkml-common/quantities", + "slot_uri": "https://w3id.org/linkml-common/has_quantity_kind", + "alias": "has_quantity_kind", + "owner": "Quantity", + "domain_of": [ + "Quantity" + ], + "range": "QuantityKind", + "@type": "SlotDefinition" + }, { "name": "simpleQuantity__value", "description": "The value of the quantity", @@ -1234,6 +1382,10 @@ { "name": "simpleQuantity__unit", "from_schema": "https://w3id.org/linkml-common/quantities", + "exact_mappings": [ + "http://schema.org/unitCode", + "http://qudt.org/vocab/unit/unit" + ], "slot_uri": "https://w3id.org/linkml-common/unit", "alias": "unit", "owner": "SimpleQuantity", @@ -1299,6 +1451,156 @@ "inlined": true, "@type": "SlotDefinition" }, + { + "name": "creativeWork__title", + "description": "The title of the item", + "from_schema": "https://w3id.org/linkml-common/social", + "exact_mappings": [ + "http://purl.org/dc/terms/title" + ], + "slot_uri": "https://w3id.org/linkml-common/title", + "alias": "title", + "owner": "CreativeWork", + "domain_of": [ + "CreativeWork" + ], + "range": "string", + "@type": "SlotDefinition" + }, + { + "name": "creativeWork__abstract", + "description": "A summary of the item", + "from_schema": "https://w3id.org/linkml-common/social", + "slot_uri": "https://w3id.org/linkml-common/abstract", + "alias": "abstract", + "owner": "CreativeWork", + "domain_of": [ + "CreativeWork" + ], + "range": "string", + "@type": "SlotDefinition" + }, + { + "name": "creativeWork__rights", + "description": "Information about rights held in and over the item", + "from_schema": "https://w3id.org/linkml-common/social", + "slot_uri": "https://w3id.org/linkml-common/rights", + "alias": "rights", + "owner": "CreativeWork", + "domain_of": [ + "CreativeWork" + ], + "range": "string", + "@type": "SlotDefinition" + }, + { + "name": "creativeWork__creators", + "description": "The person or organization who created the work", + "from_schema": "https://w3id.org/linkml-common/social", + "mappings": [ + "http://purl.org/dc/terms/creator" + ], + "slot_uri": "http://purl.org/dc/terms/creator", + "multivalued": true, + "alias": "creators", + "owner": "CreativeWork", + "domain_of": [ + "CreativeWork" + ], + "range": "Agent", + "@type": "SlotDefinition" + }, + { + "name": "creativeWork__contributors", + "description": "A person or organization that contributed to the creation of the work", + "from_schema": "https://w3id.org/linkml-common/social", + "mappings": [ + "http://purl.org/dc/terms/contributor" + ], + "slot_uri": "http://purl.org/dc/terms/contributor", + "multivalued": true, + "alias": "contributors", + "owner": "CreativeWork", + "domain_of": [ + "CreativeWork" + ], + "range": "Agent", + "@type": "SlotDefinition" + }, + { + "name": "creativeWork__contacts", + "description": "A contact point for a person or organization", + "from_schema": "https://w3id.org/linkml-common/social", + "mappings": [ + "http://schema.org/contactPoint" + ], + "slot_uri": "http://schema.org/contactPoint", + "multivalued": true, + "alias": "contacts", + "owner": "CreativeWork", + "domain_of": [ + "CreativeWork" + ], + "range": "Agent", + "@type": "SlotDefinition" + }, + { + "name": "creativeWork__keywords", + "description": "Keywords or tags used to describe this item", + "from_schema": "https://w3id.org/linkml-common/social", + "mappings": [ + "http://schema.org/keywords" + ], + "slot_uri": "http://schema.org/keywords", + "multivalued": true, + "alias": "keywords", + "owner": "CreativeWork", + "domain_of": [ + "CreativeWork" + ], + "range": "string", + "@type": "SlotDefinition" + }, + { + "name": "temporalRelationship__predicate", + "description": "The relationship between the two time points", + "from_schema": "https://w3id.org/linkml-common/time", + "slot_uri": "https://w3id.org/linkml-common/predicate", + "alias": "predicate", + "owner": "TemporalRelationship", + "domain_of": [ + "TemporalRelationship" + ], + "range": "RelativeTimeEnum", + "@type": "SlotDefinition" + }, + { + "name": "temporalRelationship__relative_to", + "from_schema": "https://w3id.org/linkml-common/time", + "slot_uri": "https://w3id.org/linkml-common/relative_to", + "alias": "relative_to", + "owner": "TemporalRelationship", + "domain_of": [ + "TemporalRelationship" + ], + "range": "Entity", + "inlined": true, + "any_of": [ + { + "range": "TimePoint", + "@type": "AnonymousSlotExpression" + }, + { + "range": "TemporalInterval", + "@type": "AnonymousSlotExpression" + }, + { + "range": "Event", + "@type": "AnonymousSlotExpression" + } + ], + "@type": "SlotDefinition" + }, { "name": "plannedProcess__follows_procedure", "from_schema": "https://w3id.org/linkml-common/plannedprocess", @@ -1531,11 +1833,37 @@ "class_uri": "http://schema.org/Intangible", "@type": "ClassDefinition" }, + { + "name": "Role", + "definition_uri": "https://w3id.org/linkml-common/Role", + "from_schema": "https://w3id.org/linkml-common/core", + "mappings": [ + "schema:Role" + ], + "close_mappings": [ + "BFO:0000023" + ], + "is_a": "Intangible", + "abstract": true, + "slots": [ + "type" + ], + "slot_usage": {}, + "class_uri": "http://schema.org/Role", + "@type": "ClassDefinition" + }, { "name": "Relationship", "definition_uri": "https://w3id.org/linkml-common/Relationship", "from_schema": "https://w3id.org/linkml-common/core", + "close_mappings": [ + "rdfs:Statement" + ], + "is_a": "Intangible", "abstract": true, + "slots": [ + "type" + ], "slot_usage": {}, "class_uri": "https://w3id.org/linkml-common/Relationship", "@type": "ClassDefinition" @@ -1572,10 +1900,13 @@ "@type": "ClassDefinition" }, { - "name": "Procedure", - "definition_uri": "https://w3id.org/linkml-common/Procedure", - "description": "A canonical series of actions conducted in a certain order or manner", + "name": "Specification", + "definition_uri": "https://w3id.org/linkml-common/Specification", + "description": "A specification of a thing", "from_schema": "https://w3id.org/linkml-common/core", + "exact_mappings": [ + "IAO:0000104" + ], "is_a": "NamedThing", "slots": [ "id", @@ -1586,20 +1917,25 @@ "description" ], "slot_usage": {}, - "class_uri": "https://w3id.org/linkml-common/Procedure", + "class_uri": "https://w3id.org/linkml-common/Specification", "@type": "ClassDefinition" }, { - "name": "XProcess", - "definition_uri": "https://w3id.org/linkml-common/XProcess", - "description": "A series of actions or steps taken in order to achieve a particular end", + "name": "Procedure", + "definition_uri": "https://w3id.org/linkml-common/Procedure", + "description": "A canonical series of actions conducted in a certain order or manner", "from_schema": "https://w3id.org/linkml-common/core", - "is_a": "Entity", + "is_a": "Specification", "slots": [ - "type" + "id", + "name", + "type", + "subtype", + "ontology_types", + "description" ], "slot_usage": {}, - "class_uri": "https://w3id.org/linkml-common/XProcess", + "class_uri": "https://w3id.org/linkml-common/Procedure", "@type": "ClassDefinition" }, { @@ -1686,22 +2022,63 @@ "name": "Publication", "definition_uri": "https://w3id.org/linkml-common/Publication", "from_schema": "https://w3id.org/linkml-common/financial", - "is_a": "NamedThing", + "is_a": "CreativeWork", "slots": [ "id", "name", "type", "subtype", "ontology_types", - "description" + "description", + "creativeWork__title", + "creativeWork__abstract", + "creativeWork__rights", + "creativeWork__creators", + "creativeWork__contributors", + "creativeWork__contacts", + "creativeWork__keywords" ], "slot_usage": {}, "class_uri": "https://w3id.org/linkml-common/Publication", "@type": "ClassDefinition" }, + { + "name": "Dataset", + "definition_uri": "https://w3id.org/linkml-common/Dataset", + "from_schema": "https://w3id.org/linkml-common/datasets", + "is_a": "CreativeWork", + "slots": [ + "id", + "name", + "type", + "subtype", + "ontology_types", + "description", + "creativeWork__title", + "creativeWork__abstract", + "creativeWork__rights", + "creativeWork__creators", + "creativeWork__contributors", + "creativeWork__contacts", + "creativeWork__keywords", + "dataset__collected_as_part_of" + ], + "slot_usage": {}, + "attributes": [ + { + "name": "collected_as_part_of", + "multivalued": true, + "range": "Investigation", + "@type": "SlotDefinition" + } + ], + "class_uri": "https://w3id.org/linkml-common/Dataset", + "@type": "ClassDefinition" + }, { "name": "ClinicalCohort", "definition_uri": "https://w3id.org/linkml-common/ClinicalCohort", + "description": "A group of patients who share a common set of characteristics", "from_schema": "https://w3id.org/linkml-common/clinicalresearch", "is_a": "NamedThing", "slots": [ @@ -1727,6 +2104,7 @@ { "name": "ClinicalCohortDefinition", "definition_uri": "https://w3id.org/linkml-common/ClinicalCohortDefinition", + "description": "A definition of a clinical cohort", "from_schema": "https://w3id.org/linkml-common/clinicalresearch", "exact_mappings": [ "omopschema:COHORT_DEFINITION" @@ -1747,6 +2125,7 @@ { "name": "ClinicalCohortEnrollment", "definition_uri": "https://w3id.org/linkml-common/ClinicalCohortEnrollment", + "description": "An event relating a patient to a clinical cohort", "from_schema": "https://w3id.org/linkml-common/clinicalresearch", "exact_mappings": [ "omopschema:COHORT" @@ -1761,6 +2140,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "clinicalCohortEnrollment__patient", "clinicalCohortEnrollment__cohort" ], @@ -1840,6 +2222,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "engineeringProcess__follows_procedure", "engineeringProcess__part_of" ], @@ -1873,6 +2258,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "plannedProcess__follows_procedure", "plannedProcess__uses_physical_device" ], @@ -1880,6 +2268,26 @@ "class_uri": "https://w3id.org/linkml-common/EngineeringMaterialProcessing", "@type": "ClassDefinition" }, + { + "name": "EnvironmentalSite", + "definition_uri": "https://w3id.org/linkml-common/EnvironmentalSite", + "description": "A location or site that is the subject of environmental monitoring", + "from_schema": "https://w3id.org/linkml-common/environmental", + "is_a": "Place", + "slots": [ + "id", + "name", + "type", + "subtype", + "ontology_types", + "description", + "address", + "geolocation" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml-common/EnvironmentalSite", + "@type": "ClassDefinition" + }, { "name": "EnvironmentalProcess", "definition_uri": "https://w3id.org/linkml-common/EnvironmentalProcess", @@ -1891,6 +2299,15 @@ "class_uri": "https://w3id.org/linkml-common/EnvironmentalProcess", "@type": "ClassDefinition" }, + { + "name": "EnvironmentalMonitoring", + "definition_uri": "https://w3id.org/linkml-common/EnvironmentalMonitoring", + "from_schema": "https://w3id.org/linkml-common/environmental", + "is_a": "EnvironmentalProcess", + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml-common/EnvironmentalMonitoring", + "@type": "ClassDefinition" + }, { "name": "FoodRecipe", "definition_uri": "https://w3id.org/linkml-common/FoodRecipe", @@ -1930,7 +2347,8 @@ "from_schema": "https://w3id.org/linkml-common/foods", "is_a": "Quantity", "slots": [ - "type" + "type", + "quantity__has_quantity_kind" ], "slot_usage": {}, "class_uri": "https://w3id.org/linkml-common/FoodIngredient", @@ -1950,6 +2368,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "plannedProcess__follows_procedure", "plannedProcess__uses_physical_device" ], @@ -1994,6 +2415,9 @@ { "name": "CompositeFoodType", "definition_uri": "https://w3id.org/linkml-common/CompositeFoodType", + "implements": [ + "linkml_common:Composable" + ], "from_schema": "https://w3id.org/linkml-common/foods", "is_a": "FoodTypeConcept", "slots": [ @@ -2193,6 +2617,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "healthcareEncounter__patient", "healthcareEncounter__provider", "HealthcareEncounter_subtype" @@ -2234,7 +2661,9 @@ "name": "HealthcareRole", "definition_uri": "https://w3id.org/linkml-common/HealthcareRole", "from_schema": "https://w3id.org/linkml-common/healthcare", + "is_a": "Role", "slots": [ + "type", "healthcareRole__is_person" ], "slot_usage": {}, @@ -2254,6 +2683,7 @@ "from_schema": "https://w3id.org/linkml-common/healthcare", "is_a": "HealthcareRole", "slots": [ + "type", "healthcareRole__is_person", "healthcareProvider__speciality", "healthcareProvider__care_site" @@ -2291,6 +2721,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "healthcareConditionOccurrence__patient", "healthcareConditionOccurrence__observed_during" ], @@ -2319,6 +2752,7 @@ "from_schema": "https://w3id.org/linkml-common/healthcare", "is_a": "HealthcareRole", "slots": [ + "type", "healthcareRole__is_person" ], "slot_usage": {}, @@ -2340,7 +2774,8 @@ "subtype", "ontology_types", "description", - "investigation__objectives" + "investigation__objectives", + "investigation__variables" ], "slot_usage": {}, "attributes": [ @@ -2348,6 +2783,12 @@ "name": "objectives", "range": "string", "@type": "SlotDefinition" + }, + { + "name": "variables", + "multivalued": true, + "range": "Variable", + "@type": "SlotDefinition" } ], "class_uri": "https://w3id.org/linkml-common/Investigation", @@ -2370,6 +2811,23 @@ "class_uri": "https://w3id.org/linkml-common/InvestigativeProtocol", "@type": "ClassDefinition" }, + { + "name": "StudyDesign", + "definition_uri": "https://w3id.org/linkml-common/StudyDesign", + "from_schema": "https://w3id.org/linkml-common/investigations", + "is_a": "Procedure", + "slots": [ + "id", + "name", + "type", + "subtype", + "ontology_types", + "description" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml-common/StudyDesign", + "@type": "ClassDefinition" + }, { "name": "SampleMaterial", "definition_uri": "https://w3id.org/linkml-common/SampleMaterial", @@ -2401,6 +2859,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "plannedProcess__uses_physical_device", "investigativeProcess__follows_procedure", "investigativeProcess__part_of" @@ -2438,6 +2899,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "plannedProcess__uses_physical_device", "investigativeProcess__follows_procedure", "investigativeProcess__part_of", @@ -2474,6 +2938,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "plannedProcess__follows_procedure", "plannedProcess__uses_physical_device" ], @@ -2495,6 +2962,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "plannedProcess__uses_physical_device", "investigativeProcess__follows_procedure", "investigativeProcess__part_of" @@ -2553,6 +3023,27 @@ "class_uri": "https://w3id.org/linkml-common/Variable", "@type": "ClassDefinition" }, + { + "name": "QuantityKind", + "definition_uri": "https://w3id.org/linkml-common/QuantityKind", + "from_schema": "https://w3id.org/linkml-common/quantities", + "exact_mappings": [ + "qudt:QuantityKind", + "fibo.QuantitiesAndUnits:ScalarQuantity" + ], + "is_a": "Concept", + "slots": [ + "id", + "name", + "type", + "subtype", + "ontology_types", + "description" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml-common/QuantityKind", + "@type": "ClassDefinition" + }, { "name": "Quantity", "definition_uri": "https://w3id.org/linkml-common/Quantity", @@ -2560,11 +3051,23 @@ "mappings": [ "fhir:Quantity" ], + "exact_mappings": [ + "schema:Quantity" + ], "is_a": "Intangible", "slots": [ - "type" + "type", + "quantity__has_quantity_kind" ], "slot_usage": {}, + "attributes": [ + { + "name": "has_quantity_kind", + "description": "The kind of quantity", + "range": "QuantityKind", + "@type": "SlotDefinition" + } + ], "class_uri": "http://hl7.org/fhir/Quantity", "union_of": [ "Quantity", @@ -2581,9 +3084,13 @@ "mappings": [ "fhir:SimpleQuantity" ], + "exact_mappings": [ + "fibo:ScalarQuantityValue" + ], "is_a": "Quantity", "slots": [ "type", + "quantity__has_quantity_kind", "simpleQuantity__value", "simpleQuantity__unit" ], @@ -2597,6 +3104,10 @@ }, { "name": "unit", + "exact_mappings": [ + "schema:unitCode", + "qudt:unit" + ], "range": "UnitConcept", "@type": "SlotDefinition" } @@ -2615,6 +3126,7 @@ "is_a": "Quantity", "slots": [ "type", + "quantity__has_quantity_kind", "ratio__numerator", "ratio__denominator" ], @@ -2706,12 +3218,37 @@ "class_uri": "https://w3id.org/linkml-common/UnitConcept", "@type": "ClassDefinition" }, + { + "name": "Agent", + "definition_uri": "https://w3id.org/linkml-common/Agent", + "description": "Represents an Agent", + "from_schema": "https://w3id.org/linkml-common/social", + "exact_mappings": [ + "prov:Agent", + "fibo.commons.PartiesAndSituations:Agent" + ], + "is_a": "NamedThing", + "slots": [ + "id", + "name", + "type", + "subtype", + "ontology_types", + "description" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml-common/Agent", + "@type": "ClassDefinition" + }, { "name": "Person", "definition_uri": "https://w3id.org/linkml-common/Person", "description": "Represents a Person", "from_schema": "https://w3id.org/linkml-common/social", - "is_a": "NamedThing", + "exact_mappings": [ + "schema:Person" + ], + "is_a": "Agent", "slots": [ "id", "name", @@ -2733,7 +3270,10 @@ "definition_uri": "https://w3id.org/linkml-common/Organization", "description": "Represents an Organization", "from_schema": "https://w3id.org/linkml-common/social", - "is_a": "NamedThing", + "exact_mappings": [ + "schema:Organization" + ], + "is_a": "Agent", "slots": [ "id", "name", @@ -2746,6 +3286,24 @@ "class_uri": "https://w3id.org/linkml-common/Organization", "@type": "ClassDefinition" }, + { + "name": "AutomatedAgent", + "definition_uri": "https://w3id.org/linkml-common/AutomatedAgent", + "description": "Represents an Automated Agent", + "from_schema": "https://w3id.org/linkml-common/social", + "is_a": "Agent", + "slots": [ + "id", + "name", + "type", + "subtype", + "ontology_types", + "description" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml-common/AutomatedAgent", + "@type": "ClassDefinition" + }, { "name": "LifeEvent", "definition_uri": "https://w3id.org/linkml-common/LifeEvent", @@ -2759,12 +3317,114 @@ "ontology_types", "description", "starts_at", - "ends_at" + "ends_at", + "happens_at", + "has_interval", + "has_duration" ], "slot_usage": {}, "class_uri": "https://w3id.org/linkml-common/LifeEvent", "@type": "ClassDefinition" }, + { + "name": "CreativeWork", + "definition_uri": "https://w3id.org/linkml-common/CreativeWork", + "description": "The most generic kind of creative work, including books, movies, photographs, software programs, etc.", + "from_schema": "https://w3id.org/linkml-common/social", + "exact_mappings": [ + "schema:CreativeWork" + ], + "is_a": "NamedThing", + "slots": [ + "id", + "name", + "type", + "subtype", + "ontology_types", + "description", + "creativeWork__title", + "creativeWork__abstract", + "creativeWork__rights", + "creativeWork__creators", + "creativeWork__contributors", + "creativeWork__contacts", + "creativeWork__keywords" + ], + "slot_usage": {}, + "attributes": [ + { + "name": "title", + "description": "The title of the item", + "exact_mappings": [ + "dcterms:title" + ], + "range": "string", + "@type": "SlotDefinition" + }, + { + "name": "abstract", + "description": "A summary of the item", + "range": "string", + "@type": "SlotDefinition" + }, + { + "name": "rights", + "description": "Information about rights held in and over the item", + "range": "string", + "@type": "SlotDefinition" + }, + { + "name": "creators", + "description": "The person or organization who created the work", + "slot_uri": "dcterms:creator", + "multivalued": true, + "range": "Agent", + "@type": "SlotDefinition" + }, + { + "name": "contributors", + "description": "A person or organization that contributed to the creation of the work", + "slot_uri": "dcterms:contributor", + "multivalued": true, + "range": "Agent", + "@type": "SlotDefinition" + }, + { + "name": "contacts", + "description": "A contact point for a person or organization", + "slot_uri": "schema:contactPoint", + "multivalued": true, + "range": "Agent", + "@type": "SlotDefinition" + }, + { + "name": "keywords", + "description": "Keywords or tags used to describe this item", + "slot_uri": "schema:keywords", + "multivalued": true, + "range": "string", + "@type": "SlotDefinition" + } + ], + "class_uri": "https://w3id.org/linkml-common/CreativeWork", + "@type": "ClassDefinition" + }, + { + "name": "Service", + "definition_uri": "https://w3id.org/linkml-common/Service", + "description": "A service provided by an organization", + "from_schema": "https://w3id.org/linkml-common/social", + "exact_mappings": [ + "schema:Service" + ], + "is_a": "Intangible", + "slots": [ + "type" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml-common/Service", + "@type": "ClassDefinition" + }, { "name": "Event", "definition_uri": "https://w3id.org/linkml-common/Event", @@ -2779,17 +3439,58 @@ "ontology_types", "description", "starts_at", - "ends_at" + "ends_at", + "happens_at", + "has_interval", + "has_duration" ], "slot_usage": {}, "class_uri": "https://w3id.org/linkml-common/Event", "@type": "ClassDefinition" }, + { + "name": "TimePointOrTemporalInterval", + "definition_uri": "https://w3id.org/linkml-common/TimePointOrTemporalInterval", + "from_schema": "https://w3id.org/linkml-common/time", + "is_a": "Intangible", + "slots": [ + "type", + "starts_at", + "ends_at" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml-common/TimePointOrTemporalInterval", + "@type": "ClassDefinition" + }, + { + "name": "TemporalInterval", + "definition_uri": "https://w3id.org/linkml-common/TemporalInterval", + "description": "A period of time", + "from_schema": "https://w3id.org/linkml-common/time", + "is_a": "TimePointOrTemporalInterval", + "slots": [ + "type", + "starts_at", + "ends_at" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml-common/TemporalInterval", + "@type": "ClassDefinition" + }, { "name": "TimePoint", "definition_uri": "https://w3id.org/linkml-common/TimePoint", + "description": "A point in time. Can be fully specified, or specified in relative terms.", "from_schema": "https://w3id.org/linkml-common/time", + "exact_mappings": [ + "fibo.DatesAndTimes:TimeInstant" + ], + "is_a": "TimePointOrTemporalInterval", "slots": [ + "type", + "starts_at", + "ends_at", + "year_value", "date_value", "time_value", "datetime_value", @@ -2800,10 +3501,70 @@ "class_uri": "https://w3id.org/linkml-common/TimePoint", "@type": "ClassDefinition" }, + { + "name": "Duration", + "definition_uri": "https://w3id.org/linkml-common/Duration", + "description": "A length of time", + "from_schema": "https://w3id.org/linkml-common/time", + "is_a": "Quantity", + "slots": [ + "type", + "quantity__has_quantity_kind" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml-common/Duration", + "@type": "ClassDefinition" + }, + { + "name": "TemporalRelationship", + "definition_uri": "https://w3id.org/linkml-common/TemporalRelationship", + "description": "A relationship to another time point", + "from_schema": "https://w3id.org/linkml-common/time", + "is_a": "Relationship", + "slots": [ + "type", + "temporalRelationship__predicate", + "temporalRelationship__relative_to" + ], + "slot_usage": {}, + "attributes": [ + { + "name": "predicate", + "description": "The relationship between the two time points", + "range": "RelativeTimeEnum", + "@type": "SlotDefinition" + }, + { + "name": "relative_to", + "range": "Entity", + "any_of": [ + { + "range": "TimePoint", + "@type": "AnonymousSlotExpression" + }, + { + "range": "TemporalInterval", + "@type": "AnonymousSlotExpression" + }, + { + "range": "Event", + "@type": "AnonymousSlotExpression" + } + ], + "@type": "SlotDefinition" + } + ], + "class_uri": "https://w3id.org/linkml-common/TemporalRelationship", + "@type": "ClassDefinition" + }, { "name": "PlannedProcess", "definition_uri": "https://w3id.org/linkml-common/PlannedProcess", + "description": "A process that follows a defined procedure or plan", "from_schema": "https://w3id.org/linkml-common/plannedprocess", + "exact_mappings": [ + "OBI:0000011" + ], "is_a": "Event", "slots": [ "id", @@ -2814,6 +3575,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "plannedProcess__follows_procedure", "plannedProcess__uses_physical_device" ], @@ -2847,6 +3611,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "plannedProcess__follows_procedure", "plannedProcess__uses_physical_device" ], @@ -2868,6 +3635,9 @@ "description", "starts_at", "ends_at", + "happens_at", + "has_interval", + "has_duration", "plannedProcess__follows_procedure", "plannedProcess__uses_physical_device" ], @@ -2878,15 +3648,16 @@ ], "metamodel_version": "1.7.0", "source_file": "linkml_common.yaml", - "source_file_date": "2024-01-11T17:31:02", - "source_file_size": 736, - "generation_date": "2024-01-13T18:02:36", + "source_file_date": "2024-02-02T15:51:52", + "source_file_size": 749, + "generation_date": "2024-02-02T17:33:01", "@type": "SchemaDefinition", "@context": [ "project/jsonld/linkml_common.context.jsonld", "https://w3id.org/linkml/types.context.jsonld", "core.context.jsonld", "bibliographic.context.jsonld", + "datasets.context.jsonld", "clinicalresearch.context.jsonld", "computational.context.jsonld", "engineering.context.jsonld", diff --git a/project/jsonschema/linkml_common.schema.json b/project/jsonschema/linkml_common.schema.json index 3797c36..9ff7379 100644 --- a/project/jsonschema/linkml_common.schema.json +++ b/project/jsonschema/linkml_common.schema.json @@ -1,5 +1,45 @@ { "$defs": { + "Agent": { + "additionalProperties": false, + "description": "Represents an Agent", + "properties": { + "description": { + "description": "A human-readable description for a thing", + "type": "string" + }, + "id": { + "description": "A unique identifier for a thing", + "type": "string" + }, + "name": { + "description": "A human-readable name for a thing", + "type": "string" + }, + "ontology_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "subtype": { + "description": "An enum with a more specific type", + "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "Agent" + ], + "type": "string" + } + }, + "required": [ + "id" + ], + "title": "Agent", + "type": "object" + }, "Any": { "additionalProperties": true, "description": "", @@ -12,6 +52,46 @@ "string" ] }, + "AutomatedAgent": { + "additionalProperties": false, + "description": "Represents an Automated Agent", + "properties": { + "description": { + "description": "A human-readable description for a thing", + "type": "string" + }, + "id": { + "description": "A unique identifier for a thing", + "type": "string" + }, + "name": { + "description": "A human-readable name for a thing", + "type": "string" + }, + "ontology_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "subtype": { + "description": "An enum with a more specific type", + "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "AutomatedAgent" + ], + "type": "string" + } + }, + "required": [ + "id" + ], + "title": "AutomatedAgent", + "type": "object" + }, "BasicFoodType": { "additionalProperties": false, "description": "", @@ -52,9 +132,18 @@ "title": "BasicFoodType", "type": "object" }, + "CaseOrControlEnum": { + "description": "", + "enum": [ + "CASE", + "CONTROL" + ], + "title": "CaseOrControlEnum", + "type": "string" + }, "ClinicalCohort": { "additionalProperties": false, - "description": "", + "description": "A group of patients who share a common set of characteristics", "properties": { "definition": { "type": "string" @@ -97,7 +186,7 @@ }, "ClinicalCohortDefinition": { "additionalProperties": false, - "description": "", + "description": "A definition of a clinical cohort", "properties": { "description": { "description": "A human-readable description for a thing", @@ -137,7 +226,7 @@ }, "ClinicalCohortEnrollment": { "additionalProperties": false, - "description": "", + "description": "An event relating a patient to a clinical cohort", "properties": { "cohort": { "type": "string" @@ -149,6 +238,15 @@ "ends_at": { "$ref": "#/$defs/TimePoint" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -204,9 +302,6 @@ { "$ref": "#/$defs/Observation" }, - { - "$ref": "#/$defs/XProcess" - }, { "$ref": "#/$defs/Variable" }, @@ -216,6 +311,9 @@ { "$ref": "#/$defs/Measurement" }, + { + "$ref": "#/$defs/TimePointOrTemporalInterval" + }, { "$ref": "#/$defs/Quantity" }, @@ -225,9 +323,33 @@ { "$ref": "#/$defs/Collection" }, + { + "$ref": "#/$defs/Service" + }, { "$ref": "#/$defs/DataStructure" }, + { + "$ref": "#/$defs/FinancialProduct" + }, + { + "$ref": "#/$defs/FinancialAccount" + }, + { + "$ref": "#/$defs/TemporalRelationship" + }, + { + "$ref": "#/$defs/HealthcareRole" + }, + { + "$ref": "#/$defs/HealthcareProvider" + }, + { + "$ref": "#/$defs/Patient" + }, + { + "$ref": "#/$defs/Duration" + }, { "$ref": "#/$defs/SimpleQuantity" }, @@ -240,6 +362,12 @@ { "$ref": "#/$defs/MoneyQuantity" }, + { + "$ref": "#/$defs/TemporalInterval" + }, + { + "$ref": "#/$defs/TimePoint" + }, { "$ref": "#/$defs/Event" }, @@ -253,13 +381,13 @@ "$ref": "#/$defs/PhysicalDevice" }, { - "$ref": "#/$defs/Procedure" + "$ref": "#/$defs/Specification" }, { - "$ref": "#/$defs/Person" + "$ref": "#/$defs/Agent" }, { - "$ref": "#/$defs/Organization" + "$ref": "#/$defs/CreativeWork" }, { "$ref": "#/$defs/Investigation" @@ -279,27 +407,51 @@ { "$ref": "#/$defs/ClinicalCohortDefinition" }, + { + "$ref": "#/$defs/HealthcareSite" + }, + { + "$ref": "#/$defs/Landform" + }, + { + "$ref": "#/$defs/EnvironmentalSite" + }, + { + "$ref": "#/$defs/Dataset" + }, { "$ref": "#/$defs/Publication" }, { - "$ref": "#/$defs/HealthcareSite" + "$ref": "#/$defs/Person" }, { - "$ref": "#/$defs/Landform" + "$ref": "#/$defs/Organization" + }, + { + "$ref": "#/$defs/AutomatedAgent" }, { "$ref": "#/$defs/HealthcareOrganization" }, + { + "$ref": "#/$defs/Procedure" + }, { "$ref": "#/$defs/InvestigativeProtocol" }, + { + "$ref": "#/$defs/StudyDesign" + }, { "$ref": "#/$defs/FoodRecipe" }, { "$ref": "#/$defs/EngineeringSpecification" }, + { + "$ref": "#/$defs/QuantityKind" + }, { "$ref": "#/$defs/UnitConcept" }, @@ -452,6 +604,86 @@ "title": "Concept", "type": "object" }, + "CreativeWork": { + "additionalProperties": false, + "description": "The most generic kind of creative work, including books, movies, photographs, software programs, etc.", + "properties": { + "abstract": { + "description": "A summary of the item", + "type": "string" + }, + "contacts": { + "description": "A contact point for a person or organization", + "items": { + "type": "string" + }, + "type": "array" + }, + "contributors": { + "description": "A person or organization that contributed to the creation of the work", + "items": { + "type": "string" + }, + "type": "array" + }, + "creators": { + "description": "The person or organization who created the work", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "A human-readable description for a thing", + "type": "string" + }, + "id": { + "description": "A unique identifier for a thing", + "type": "string" + }, + "keywords": { + "description": "Keywords or tags used to describe this item", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "A human-readable name for a thing", + "type": "string" + }, + "ontology_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "rights": { + "description": "Information about rights held in and over the item", + "type": "string" + }, + "subtype": { + "description": "An enum with a more specific type", + "type": "string" + }, + "title": { + "description": "The title of the item", + "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "CreativeWork" + ], + "type": "string" + } + }, + "required": [ + "id" + ], + "title": "CreativeWork", + "type": "object" + }, "CurrencyConcept": { "additionalProperties": false, "description": "A currency", @@ -506,6 +738,15 @@ "follows_procedure": { "type": "string" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -562,24 +803,56 @@ "title": "DataStructure", "type": "object" }, - "EngineeringMaterialProcessing": { + "Dataset": { "additionalProperties": false, "description": "", "properties": { - "description": { - "description": "A human-readable description for a thing", + "abstract": { + "description": "A summary of the item", "type": "string" }, - "ends_at": { - "$ref": "#/$defs/TimePoint" + "collected_as_part_of": { + "items": { + "type": "string" + }, + "type": "array" }, - "follows_procedure": { + "contacts": { + "description": "A contact point for a person or organization", + "items": { + "type": "string" + }, + "type": "array" + }, + "contributors": { + "description": "A person or organization that contributed to the creation of the work", + "items": { + "type": "string" + }, + "type": "array" + }, + "creators": { + "description": "The person or organization who created the work", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "A human-readable description for a thing", "type": "string" }, "id": { "description": "A unique identifier for a thing", "type": "string" }, + "keywords": { + "description": "Keywords or tags used to describe this item", + "items": { + "type": "string" + }, + "type": "array" + }, "name": { "description": "A human-readable name for a thing", "type": "string" @@ -590,45 +863,136 @@ }, "type": "array" }, - "starts_at": { - "$ref": "#/$defs/TimePoint" + "rights": { + "description": "Information about rights held in and over the item", + "type": "string" }, "subtype": { "description": "An enum with a more specific type", "type": "string" }, + "title": { + "description": "The title of the item", + "type": "string" + }, "type": { "description": "A type for a thing", "enum": [ - "EngineeringMaterialProcessing" + "Dataset" ], "type": "string" - }, - "uses_physical_device": { - "type": "string" } }, "required": [ "id" ], - "title": "EngineeringMaterialProcessing", + "title": "Dataset", "type": "object" }, - "EngineeringProcess": { + "Duration": { "additionalProperties": false, - "description": "", + "description": "A length of time", "properties": { - "description": { - "description": "A human-readable description for a thing", + "has_quantity_kind": { + "description": "The kind of quantity", "type": "string" }, - "ends_at": { - "$ref": "#/$defs/TimePoint" - }, - "follows_procedure": { + "type": { + "description": "A type for a thing", + "enum": [ + "Duration" + ], "type": "string" - }, - "id": { + } + }, + "title": "Duration", + "type": "object" + }, + "EngineeringMaterialProcessing": { + "additionalProperties": false, + "description": "", + "properties": { + "description": { + "description": "A human-readable description for a thing", + "type": "string" + }, + "ends_at": { + "$ref": "#/$defs/TimePoint" + }, + "follows_procedure": { + "type": "string" + }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, + "id": { + "description": "A unique identifier for a thing", + "type": "string" + }, + "name": { + "description": "A human-readable name for a thing", + "type": "string" + }, + "ontology_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "starts_at": { + "$ref": "#/$defs/TimePoint" + }, + "subtype": { + "description": "An enum with a more specific type", + "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "EngineeringMaterialProcessing" + ], + "type": "string" + }, + "uses_physical_device": { + "type": "string" + } + }, + "required": [ + "id" + ], + "title": "EngineeringMaterialProcessing", + "type": "object" + }, + "EngineeringProcess": { + "additionalProperties": false, + "description": "", + "properties": { + "description": { + "description": "A human-readable description for a thing", + "type": "string" + }, + "ends_at": { + "$ref": "#/$defs/TimePoint" + }, + "follows_procedure": { + "type": "string" + }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, + "id": { "description": "A unique identifier for a thing", "type": "string" }, @@ -706,12 +1070,65 @@ "title": "EngineeringSpecification", "type": "object" }, + "EnvironmentalMonitoring": { + "additionalProperties": false, + "description": "", + "title": "EnvironmentalMonitoring", + "type": "object" + }, "EnvironmentalProcess": { "additionalProperties": false, "description": "", "title": "EnvironmentalProcess", "type": "object" }, + "EnvironmentalSite": { + "additionalProperties": false, + "description": "A location or site that is the subject of environmental monitoring", + "properties": { + "address": { + "$ref": "#/$defs/PostalAddress" + }, + "description": { + "description": "A human-readable description for a thing", + "type": "string" + }, + "geolocation": { + "$ref": "#/$defs/GeoPointLocation", + "description": "The geolocation of the place" + }, + "id": { + "description": "A unique identifier for a thing", + "type": "string" + }, + "name": { + "description": "A human-readable name for a thing", + "type": "string" + }, + "ontology_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "subtype": { + "description": "An enum with a more specific type", + "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "EnvironmentalSite" + ], + "type": "string" + } + }, + "required": [ + "id" + ], + "title": "EnvironmentalSite", + "type": "object" + }, "Event": { "additionalProperties": false, "description": "A thing that happens", @@ -723,6 +1140,15 @@ "ends_at": { "$ref": "#/$defs/TimePoint" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -758,10 +1184,56 @@ "title": "Event", "type": "object" }, + "FinancialAccount": { + "additionalProperties": false, + "description": "A bank account", + "properties": { + "account_holder": { + "description": "The person or organization that holds the account", + "type": "string" + }, + "account_number": { + "description": "The account number", + "type": "string" + }, + "bank": { + "description": "The bank that holds the account", + "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "FinancialAccount" + ], + "type": "string" + } + }, + "title": "FinancialAccount", + "type": "object" + }, + "FinancialProduct": { + "additionalProperties": false, + "description": "A product or service offered by a bank whereby one may deposit, withdraw or transfer money and in some cases be paid interest.", + "properties": { + "type": { + "description": "A type for a thing", + "enum": [ + "FinancialProduct" + ], + "type": "string" + } + }, + "title": "FinancialProduct", + "type": "object" + }, "FoodIngredient": { "additionalProperties": false, "description": "", "properties": { + "has_quantity_kind": { + "description": "The kind of quantity", + "type": "string" + }, "type": { "description": "A type for a thing", "enum": [ @@ -787,6 +1259,15 @@ "follows_procedure": { "type": "string" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -948,6 +1429,15 @@ "ends_at": { "$ref": "#/$defs/TimePoint" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -1000,6 +1490,15 @@ "ends_at": { "$ref": "#/$defs/TimePoint" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -1111,6 +1610,13 @@ }, "speciality": { "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "HealthcareProvider" + ], + "type": "string" } }, "title": "HealthcareProvider", @@ -1122,6 +1628,13 @@ "properties": { "is_person": { "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "HealthcareRole" + ], + "type": "string" } }, "title": "HealthcareRole", @@ -1174,6 +1687,11 @@ "title": "HealthcareSite", "type": "object" }, + "HumanLanguageCodeEnum": { + "description": "An enumeration of languages", + "title": "HumanLanguageCodeEnum", + "type": "string" + }, "InformationEntity": { "additionalProperties": false, "description": "An entity that describes some information", @@ -1268,6 +1786,12 @@ "Investigation" ], "type": "string" + }, + "variables": { + "items": { + "$ref": "#/$defs/Variable" + }, + "type": "array" } }, "required": [ @@ -1290,6 +1814,15 @@ "follows_procedure": { "type": "string" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -1430,6 +1963,15 @@ "ends_at": { "$ref": "#/$defs/TimePoint" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -1479,6 +2021,15 @@ "follows_procedure": { "type": "string" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -1531,6 +2082,15 @@ "follows_procedure": { "type": "string" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -1614,6 +2174,9 @@ { "$ref": "#/$defs/Quantity" }, + { + "$ref": "#/$defs/Duration" + }, { "$ref": "#/$defs/SimpleQuantity" }, @@ -1648,6 +2211,10 @@ "additionalProperties": false, "description": "A quantity of money", "properties": { + "has_quantity_kind": { + "description": "The kind of quantity", + "type": "string" + }, "type": { "description": "A type for a thing", "enum": [ @@ -1768,6 +2335,13 @@ "properties": { "is_person": { "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "Patient" + ], + "type": "string" } }, "title": "Patient", @@ -1930,7 +2504,7 @@ }, "PlannedProcess": { "additionalProperties": false, - "description": "", + "description": "A process that follows a defined procedure or plan", "properties": { "description": { "description": "A human-readable description for a thing", @@ -1942,6 +2516,15 @@ "follows_procedure": { "type": "string" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -2068,6 +2651,31 @@ "additionalProperties": false, "description": "", "properties": { + "abstract": { + "description": "A summary of the item", + "type": "string" + }, + "contacts": { + "description": "A contact point for a person or organization", + "items": { + "type": "string" + }, + "type": "array" + }, + "contributors": { + "description": "A person or organization that contributed to the creation of the work", + "items": { + "type": "string" + }, + "type": "array" + }, + "creators": { + "description": "The person or organization who created the work", + "items": { + "type": "string" + }, + "type": "array" + }, "description": { "description": "A human-readable description for a thing", "type": "string" @@ -2076,6 +2684,13 @@ "description": "A unique identifier for a thing", "type": "string" }, + "keywords": { + "description": "Keywords or tags used to describe this item", + "items": { + "type": "string" + }, + "type": "array" + }, "name": { "description": "A human-readable name for a thing", "type": "string" @@ -2086,10 +2701,18 @@ }, "type": "array" }, + "rights": { + "description": "Information about rights held in and over the item", + "type": "string" + }, "subtype": { "description": "An enum with a more specific type", "type": "string" }, + "title": { + "description": "The title of the item", + "type": "string" + }, "type": { "description": "A type for a thing", "enum": [ @@ -2108,6 +2731,10 @@ "additionalProperties": false, "description": "", "properties": { + "has_quantity_kind": { + "description": "The kind of quantity", + "type": "string" + }, "type": { "description": "A type for a thing", "enum": [ @@ -2119,6 +2746,46 @@ "title": "Quantity", "type": "object" }, + "QuantityKind": { + "additionalProperties": false, + "description": "", + "properties": { + "description": { + "description": "A human-readable description for a thing", + "type": "string" + }, + "id": { + "description": "A unique identifier for a thing", + "type": "string" + }, + "name": { + "description": "A human-readable name for a thing", + "type": "string" + }, + "ontology_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "subtype": { + "description": "An enum with a more specific type", + "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "QuantityKind" + ], + "type": "string" + } + }, + "required": [ + "id" + ], + "title": "QuantityKind", + "type": "object" + }, "QuantityRange": { "additionalProperties": false, "description": "A quantity range is a property that can be measured or counted", @@ -2128,6 +2795,9 @@ { "$ref": "#/$defs/Quantity" }, + { + "$ref": "#/$defs/Duration" + }, { "$ref": "#/$defs/SimpleQuantity" }, @@ -2155,6 +2825,9 @@ { "$ref": "#/$defs/Quantity" }, + { + "$ref": "#/$defs/Duration" + }, { "$ref": "#/$defs/SimpleQuantity" }, @@ -2183,6 +2856,9 @@ { "$ref": "#/$defs/Quantity" }, + { + "$ref": "#/$defs/Duration" + }, { "$ref": "#/$defs/SimpleQuantity" }, @@ -2198,11 +2874,18 @@ ], "description": "The denominator of the ratio" }, + "has_quantity_kind": { + "description": "The kind of quantity", + "type": "string" + }, "numerator": { "anyOf": [ { "$ref": "#/$defs/Quantity" }, + { + "$ref": "#/$defs/Duration" + }, { "$ref": "#/$defs/SimpleQuantity" }, @@ -2269,6 +2952,16 @@ "title": "RawMaterial", "type": "object" }, + "RelativeTimeEnum": { + "description": "", + "enum": [ + "BEFORE", + "AFTER", + "AT_SAME_TIME_AS" + ], + "title": "RelativeTimeEnum", + "type": "string" + }, "SampleCollectionProcess": { "additionalProperties": false, "description": "", @@ -2286,6 +2979,15 @@ "follows_procedure": { "type": "string" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -2384,6 +3086,15 @@ "follows_procedure": { "type": "string" }, + "happens_at": { + "$ref": "#/$defs/TimePoint" + }, + "has_duration": { + "$ref": "#/$defs/Duration" + }, + "has_interval": { + "$ref": "#/$defs/TemporalInterval" + }, "id": { "description": "A unique identifier for a thing", "type": "string" @@ -2422,10 +3133,29 @@ "title": "SampleProcessing", "type": "object" }, + "Service": { + "additionalProperties": false, + "description": "A service provided by an organization", + "properties": { + "type": { + "description": "A type for a thing", + "enum": [ + "Service" + ], + "type": "string" + } + }, + "title": "Service", + "type": "object" + }, "SimpleQuantity": { "additionalProperties": false, "description": "A quantity is a property that can be measured or counted", "properties": { + "has_quantity_kind": { + "description": "The kind of quantity", + "type": "string" + }, "type": { "description": "A type for a thing", "enum": [ @@ -2444,9 +3174,147 @@ "title": "SimpleQuantity", "type": "object" }, - "TimePoint": { + "Specification": { + "additionalProperties": false, + "description": "A specification of a thing", + "properties": { + "description": { + "description": "A human-readable description for a thing", + "type": "string" + }, + "id": { + "description": "A unique identifier for a thing", + "type": "string" + }, + "name": { + "description": "A human-readable name for a thing", + "type": "string" + }, + "ontology_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "subtype": { + "description": "An enum with a more specific type", + "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "Specification" + ], + "type": "string" + } + }, + "required": [ + "id" + ], + "title": "Specification", + "type": "object" + }, + "StudyDesign": { "additionalProperties": false, "description": "", + "properties": { + "description": { + "description": "A human-readable description for a thing", + "type": "string" + }, + "id": { + "description": "A unique identifier for a thing", + "type": "string" + }, + "name": { + "description": "A human-readable name for a thing", + "type": "string" + }, + "ontology_types": { + "items": { + "type": "string" + }, + "type": "array" + }, + "subtype": { + "description": "An enum with a more specific type", + "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "StudyDesign" + ], + "type": "string" + } + }, + "required": [ + "id" + ], + "title": "StudyDesign", + "type": "object" + }, + "StudyDesignEnum": { + "description": "", + "title": "StudyDesignEnum", + "type": "string" + }, + "TemporalInterval": { + "additionalProperties": false, + "description": "A period of time", + "properties": { + "ends_at": { + "$ref": "#/$defs/TimePoint" + }, + "starts_at": { + "$ref": "#/$defs/TimePoint" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "TemporalInterval" + ], + "type": "string" + } + }, + "title": "TemporalInterval", + "type": "object" + }, + "TemporalRelationship": { + "additionalProperties": false, + "description": "A relationship to another time point", + "properties": { + "predicate": { + "$ref": "#/$defs/RelativeTimeEnum", + "description": "The relationship between the two time points" + }, + "relative_to": { + "anyOf": [ + { + "$ref": "#/$defs/TimePoint" + }, + { + "$ref": "#/$defs/TemporalInterval" + }, + { + "type": "string" + } + ] + }, + "type": { + "description": "A type for a thing", + "enum": [ + "TemporalRelationship" + ], + "type": "string" + } + }, + "title": "TemporalRelationship", + "type": "object" + }, + "TimePoint": { + "additionalProperties": false, + "description": "A point in time. Can be fully specified, or specified in relative terms.", "properties": { "date_value": { "format": "date", @@ -2460,17 +3328,54 @@ "description": "A human-readable description for a thing", "type": "string" }, + "ends_at": { + "$ref": "#/$defs/TimePoint" + }, "marker_event": { "type": "string" }, + "starts_at": { + "$ref": "#/$defs/TimePoint" + }, "time_value": { "format": "time", "type": "string" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "TimePoint" + ], + "type": "string" + }, + "year_value": { + "type": "integer" } }, "title": "TimePoint", "type": "object" }, + "TimePointOrTemporalInterval": { + "additionalProperties": false, + "description": "", + "properties": { + "ends_at": { + "$ref": "#/$defs/TimePoint" + }, + "starts_at": { + "$ref": "#/$defs/TimePoint" + }, + "type": { + "description": "A type for a thing", + "enum": [ + "TimePointOrTemporalInterval" + ], + "type": "string" + } + }, + "title": "TimePointOrTemporalInterval", + "type": "object" + }, "UnitConcept": { "additionalProperties": false, "description": "", @@ -2529,6 +3434,9 @@ { "$ref": "#/$defs/Quantity" }, + { + "$ref": "#/$defs/Duration" + }, { "$ref": "#/$defs/SimpleQuantity" }, @@ -2553,6 +3461,9 @@ { "$ref": "#/$defs/Quantity" }, + { + "$ref": "#/$defs/Duration" + }, { "$ref": "#/$defs/SimpleQuantity" }, @@ -2602,21 +3513,6 @@ }, "title": "Variable", "type": "object" - }, - "XProcess": { - "additionalProperties": false, - "description": "A series of actions or steps taken in order to achieve a particular end", - "properties": { - "type": { - "description": "A type for a thing", - "enum": [ - "XProcess" - ], - "type": "string" - } - }, - "title": "XProcess", - "type": "object" } }, "$id": "https://w3id.org/linkml/linkml-common", diff --git a/project/owl/linkml_common.owl.ttl b/project/owl/linkml_common.owl.ttl index 2e3ebab..20912c8 100644 --- a/project/owl/linkml_common.owl.ttl +++ b/project/owl/linkml_common.owl.ttl @@ -1,3 +1,4 @@ +@prefix IAO: . @prefix PATO: . @prefix biolink: . @prefix dcterms: . @@ -6,35 +7,35 @@ @prefix owl: . @prefix rdf: . @prefix rdfs: . -@prefix schema1: . +@prefix schema: . @prefix skos: . @prefix xsd: . -linkml_common:EnvironmentalProcess a owl:Class ; - rdfs:label "EnvironmentalProcess" ; - rdfs:subClassOf linkml:ClassDefinition ; - skos:inScheme linkml_common:environmental ; - skos:note "TODO" . +linkml_common:EnvironmentalMonitoring a owl:Class ; + rdfs:label "EnvironmentalMonitoring" ; + rdfs:subClassOf linkml_common:EnvironmentalProcess ; + skos:inScheme linkml_common:environmental . -linkml_common:Relationship a owl:Class ; - rdfs:label "Relationship" ; - rdfs:subClassOf linkml:ClassDefinition ; - skos:inScheme linkml_common:core . +linkml_common:HumanLanguageCodeEnum a owl:Class ; + rdfs:subClassOf linkml:EnumDefinition . + +linkml_common:StudyDesignEnum a owl:Class ; + rdfs:subClassOf linkml:EnumDefinition . linkml_common:UnitConversionOperation a owl:Class ; rdfs:label "UnitConversionOperation" ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom linkml_common:Quantity ; owl:onProperty linkml_common:inputs ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:inputs ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:outputs ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Quantity ; owl:onProperty linkml_common:outputs ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:inputs ], linkml_common:MathematicalOperation ; skos:definition "A unit conversion operation" ; skos:inScheme linkml_common:quantities . @@ -58,28 +59,11 @@ linkml:linkml-common a owl:Ontology ; rdfs:seeAlso ; skos:definition "Common Data Model Elements" . -linkml_common:HealthcareProvider a owl:Class ; - rdfs:label "HealthcareProvider" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:speciality ], - [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Concept ; - owl:onProperty linkml_common:speciality ], - [ a owl:Restriction ; - owl:allValuesFrom linkml_common:HealthcareSite ; - owl:onProperty linkml_common:care_site ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:care_site ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:speciality ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:care_site ], - linkml_common:HealthcareRole ; - skos:inScheme linkml_common:healthcare . +linkml_common:EnvironmentalProcess a owl:Class ; + rdfs:label "EnvironmentalProcess" ; + rdfs:subClassOf linkml:ClassDefinition ; + skos:inScheme linkml_common:environmental ; + skos:note "TODO" . linkml_common:Location a owl:Class ; rdfs:label "Location" ; @@ -91,6 +75,16 @@ linkml_common:PointLocation a owl:Class ; rdfs:subClassOf linkml_common:Location ; skos:inScheme linkml_common:core . + a owl:Class ; + rdfs:label "CASE" ; + rdfs:subClassOf linkml_common:CaseOrControlEnum, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "CONTROL" ; + rdfs:subClassOf linkml_common:CaseOrControlEnum, + linkml:PermissibleValue . + PATO:0001421 a owl:Class ; rdfs:label "ALIVE" ; rdfs:subClassOf linkml_common:PersonStatus, @@ -101,42 +95,55 @@ PATO:0001422 a owl:Class ; rdfs:subClassOf linkml_common:PersonStatus, linkml:PermissibleValue . +linkml_common:AutomatedAgent a owl:Class ; + rdfs:label "AutomatedAgent" ; + rdfs:subClassOf linkml_common:Agent ; + skos:definition "Represents an Automated Agent" ; + skos:inScheme linkml_common:social . + linkml_common:BasicFoodType a owl:Class ; rdfs:label "BasicFoodType" ; rdfs:subClassOf linkml_common:FoodTypeConcept ; skos:inScheme linkml_common:foods . +linkml_common:CaseOrControlEnum a owl:Class ; + rdfs:subClassOf linkml:EnumDefinition ; + owl:unionOf ( ) ; + linkml:permissible_values , + . + linkml_common:ClinicalCohortEnrollment a owl:Class ; rdfs:label "ClinicalCohortEnrollment" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:ClinicalCohort ; owl:onProperty linkml_common:cohort ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Patient ; - owl:onProperty linkml_common:patient ], - [ a owl:Restriction ; - owl:allValuesFrom linkml_common:ClinicalCohort ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:cohort ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:patient ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:cohort ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:patient ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:cohort ], + owl:allValuesFrom linkml_common:Patient ; + owl:onProperty linkml_common:patient ], linkml_common:Event ; + skos:definition "An event relating a patient to a clinical cohort" ; skos:exactMatch ; skos:inScheme linkml_common:clinicalresearch . linkml_common:Collection a owl:Class ; rdfs:label "Collection" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Entity ; + owl:minCardinality 0 ; owl:onProperty linkml_common:members ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:Entity ; owl:onProperty linkml_common:members ], linkml_common:Intangible ; skos:definition "A group of things. The collection may be heterogeneous or homogeneous." ; @@ -157,25 +164,77 @@ linkml_common:DataStructure a owl:Class ; rdfs:subClassOf linkml_common:Intangible ; skos:inScheme linkml_common:computational . +linkml_common:Dataset a owl:Class ; + rdfs:label "Dataset" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:collected_as_part_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Investigation ; + owl:onProperty linkml_common:collected_as_part_of ], + linkml_common:CreativeWork ; + skos:inScheme linkml_common:datasets . + linkml_common:EngineeringMaterialProcessing a owl:Class ; rdfs:label "EngineeringMaterialProcessing" ; rdfs:subClassOf linkml_common:MaterialProcessing ; skos:inScheme linkml_common:engineering . +linkml_common:EnvironmentalSite a owl:Class ; + rdfs:label "EnvironmentalSite" ; + rdfs:subClassOf linkml_common:Place ; + skos:definition "A location or site that is the subject of environmental monitoring" ; + skos:inScheme linkml_common:environmental . + +linkml_common:FinancialAccount a owl:Class ; + rdfs:label "FinancialAccount" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:account_number ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:account_number ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:account_holder ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Person ; + owl:onProperty linkml_common:account_holder ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Organization ; + owl:onProperty linkml_common:bank ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:account_number ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:bank ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:account_holder ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:bank ], + linkml_common:FinancialProduct ; + skos:definition "A bank account" ; + skos:exactMatch schema:BankAccount, + ; + skos:inScheme linkml_common:financial . + linkml_common:FoodRecipe a owl:Class ; rdfs:label "FoodRecipe" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:FoodProcessing ; - owl:onProperty linkml_common:steps ], - [ a owl:Restriction ; owl:allValuesFrom linkml_common:FoodIngredient ; owl:onProperty linkml_common:ingredients ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:ingredients ], + owl:allValuesFrom linkml_common:FoodProcessing ; + owl:onProperty linkml_common:steps ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:steps ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:ingredients ], linkml_common:Procedure ; skos:inScheme linkml_common:foods . @@ -183,27 +242,27 @@ linkml_common:GeoPointLocation a owl:Class ; rdfs:label "GeoPointLocation" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml_common:longitude ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:decimal ; owl:onProperty linkml_common:altitude ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:longitude ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:longitude ], + owl:onProperty linkml_common:altitude ], [ a owl:Restriction ; owl:allValuesFrom xsd:decimal ; owl:onProperty linkml_common:latitude ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:altitude ], + owl:onProperty linkml_common:latitude ], [ a owl:Restriction ; owl:allValuesFrom xsd:decimal ; owl:onProperty linkml_common:longitude ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:latitude ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:decimal ; owl:onProperty linkml_common:altitude ], [ a owl:Restriction ; owl:maxCardinality 1 ; @@ -217,8 +276,8 @@ linkml_common:HealthcareConditionOccurrence a owl:Class ; owl:allValuesFrom linkml_common:Patient ; owl:onProperty linkml_common:patient ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:patient ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:observed_during ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:observed_during ], @@ -227,9 +286,9 @@ linkml_common:HealthcareConditionOccurrence a owl:Class ; owl:onProperty linkml_common:observed_during ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:observed_during ], + owl:onProperty linkml_common:patient ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:patient ], linkml_common:Event ; skos:exactMatch ; @@ -295,30 +354,16 @@ linkml_common:HealthcareOrganization a owl:Class ; rdfs:subClassOf linkml_common:Organization ; skos:inScheme linkml_common:healthcare . -linkml_common:HealthcareRole a owl:Class ; - rdfs:label "HealthcareRole" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Person ; - owl:onProperty linkml_common:is_person ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:is_person ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:is_person ], - linkml:ClassDefinition ; - skos:inScheme linkml_common:healthcare . - linkml_common:InformationEntity a owl:Class ; rdfs:label "InformationEntity" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml_common:Any ; owl:onProperty linkml_common:describes ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:describes ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Any ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:describes ], linkml_common:NamedThing ; skos:definition "An entity that describes some information" ; @@ -327,13 +372,13 @@ linkml_common:InformationEntity a owl:Class ; linkml_common:Landform a owl:Class ; rdfs:label "Landform" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:geolocation ], [ a owl:Restriction ; - owl:allValuesFrom owl:Thing ; + owl:minCardinality 1 ; owl:onProperty linkml_common:geolocation ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom owl:Thing ; owl:onProperty linkml_common:geolocation ], linkml_common:Place ; skos:definition "A natural feature of the solid surface of the Earth or other planetary body" ; @@ -356,37 +401,34 @@ linkml_common:Measurement a owl:Class ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom linkml_common:Quantity ; owl:onProperty linkml_common:quantity_measured ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:quantity_measured ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Variable ; owl:onProperty linkml_common:variable_measured ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:variable_measured ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:quantity_measured ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:variable_measured ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:quantity_measured ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:quantity_measured ], + owl:onProperty linkml_common:variable_measured ], linkml_common:Observation ; skos:inScheme linkml_common:meaurements . linkml_common:MoneyQuantity a owl:Class ; rdfs:label "MoneyQuantity" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:unit ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom xsd:float ; owl:onProperty linkml_common:value ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:unit ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:float ; owl:onProperty linkml_common:value ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:CurrencyConcept ; @@ -394,6 +436,9 @@ linkml_common:MoneyQuantity a owl:Class ; [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:value ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:unit ], linkml_common:Quantity ; skos:definition "A quantity of money" ; skos:exactMatch ; @@ -406,29 +451,29 @@ linkml_common:MoneyQuantity a owl:Class ; linkml_common:Publication a owl:Class ; rdfs:label "Publication" ; - rdfs:subClassOf linkml_common:NamedThing ; + rdfs:subClassOf linkml_common:CreativeWork ; skos:inScheme linkml_common:financial . linkml_common:QuantityRange a owl:Class ; rdfs:label "QuantityRange" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Quantity ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:upper_bound ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:lower_bound ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:lower_bound ], + owl:onProperty linkml_common:upper_bound ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Quantity ; + owl:minCardinality 0 ; owl:onProperty linkml_common:lower_bound ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:Quantity ; owl:onProperty linkml_common:upper_bound ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:upper_bound ], + owl:allValuesFrom linkml_common:Quantity ; + owl:onProperty linkml_common:lower_bound ], linkml_common:Intangible ; skos:definition "A quantity range is a property that can be measured or counted" ; skos:exactMatch ; @@ -437,23 +482,23 @@ linkml_common:QuantityRange a owl:Class ; linkml_common:Ratio a owl:Class ; rdfs:label "Ratio" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:numerator ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml_common:Quantity ; owl:onProperty linkml_common:denominator ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml_common:Quantity ; owl:onProperty linkml_common:numerator ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Quantity ; + owl:minCardinality 0 ; owl:onProperty linkml_common:numerator ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Quantity ; - owl:onProperty linkml_common:denominator ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:numerator ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:denominator ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:denominator ], linkml_common:Quantity ; skos:definition "A tuple of two quantities" ; skos:exactMatch ; @@ -464,26 +509,41 @@ linkml_common:RawMaterial a owl:Class ; rdfs:subClassOf linkml_common:NamedThing ; skos:inScheme linkml_common:engineering . + a owl:Class ; + rdfs:label "AFTER" ; + rdfs:subClassOf linkml_common:RelativeTimeEnum, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "AT_SAME_TIME_AS" ; + rdfs:subClassOf linkml_common:RelativeTimeEnum, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "BEFORE" ; + rdfs:subClassOf linkml_common:RelativeTimeEnum, + linkml:PermissibleValue . + linkml_common:SampleCollectionProcess a owl:Class ; rdfs:label "SampleCollectionProcess" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:material_collected ], + owl:onProperty linkml_common:collected_from ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:material_collected ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty linkml_common:collected_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:SampleMaterial ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:material_collected ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:collected_from ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:NamedThing ; owl:onProperty linkml_common:collected_from ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:material_collected ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:SampleMaterial ; + owl:onProperty linkml_common:material_collected ], linkml_common:InvestigativeProcess ; skos:exactMatch ; skos:inScheme linkml_common:investigations . @@ -496,48 +556,96 @@ linkml_common:SampleProcessing a owl:Class ; linkml_common:SimpleQuantity a owl:Class ; rdfs:label "SimpleQuantity" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:value ], - [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:unit ], [ a owl:Restriction ; - owl:allValuesFrom xsd:float ; - owl:onProperty linkml_common:value ], + owl:allValuesFrom linkml_common:UnitConcept ; + owl:onProperty linkml_common:unit ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:value ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:UnitConcept ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:unit ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:float ; + owl:onProperty linkml_common:value ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:unit ], + owl:onProperty linkml_common:value ], linkml_common:Quantity ; skos:definition "A quantity is a property that can be measured or counted" ; - skos:exactMatch ; + skos:exactMatch , + ; skos:inScheme linkml_common:quantities . -linkml_common:XProcess a owl:Class ; - rdfs:label "XProcess" ; - rdfs:subClassOf linkml_common:Entity ; - skos:definition "A series of actions or steps taken in order to achieve a particular end" ; - skos:inScheme linkml_common:core . +linkml_common:StudyDesign a owl:Class ; + rdfs:label "StudyDesign" ; + rdfs:subClassOf linkml_common:Procedure ; + skos:inScheme linkml_common:investigations . + +linkml_common:TemporalRelationship a owl:Class ; + rdfs:label "TemporalRelationship" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom [ owl:intersectionOf ( [ owl:unionOf ( linkml_common:TimePoint linkml_common:TemporalInterval linkml_common:Event ) ] linkml_common:Entity ) ] ; + owl:onProperty linkml_common:relative_to ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:predicate ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:relative_to ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:predicate ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:relative_to ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:RelativeTimeEnum ; + owl:onProperty linkml_common:predicate ], + linkml_common:Relationship ; + skos:definition "A relationship to another time point" ; + skos:inScheme linkml_common:time . linkml_common:allowed_units a owl:ObjectProperty ; rdfs:label "allowed_units" ; skos:definition "The units that are allowed for this variable" ; skos:inScheme linkml_common:meaurements . -linkml_common:immediate_preceding_steps a owl:ObjectProperty ; - rdfs:label "immediate_preceding_steps" ; - skos:definition "The steps that immediately precede this step" ; - skos:inScheme linkml_common:core . +linkml_common:collected_as_part_of a owl:ObjectProperty ; + rdfs:label "collected_as_part_of" ; + skos:inScheme linkml_common:datasets . -linkml_common:ingredients a owl:ObjectProperty ; - rdfs:label "ingredients" ; +linkml_common:contacts a owl:ObjectProperty ; + rdfs:label "contacts" ; + skos:definition "A contact point for a person or organization" ; + skos:inScheme linkml_common:social . + +linkml_common:contributors a owl:ObjectProperty ; + rdfs:label "contributors" ; + skos:definition "A person or organization that contributed to the creation of the work" ; + skos:inScheme linkml_common:social . + +linkml_common:creators a owl:ObjectProperty ; + rdfs:label "creators" ; + skos:definition "The person or organization who created the work" ; + skos:inScheme linkml_common:social . + +linkml_common:immediate_preceding_steps a owl:ObjectProperty ; + rdfs:label "immediate_preceding_steps" ; + skos:definition "The steps that immediately precede this step" ; + skos:inScheme linkml_common:core . + +linkml_common:ingredients a owl:ObjectProperty ; + rdfs:label "ingredients" ; skos:inScheme linkml_common:foods . +linkml_common:keywords a owl:DatatypeProperty ; + rdfs:label "keywords" ; + skos:definition "Keywords or tags used to describe this item" ; + skos:inScheme linkml_common:social . + linkml_common:members a owl:ObjectProperty ; rdfs:label "members" ; skos:definition "The members of the collection" ; @@ -557,23 +665,29 @@ linkml_common:steps a owl:ObjectProperty ; rdfs:label "steps" ; skos:inScheme linkml_common:foods . +linkml_common:variables a owl:ObjectProperty ; + rdfs:label "variables" ; + skos:inScheme linkml_common:investigations . + linkml_common:ClinicalCohort a owl:Class ; rdfs:label "ClinicalCohort" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml_common:ClinicalCohortDefinition ; owl:onProperty linkml_common:definition ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:ClinicalCohortDefinition ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:definition ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:definition ], linkml_common:NamedThing ; + skos:definition "A group of patients who share a common set of characteristics" ; skos:inScheme linkml_common:clinicalresearch . linkml_common:ClinicalCohortDefinition a owl:Class ; rdfs:label "ClinicalCohortDefinition" ; rdfs:subClassOf linkml_common:NamedThing ; + skos:definition "A definition of a clinical cohort" ; skos:exactMatch ; skos:inScheme linkml_common:clinicalresearch . @@ -586,22 +700,22 @@ linkml_common:CurrencyConcept a owl:Class ; linkml_common:EngineeringProcess a owl:Class ; rdfs:label "EngineeringProcess" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:part_of ], + owl:allValuesFrom linkml_common:EngineeringSpecification ; + owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml_common:part_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:EngineeringSpecification ; - owl:onProperty linkml_common:follows_procedure ], + owl:allValuesFrom linkml_common:EngineeringProcess ; + owl:onProperty linkml_common:part_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:EngineeringProcess ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:part_of ], linkml_common:Event ; skos:inScheme linkml_common:engineering . @@ -611,6 +725,12 @@ linkml_common:EngineeringSpecification a owl:Class ; rdfs:subClassOf linkml_common:Procedure ; skos:inScheme linkml_common:engineering . +linkml_common:FinancialProduct a owl:Class ; + rdfs:label "FinancialProduct" ; + rdfs:subClassOf linkml_common:Service ; + skos:definition "A product or service offered by a bank whereby one may deposit, withdraw or transfer money and in some cases be paid interest." ; + skos:inScheme linkml_common:financial . + linkml_common:FoodIngredient a owl:Class ; rdfs:label "FoodIngredient" ; rdfs:subClassOf linkml_common:Quantity ; @@ -624,55 +744,64 @@ linkml_common:FoodProcessing a owl:Class ; linkml_common:HealthcareEncounter a owl:Class ; rdfs:label "HealthcareEncounter" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:HealthcareProvider ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:provider ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:HealthcareEncounterClassification ; + owl:minCardinality 0 ; owl:onProperty linkml_common:subtype ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:provider ], + owl:onProperty linkml_common:patient ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:patient ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:provider ], + owl:onProperty linkml_common:subtype ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Patient ; - owl:onProperty linkml_common:patient ], + owl:allValuesFrom linkml_common:HealthcareProvider ; + owl:onProperty linkml_common:provider ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:subtype ], + owl:onProperty linkml_common:provider ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml_common:HealthcareEncounterClassification ; owl:onProperty linkml_common:subtype ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:Patient ; owl:onProperty linkml_common:patient ], linkml_common:Event ; skos:exactMatch ; skos:inScheme linkml_common:healthcare . -linkml_common:HealthcareSite a owl:Class ; - rdfs:label "HealthcareSite" ; - rdfs:subClassOf linkml_common:Place ; - skos:exactMatch ; - skos:inScheme linkml_common:healthcare . - -linkml_common:Investigation a owl:Class ; - rdfs:label "Investigation" ; +linkml_common:HealthcareProvider a owl:Class ; + rdfs:label "HealthcareProvider" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:objectives ], + owl:onProperty linkml_common:speciality ], [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:objectives ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:care_site ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Concept ; + owl:onProperty linkml_common:speciality ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:HealthcareSite ; + owl:onProperty linkml_common:care_site ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:objectives ], - linkml_common:NamedThing ; - skos:inScheme linkml_common:investigations . + owl:onProperty linkml_common:care_site ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:speciality ], + linkml_common:HealthcareRole ; + skos:inScheme linkml_common:healthcare . + +linkml_common:HealthcareSite a owl:Class ; + rdfs:label "HealthcareSite" ; + rdfs:subClassOf linkml_common:Place ; + skos:exactMatch ; + skos:inScheme linkml_common:healthcare . linkml_common:InvestigativeProtocol a owl:Class ; rdfs:label "InvestigativeProtocol" ; @@ -682,6 +811,9 @@ linkml_common:InvestigativeProtocol a owl:Class ; linkml_common:MathematicalOperation a owl:Class ; rdfs:label "MathematicalOperation" ; rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:outputs ], + [ a owl:Restriction ; owl:allValuesFrom linkml_common:MathematicalOperation ; owl:onProperty linkml_common:immediate_preceding_steps ], [ a owl:Restriction ; @@ -689,22 +821,19 @@ linkml_common:MathematicalOperation a owl:Class ; owl:onProperty linkml_common:parts ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:parts ], + owl:onProperty linkml_common:inputs ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Any ; + owl:onProperty linkml_common:outputs ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:immediate_preceding_steps ], - [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Any ; - owl:onProperty linkml_common:inputs ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:inputs ], + owl:onProperty linkml_common:parts ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Any ; - owl:onProperty linkml_common:outputs ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:outputs ], + owl:onProperty linkml_common:inputs ], linkml:ClassDefinition ; skos:definition "Application of a mathematical operation to one or more inputs to produce one or more outputs" ; skos:inScheme linkml_common:core . @@ -715,64 +844,29 @@ linkml_common:Observation a owl:Class ; skos:definition "A statement about the state of something" ; skos:inScheme linkml_common:core . -linkml_common:Organization a owl:Class ; - rdfs:label "Organization" ; +linkml_common:PhysicalDevice a owl:Class ; + rdfs:label "PhysicalDevice" ; rdfs:subClassOf linkml_common:NamedThing ; - skos:definition "Represents an Organization" ; - skos:inScheme linkml_common:social . + skos:inScheme linkml_common:core . -linkml_common:Patient a owl:Class ; - rdfs:label "Patient" ; - rdfs:subClassOf linkml_common:HealthcareRole ; - skos:inScheme linkml_common:healthcare . +linkml_common:QuantityKind a owl:Class ; + rdfs:label "QuantityKind" ; + rdfs:subClassOf linkml_common:Concept ; + skos:exactMatch , + ; + skos:inScheme linkml_common:quantities . -linkml_common:Person a owl:Class ; - rdfs:label "Person" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:birth_date ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:age_in_years ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:primary_email ], - [ a owl:Restriction ; - owl:allValuesFrom linkml_common:PersonStatus ; - owl:onProperty linkml_common:vital_status ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:birth_date ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:integer ; - owl:onProperty linkml_common:age_in_years ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:primary_email ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:date ; - owl:onProperty linkml_common:birth_date ], - [ a owl:Restriction ; - owl:allValuesFrom [ a rdfs:Datatype ; - owl:onDatatype xsd:string ; - owl:withRestrictions ( [ xsd:pattern "^\\S+@[\\S+\\.]+\\S+" ] ) ] ; - owl:onProperty linkml_common:primary_email ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:age_in_years ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:vital_status ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:vital_status ], - linkml_common:NamedThing ; - skos:definition "Represents a Person" ; - skos:inScheme linkml_common:social . +linkml_common:Relationship a owl:Class ; + rdfs:label "Relationship" ; + rdfs:subClassOf linkml_common:Intangible ; + skos:closeMatch rdfs:Statement ; + skos:inScheme linkml_common:core . -linkml_common:PhysicalDevice a owl:Class ; - rdfs:label "PhysicalDevice" ; - rdfs:subClassOf linkml_common:NamedThing ; +linkml_common:Role a owl:Class ; + rdfs:label "Role" ; + rdfs:subClassOf linkml_common:Intangible ; + skos:closeMatch ; + skos:exactMatch schema:Role ; skos:inScheme linkml_common:core . linkml_common:SampleMaterial a owl:Class ; @@ -780,16 +874,34 @@ linkml_common:SampleMaterial a owl:Class ; rdfs:subClassOf linkml_common:NamedThing ; skos:inScheme linkml_common:investigations . -linkml_common:Variable a owl:Class ; - rdfs:label "Variable" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:allowed_units ], - [ a owl:Restriction ; - owl:allValuesFrom linkml_common:UnitConcept ; - owl:onProperty linkml_common:allowed_units ], - linkml_common:Entity ; - skos:inScheme linkml_common:meaurements . +linkml_common:Service a owl:Class ; + rdfs:label "Service" ; + rdfs:subClassOf linkml_common:Intangible ; + skos:definition "A service provided by an organization" ; + skos:exactMatch schema:Service ; + skos:inScheme linkml_common:social . + +linkml_common:Specification a owl:Class ; + rdfs:label "Specification" ; + rdfs:subClassOf linkml_common:NamedThing ; + skos:definition "A specification of a thing" ; + skos:exactMatch IAO:0000104 ; + skos:inScheme linkml_common:core . + +linkml_common:abstract a owl:DatatypeProperty ; + rdfs:label "abstract" ; + skos:definition "A summary of the item" ; + skos:inScheme linkml_common:social . + +linkml_common:account_holder a owl:ObjectProperty ; + rdfs:label "account_holder" ; + skos:definition "The person or organization that holds the account" ; + skos:inScheme linkml_common:financial . + +linkml_common:account_number a owl:DatatypeProperty ; + rdfs:label "account_number" ; + skos:definition "The account number" ; + skos:inScheme linkml_common:financial . linkml_common:address a owl:ObjectProperty ; rdfs:label "address" ; @@ -807,6 +919,11 @@ linkml_common:altitude a owl:DatatypeProperty ; skos:definition "The altitude of the location" ; skos:inScheme linkml_common:geography . +linkml_common:bank a owl:ObjectProperty ; + rdfs:label "bank" ; + skos:definition "The bank that holds the account" ; + skos:inScheme linkml_common:financial . + linkml_common:birth_date a owl:DatatypeProperty ; rdfs:label "birth_date" ; rdfs:range xsd:date ; @@ -860,11 +977,26 @@ linkml_common:describes a owl:ObjectProperty ; skos:definition "The thing that is being described" ; skos:inScheme linkml_common:core . -linkml_common:ends_at a owl:ObjectProperty ; - rdfs:label "ends_at" ; +linkml_common:happens_at a owl:ObjectProperty ; + rdfs:label "happens_at" ; rdfs:range linkml_common:TimePoint ; skos:inScheme linkml_common:time . +linkml_common:has_duration a owl:ObjectProperty ; + rdfs:label "has_duration" ; + rdfs:range linkml_common:Duration ; + skos:inScheme linkml_common:time . + +linkml_common:has_interval a owl:ObjectProperty ; + rdfs:label "has_interval" ; + rdfs:range linkml_common:TemporalInterval ; + skos:inScheme linkml_common:time . + +linkml_common:has_quantity_kind a owl:ObjectProperty ; + rdfs:label "has_quantity_kind" ; + skos:definition "The kind of quantity" ; + skos:inScheme linkml_common:quantities . + linkml_common:id a owl:DatatypeProperty ; rdfs:label "id" ; rdfs:range xsd:anyURI ; @@ -923,6 +1055,11 @@ linkml_common:postal_code a owl:DatatypeProperty ; skos:definition "The postal code or zip code" ; skos:inScheme linkml_common:geography . +linkml_common:predicate a owl:ObjectProperty ; + rdfs:label "predicate" ; + skos:definition "The relationship between the two time points" ; + skos:inScheme linkml_common:time . + linkml_common:primary_email a owl:DatatypeProperty ; rdfs:label "primary_email" ; skos:definition "The main email address of a person" ; @@ -937,15 +1074,19 @@ linkml_common:quantity_measured a owl:ObjectProperty ; skos:definition "The quantity being measured" ; skos:inScheme linkml_common:meaurements . +linkml_common:relative_to a owl:ObjectProperty ; + rdfs:label "relative_to" ; + skos:inScheme linkml_common:time . + +linkml_common:rights a owl:DatatypeProperty ; + rdfs:label "rights" ; + skos:definition "Information about rights held in and over the item" ; + skos:inScheme linkml_common:social . + linkml_common:speciality a owl:ObjectProperty ; rdfs:label "speciality" ; skos:inScheme linkml_common:healthcare . -linkml_common:starts_at a owl:ObjectProperty ; - rdfs:label "starts_at" ; - rdfs:range linkml_common:TimePoint ; - skos:inScheme linkml_common:time . - linkml_common:state a owl:DatatypeProperty ; rdfs:label "state" ; skos:definition "The state" ; @@ -967,6 +1108,12 @@ linkml_common:time_value a owl:DatatypeProperty ; rdfs:range xsd:time ; skos:inScheme linkml_common:time . +linkml_common:title a owl:DatatypeProperty ; + rdfs:label "title" ; + skos:definition "The title of the item" ; + skos:exactMatch dcterms:title ; + skos:inScheme linkml_common:social . + linkml_common:upper_bound a owl:ObjectProperty ; rdfs:label "upper_bound" ; skos:definition "The upper bound of the range" ; @@ -987,169 +1134,279 @@ linkml_common:vital_status a owl:ObjectProperty ; skos:definition "living or dead status" ; skos:inScheme linkml_common:social . -linkml_common:FoodTypeConcept a owl:Class ; - rdfs:label "FoodTypeConcept" ; - rdfs:subClassOf linkml_common:Concept ; - skos:inScheme linkml_common:foods . +linkml_common:year_value a owl:DatatypeProperty ; + rdfs:label "year_value" ; + rdfs:range xsd:integer ; + skos:inScheme linkml_common:time . -linkml_common:InvestigativeProcess a owl:Class ; - rdfs:label "InvestigativeProcess" ; +linkml_common:CreativeWork a owl:Class ; + rdfs:label "CreativeWork" ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:part_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml_common:InvestigativeProtocol ; - owl:onProperty linkml_common:follows_procedure ], + owl:onProperty linkml_common:rights ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Investigation ; - owl:onProperty linkml_common:part_of ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:abstract ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:follows_procedure ], + owl:onProperty linkml_common:rights ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:follows_procedure ], + owl:onProperty linkml_common:title ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:part_of ], - linkml_common:PlannedProcess ; - skos:inScheme linkml_common:investigations . - -linkml_common:Place a owl:Class ; - rdfs:label "Place" ; - rdfs:subClassOf [ a owl:Restriction ; + owl:onProperty linkml_common:abstract ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:abstract ], + [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:address ], + owl:onProperty linkml_common:contacts ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:PostalAddress ; - owl:onProperty linkml_common:address ], + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:rights ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Agent ; + owl:onProperty linkml_common:contacts ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:address ], + owl:onProperty linkml_common:title ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:geolocation ], + owl:onProperty linkml_common:contributors ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:geolocation ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:creators ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:GeoPointLocation ; - owl:onProperty linkml_common:geolocation ], + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:title ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:keywords ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Agent ; + owl:onProperty linkml_common:contributors ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Agent ; + owl:onProperty linkml_common:creators ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:keywords ], linkml_common:NamedThing ; - skos:definition "Entities that have a somewhat fixed, physical extension." ; - skos:exactMatch schema1:Place ; - skos:inScheme linkml_common:geography . + skos:definition "The most generic kind of creative work, including books, movies, photographs, software programs, etc." ; + skos:exactMatch schema:CreativeWork ; + skos:inScheme linkml_common:social . -linkml_common:PostalAddress a owl:Class ; - rdfs:label "PostalAddress" ; +linkml_common:Duration a owl:Class ; + rdfs:label "Duration" ; + rdfs:subClassOf linkml_common:Quantity ; + skos:definition "A length of time" ; + skos:inScheme linkml_common:time . + +linkml_common:FoodTypeConcept a owl:Class ; + rdfs:label "FoodTypeConcept" ; + rdfs:subClassOf linkml_common:Concept ; + skos:inScheme linkml_common:foods . + +linkml_common:HealthcareRole a owl:Class ; + rdfs:label "HealthcareRole" ; rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:is_person ], + [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:state ], + owl:onProperty linkml_common:is_person ], [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:country ], + owl:allValuesFrom linkml_common:Person ; + owl:onProperty linkml_common:is_person ], + linkml_common:Role ; + skos:inScheme linkml_common:healthcare . + +linkml_common:Investigation a owl:Class ; + rdfs:label "Investigation" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:variables ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:objectives ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:street_address_additional ], + owl:onProperty linkml_common:objectives ], [ a owl:Restriction ; owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:street_address_additional ], + owl:onProperty linkml_common:objectives ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Variable ; + owl:onProperty linkml_common:variables ], + linkml_common:NamedThing ; + skos:inScheme linkml_common:investigations . + +linkml_common:InvestigativeProcess a owl:Class ; + rdfs:label "InvestigativeProcess" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:street_address ], + owl:onProperty linkml_common:part_of ], [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:postal_code ], + owl:allValuesFrom linkml_common:Investigation ; + owl:onProperty linkml_common:part_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:city ], + owl:onProperty linkml_common:part_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:city ], + owl:allValuesFrom linkml_common:InvestigativeProtocol ; + owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:street_address ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:follows_procedure ], + linkml_common:PlannedProcess ; + skos:inScheme linkml_common:investigations . + +linkml_common:Organization a owl:Class ; + rdfs:label "Organization" ; + rdfs:subClassOf linkml_common:Agent ; + skos:definition "Represents an Organization" ; + skos:exactMatch schema:Organization ; + skos:inScheme linkml_common:social . + +linkml_common:Person a owl:Class ; + rdfs:label "Person" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml_common:PersonStatus ; + owl:onProperty linkml_common:vital_status ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:integer ; + owl:onProperty linkml_common:age_in_years ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:postal_code ], + owl:onProperty linkml_common:age_in_years ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:birth_date ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:date ; + owl:onProperty linkml_common:birth_date ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:country ], + owl:onProperty linkml_common:vital_status ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:primary_email ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:street_address_additional ], + owl:onProperty linkml_common:birth_date ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:country ], + owl:onProperty linkml_common:vital_status ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:age_in_years ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:street_address ], + owl:onProperty linkml_common:primary_email ], [ a owl:Restriction ; + owl:allValuesFrom [ a rdfs:Datatype ; + owl:onDatatype xsd:string ; + owl:withRestrictions ( [ xsd:pattern "^\\S+@[\\S+\\.]+\\S+" ] ) ] ; + owl:onProperty linkml_common:primary_email ], + linkml_common:Agent ; + skos:definition "Represents a Person" ; + skos:exactMatch schema:Person ; + skos:inScheme linkml_common:social . + +linkml_common:PostalAddress a owl:Class ; + rdfs:label "PostalAddress" ; + rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:city ], + owl:onProperty linkml_common:country ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:state ], + owl:onProperty linkml_common:country ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:postal_code ], + owl:onProperty linkml_common:country ], [ a owl:Restriction ; owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:state ], - linkml_common:Entity ; - skos:definition "Represents an Address" ; - skos:exactMatch , - schema1:PostalAddress ; - skos:inScheme linkml_common:geography . - -linkml_common:TimePoint a owl:Class ; - rdfs:label "TimePoint" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:time_value ], + owl:onProperty linkml_common:street_address_additional ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:marker_event ], + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:city ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:description ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:dateTime ; - owl:onProperty linkml_common:datetime_value ], + owl:onProperty linkml_common:state ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:time_value ], + owl:onProperty linkml_common:city ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Event ; - owl:onProperty linkml_common:marker_event ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:postal_code ], [ a owl:Restriction ; - owl:allValuesFrom xsd:date ; - owl:onProperty linkml_common:date_value ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:postal_code ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:datetime_value ], + owl:onProperty linkml_common:street_address_additional ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:date_value ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:street_address ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:marker_event ], + owl:onProperty linkml_common:state ], [ a owl:Restriction ; owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:description ], + owl:onProperty linkml_common:state ], [ a owl:Restriction ; - owl:allValuesFrom xsd:time ; - owl:onProperty linkml_common:time_value ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:city ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:datetime_value ], + owl:onProperty linkml_common:street_address ], [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:street_address_additional ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:postal_code ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:street_address ], + linkml_common:Entity ; + skos:definition "Represents an Address" ; + skos:exactMatch , + schema:PostalAddress ; + skos:inScheme linkml_common:geography . + +linkml_common:RelativeTimeEnum a owl:Class ; + rdfs:subClassOf linkml:EnumDefinition ; + owl:unionOf ( ) ; + linkml:permissible_values , + , + . + +linkml_common:TimePointOrTemporalInterval a owl:Class ; + rdfs:label "TimePointOrTemporalInterval" ; + rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:date_value ], + owl:onProperty linkml_common:ends_at ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:ends_at ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:TimePoint ; + owl:onProperty linkml_common:starts_at ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:description ], - linkml:ClassDefinition ; + owl:onProperty linkml_common:starts_at ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:starts_at ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:TimePoint ; + owl:onProperty linkml_common:ends_at ], + linkml_common:Intangible ; skos:inScheme linkml_common:time . linkml_common:UnitConcept a owl:Class ; @@ -1157,6 +1414,17 @@ linkml_common:UnitConcept a owl:Class ; rdfs:subClassOf linkml_common:Concept ; skos:inScheme linkml_common:quantities . +linkml_common:Variable a owl:Class ; + rdfs:label "Variable" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml_common:UnitConcept ; + owl:onProperty linkml_common:allowed_units ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:allowed_units ], + linkml_common:Entity ; + skos:inScheme linkml_common:meaurements . + linkml_common:inputs a owl:ObjectProperty ; rdfs:label "inputs" ; skos:definition "The inputs to the operation" ; @@ -1172,6 +1440,11 @@ linkml_common:MaterialProcessing a owl:Class ; rdfs:subClassOf linkml_common:PlannedProcess ; skos:inScheme linkml_common:plannedprocess . +linkml_common:Patient a owl:Class ; + rdfs:label "Patient" ; + rdfs:subClassOf linkml_common:HealthcareRole ; + skos:inScheme linkml_common:healthcare . + linkml_common:PersonStatus a owl:Class ; rdfs:subClassOf linkml:EnumDefinition ; owl:unionOf ( PATO:0001421 PATO:0001422 ) ; @@ -1179,48 +1452,86 @@ linkml_common:PersonStatus a owl:Class ; PATO:0001422, . +linkml_common:Place a owl:Class ; + rdfs:label "Place" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:address ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:GeoPointLocation ; + owl:onProperty linkml_common:geolocation ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:geolocation ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:geolocation ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:PostalAddress ; + owl:onProperty linkml_common:address ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:address ], + linkml_common:NamedThing ; + skos:definition "Entities that have a somewhat fixed, physical extension." ; + skos:exactMatch schema:Place ; + skos:inScheme linkml_common:geography . + linkml_common:PlannedProcess a owl:Class ; rdfs:label "PlannedProcess" ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom linkml_common:Procedure ; owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:uses_physical_device ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:PhysicalDevice ; owl:onProperty linkml_common:uses_physical_device ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml_common:uses_physical_device ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:follows_procedure ], linkml_common:Event ; + skos:definition "A process that follows a defined procedure or plan" ; + skos:exactMatch ; skos:inScheme linkml_common:plannedprocess . +linkml_common:TemporalInterval a owl:Class ; + rdfs:label "TemporalInterval" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml_common:TimePoint ; + owl:onProperty linkml_common:ends_at ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:starts_at ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:ends_at ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:starts_at ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:TimePoint ; + owl:onProperty linkml_common:starts_at ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:ends_at ], + linkml_common:TimePointOrTemporalInterval ; + skos:definition "A period of time" ; + skos:inScheme linkml_common:time . + linkml_common:Any a owl:Class ; rdfs:label "Any" ; rdfs:subClassOf linkml:ClassDefinition ; skos:exactMatch linkml:Any ; skos:inScheme linkml_common:core . -linkml_common:Intangible a owl:Class ; - rdfs:label "Intangible" ; - rdfs:subClassOf linkml_common:Entity ; - skos:definition "An entity that is not a physical object, process, or information" ; - skos:exactMatch schema1:Intangible ; - skos:inScheme linkml_common:core . - -linkml_common:Procedure a owl:Class ; - rdfs:label "Procedure" ; - rdfs:subClassOf linkml_common:NamedThing ; - skos:definition "A canonical series of actions conducted in a certain order or manner" ; - skos:inScheme linkml_common:core . - linkml_common:description a owl:DatatypeProperty ; rdfs:label "description" ; skos:definition "A human-readable description for a thing" ; @@ -1244,6 +1555,20 @@ linkml_common:unit a owl:ObjectProperty . linkml_common:value a owl:DatatypeProperty . +linkml_common:Procedure a owl:Class ; + rdfs:label "Procedure" ; + rdfs:subClassOf linkml_common:Specification ; + skos:definition "A canonical series of actions conducted in a certain order or manner" ; + skos:inScheme linkml_common:core . + +linkml_common:Agent a owl:Class ; + rdfs:label "Agent" ; + rdfs:subClassOf linkml_common:NamedThing ; + skos:definition "Represents an Agent" ; + skos:exactMatch , + ; + skos:inScheme linkml_common:social . + linkml_common:Concept a owl:Class ; rdfs:label "Concept" ; rdfs:subClassOf linkml_common:NamedThing ; @@ -1264,32 +1589,76 @@ linkml_common:Entity a owl:Class ; owl:onProperty linkml_common:type ], linkml:ClassDefinition ; skos:definition "A physical, digital, conceptual, or other kind of thing with some common characteristics" ; - skos:exactMatch schema1:Thing ; + skos:exactMatch schema:Thing ; skos:inScheme linkml_common:core . +linkml_common:ends_at a owl:ObjectProperty ; + rdfs:label "ends_at" ; + rdfs:range linkml_common:TimePoint ; + skos:inScheme linkml_common:time . + linkml_common:follows_procedure a owl:ObjectProperty . linkml_common:patient a owl:ObjectProperty . +linkml_common:starts_at a owl:ObjectProperty ; + rdfs:label "starts_at" ; + rdfs:range linkml_common:TimePoint ; + skos:inScheme linkml_common:time . + +linkml_common:Intangible a owl:Class ; + rdfs:label "Intangible" ; + rdfs:subClassOf linkml_common:Entity ; + skos:definition "An entity that is not a physical object, process, or information" ; + skos:exactMatch schema:Intangible ; + skos:inScheme linkml_common:core . + linkml_common:Event a owl:Class ; rdfs:label "Event" ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:starts_at ], + owl:onProperty linkml_common:happens_at ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml_common:has_duration ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:TimePoint ; owl:onProperty linkml_common:ends_at ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:ends_at ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:TimePoint ; + owl:minCardinality 0 ; owl:onProperty linkml_common:ends_at ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:TimePoint ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:starts_at ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml_common:has_interval ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:TemporalInterval ; + owl:onProperty linkml_common:has_interval ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:has_duration ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:starts_at ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:has_interval ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:TimePoint ; + owl:onProperty linkml_common:happens_at ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Duration ; + owl:onProperty linkml_common:has_duration ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:happens_at ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:TimePoint ; owl:onProperty linkml_common:starts_at ], linkml_common:NamedThing ; skos:definition "A thing that happens" ; @@ -1310,62 +1679,133 @@ linkml_common:HealthcareEncounterClassification a owl:Class ; , . +linkml_common:TimePoint a owl:Class ; + rdfs:label "TimePoint" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:datetime_value ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:marker_event ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:time_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:description ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:description ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:date_value ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:dateTime ; + owl:onProperty linkml_common:datetime_value ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:time ; + owl:onProperty linkml_common:time_value ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:description ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:datetime_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:marker_event ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Event ; + owl:onProperty linkml_common:marker_event ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:year_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:date_value ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:date ; + owl:onProperty linkml_common:date_value ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:integer ; + owl:onProperty linkml_common:year_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:year_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:time_value ], + linkml_common:TimePointOrTemporalInterval ; + skos:definition "A point in time. Can be fully specified, or specified in relative terms." ; + skos:exactMatch ; + skos:inScheme linkml_common:time . + linkml_common:Quantity a owl:Class ; rdfs:label "Quantity" ; - rdfs:subClassOf linkml_common:Intangible ; - skos:exactMatch ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:has_quantity_kind ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:QuantityKind ; + owl:onProperty linkml_common:has_quantity_kind ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:has_quantity_kind ], + linkml_common:Intangible ; + skos:exactMatch , + schema:Quantity ; skos:inScheme linkml_common:quantities . linkml_common:NamedThing a owl:Class ; rdfs:label "NamedThing" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Concept ; - owl:onProperty linkml_common:ontology_types ], + owl:allValuesFrom xsd:anyURI ; + owl:onProperty linkml_common:id ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:type ], + owl:onProperty linkml_common:subtype ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:name ], + owl:onProperty linkml_common:type ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:description ], - [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml_common:id ], + owl:onProperty linkml_common:name ], [ a owl:Restriction ; - owl:allValuesFrom xsd:anyURI ; - owl:onProperty linkml_common:id ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:name ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:id ], + owl:onProperty linkml_common:description ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:ontology_types ], + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:type ], [ a owl:Restriction ; owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:name ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:description ], + owl:onProperty linkml_common:ontology_types ], [ a owl:Restriction ; owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:subtype ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml_common:id ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml_common:subtype ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:name ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:type ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:type ], + owl:onProperty linkml_common:description ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:subtype ], + owl:allValuesFrom linkml_common:Concept ; + owl:onProperty linkml_common:ontology_types ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty linkml_common:id ], [ a owl:Restriction ; owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:description ], @@ -1379,49 +1819,69 @@ linkml_common:type a owl:DatatypeProperty ; skos:inScheme linkml_common:core . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:CompositeFoodType ; + rdfs:subClassOf linkml_common:Measurement ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:CompositeFoodType . + owl:someValuesFrom linkml_common:Measurement . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Ratio ; + rdfs:subClassOf linkml_common:MaterialProcessing ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Ratio . + owl:someValuesFrom linkml_common:MaterialProcessing . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:LifeEvent ; + rdfs:subClassOf linkml_common:Specification ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:LifeEvent . + owl:someValuesFrom linkml_common:Specification . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:EngineeringProcess ; + rdfs:subClassOf linkml_common:Publication ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:EngineeringProcess . + owl:someValuesFrom linkml_common:Publication . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:MoneyQuantity ; + rdfs:subClassOf linkml_common:InvestigativeProcess ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:MoneyQuantity . + owl:someValuesFrom linkml_common:InvestigativeProcess . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Organization ; + rdfs:subClassOf linkml_common:UnitConcept ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Organization . + owl:someValuesFrom linkml_common:UnitConcept . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:ClinicalCohort ; + rdfs:subClassOf linkml_common:Relationship ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:ClinicalCohort . + owl:someValuesFrom linkml_common:Relationship . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Landform ; + rdfs:subClassOf linkml_common:Collection ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Landform . + owl:someValuesFrom linkml_common:Collection . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:EngineeringMaterialProcessing ; + rdfs:subClassOf linkml_common:HealthcareSite ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:EngineeringMaterialProcessing . + owl:someValuesFrom linkml_common:HealthcareSite . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:FoodTypeConcept ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:FoodTypeConcept . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:SampleCollectionProcess ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:SampleCollectionProcess . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:CreativeWork ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:CreativeWork . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Service ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Service . [] a owl:Restriction ; rdfs:subClassOf linkml_common:MaterialCollection ; @@ -1429,55 +1889,75 @@ linkml_common:type a owl:DatatypeProperty ; owl:someValuesFrom linkml_common:MaterialCollection . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:NamedThing ; + rdfs:subClassOf linkml_common:EngineeringMaterialProcessing ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:NamedThing . + owl:someValuesFrom linkml_common:EngineeringMaterialProcessing . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:SampleProcessing ; + rdfs:subClassOf linkml_common:EngineeringSpecification ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:SampleProcessing . + owl:someValuesFrom linkml_common:EngineeringSpecification . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Event ; + rdfs:subClassOf linkml_common:Patient ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Event . + owl:someValuesFrom linkml_common:Patient . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:PostalAddress ; + rdfs:subClassOf linkml_common:FinancialProduct ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:PostalAddress . + owl:someValuesFrom linkml_common:FinancialProduct . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Measurement ; + rdfs:subClassOf linkml_common:HealthcareRole ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Measurement . + owl:someValuesFrom linkml_common:HealthcareRole . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:QuantityRange ; + rdfs:subClassOf linkml_common:BasicFoodType ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:QuantityRange . + owl:someValuesFrom linkml_common:BasicFoodType . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:FoodRecipe ; + rdfs:subClassOf linkml_common:ClinicalCohortEnrollment ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:FoodRecipe . + owl:someValuesFrom linkml_common:ClinicalCohortEnrollment . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:SampleCollectionProcess ; + rdfs:subClassOf linkml_common:Landform ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:SampleCollectionProcess . + owl:someValuesFrom linkml_common:Landform . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:DataStructure ; + rdfs:subClassOf linkml_common:TimePoint ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:DataStructure . + owl:someValuesFrom linkml_common:TimePoint . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:SimpleQuantity ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:SimpleQuantity . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:FinancialAccount ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:FinancialAccount . [] a owl:Restriction ; rdfs:subClassOf linkml_common:Observation ; owl:onProperty linkml_common:type ; owl:someValuesFrom linkml_common:Observation . +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:SampleProcessing ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:SampleProcessing . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:ClinicalCohort ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:ClinicalCohort . + [] a owl:Restriction ; rdfs:subClassOf linkml_common:SampleMaterial ; owl:onProperty linkml_common:type ; @@ -1489,64 +1969,84 @@ linkml_common:type a owl:DatatypeProperty ; owl:someValuesFrom linkml_common:Quantity . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:InformationEntity ; + rdfs:subClassOf linkml_common:PostalAddress ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:InformationEntity . + owl:someValuesFrom linkml_common:PostalAddress . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:SimpleQuantity ; + rdfs:subClassOf linkml_common:FoodIngredient ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:SimpleQuantity . + owl:someValuesFrom linkml_common:FoodIngredient . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:BasicFoodType ; + rdfs:subClassOf linkml_common:HealthcareOrganization ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:BasicFoodType . + owl:someValuesFrom linkml_common:HealthcareOrganization . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:UnitConcept ; + rdfs:subClassOf linkml_common:HealthcareEncounter ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:UnitConcept . + owl:someValuesFrom linkml_common:HealthcareEncounter . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:RawMaterial ; + rdfs:subClassOf linkml_common:PhysicalDevice ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:RawMaterial . + owl:someValuesFrom linkml_common:PhysicalDevice . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:FoodIngredient ; + rdfs:subClassOf linkml_common:QuantityRange ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:FoodIngredient . + owl:someValuesFrom linkml_common:QuantityRange . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:EngineeringSpecification ; + rdfs:subClassOf linkml_common:TemporalRelationship ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:EngineeringSpecification . + owl:someValuesFrom linkml_common:TemporalRelationship . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:FoodTypeConcept ; + rdfs:subClassOf linkml_common:Organization ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:FoodTypeConcept . + owl:someValuesFrom linkml_common:Organization . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:HealthcareConditionOccurrence ; + rdfs:subClassOf linkml_common:FoodRecipe ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:HealthcareConditionOccurrence . + owl:someValuesFrom linkml_common:FoodRecipe . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Investigation ; + rdfs:subClassOf linkml_common:AutomatedAgent ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Investigation . + owl:someValuesFrom linkml_common:AutomatedAgent . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Person ; + rdfs:subClassOf linkml_common:Place ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Person . + owl:someValuesFrom linkml_common:Place . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:MaterialProcessing ; + rdfs:subClassOf linkml_common:TemporalInterval ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:MaterialProcessing . + owl:someValuesFrom linkml_common:TemporalInterval . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Intangible ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Intangible . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:MoneyQuantity ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:MoneyQuantity . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Event ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Event . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Variable ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Variable . [] a owl:Restriction ; rdfs:subClassOf linkml_common:Concept ; @@ -1554,69 +2054,69 @@ linkml_common:type a owl:DatatypeProperty ; owl:someValuesFrom linkml_common:Concept . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Entity ; + rdfs:subClassOf linkml_common:Dataset ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Entity . + owl:someValuesFrom linkml_common:Dataset . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Intangible ; + rdfs:subClassOf linkml_common:ClinicalCohortDefinition ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Intangible . + owl:someValuesFrom linkml_common:ClinicalCohortDefinition . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Procedure ; + rdfs:subClassOf linkml_common:Entity ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Procedure . + owl:someValuesFrom linkml_common:Entity . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Publication ; + rdfs:subClassOf linkml_common:StudyDesign ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Publication . + owl:someValuesFrom linkml_common:StudyDesign . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Collection ; + rdfs:subClassOf linkml_common:DataStructure ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Collection . + owl:someValuesFrom linkml_common:DataStructure . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:ClinicalCohortEnrollment ; + rdfs:subClassOf linkml_common:Duration ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:ClinicalCohortEnrollment . + owl:someValuesFrom linkml_common:Duration . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:CurrencyConcept ; + rdfs:subClassOf linkml_common:Ratio ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:CurrencyConcept . + owl:someValuesFrom linkml_common:Ratio . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:HealthcareSite ; + rdfs:subClassOf linkml_common:CompositeFoodType ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:HealthcareSite . + owl:someValuesFrom linkml_common:CompositeFoodType . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:ClinicalCohortDefinition ; + rdfs:subClassOf linkml_common:Role ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:ClinicalCohortDefinition . + owl:someValuesFrom linkml_common:Role . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:XProcess ; + rdfs:subClassOf linkml_common:HealthcareConditionOccurrence ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:XProcess . + owl:someValuesFrom linkml_common:HealthcareConditionOccurrence . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:InvestigativeProcess ; + rdfs:subClassOf linkml_common:TimePointOrTemporalInterval ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:InvestigativeProcess . + owl:someValuesFrom linkml_common:TimePointOrTemporalInterval . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Place ; + rdfs:subClassOf linkml_common:EngineeringProcess ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Place . + owl:someValuesFrom linkml_common:EngineeringProcess . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Variable ; + rdfs:subClassOf linkml_common:InvestigativeProtocol ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Variable . + owl:someValuesFrom linkml_common:InvestigativeProtocol . [] a owl:Restriction ; rdfs:subClassOf linkml_common:DataGenerationFromSample ; @@ -1624,24 +2124,24 @@ linkml_common:type a owl:DatatypeProperty ; owl:someValuesFrom linkml_common:DataGenerationFromSample . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:FoodProcessing ; + rdfs:subClassOf linkml_common:QuantityKind ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:FoodProcessing . + owl:someValuesFrom linkml_common:QuantityKind . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:HealthcareOrganization ; + rdfs:subClassOf linkml_common:HealthcareProvider ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:HealthcareOrganization . + owl:someValuesFrom linkml_common:HealthcareProvider . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:PhysicalDevice ; + rdfs:subClassOf linkml_common:NamedThing ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:PhysicalDevice . + owl:someValuesFrom linkml_common:NamedThing . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:InvestigativeProtocol ; + rdfs:subClassOf linkml_common:EnvironmentalSite ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:InvestigativeProtocol . + owl:someValuesFrom linkml_common:EnvironmentalSite . [] a owl:Restriction ; rdfs:subClassOf linkml_common:PlannedProcess ; @@ -1649,7 +2149,47 @@ linkml_common:type a owl:DatatypeProperty ; owl:someValuesFrom linkml_common:PlannedProcess . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:HealthcareEncounter ; + rdfs:subClassOf linkml_common:Person ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:HealthcareEncounter . + owl:someValuesFrom linkml_common:Person . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:RawMaterial ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:RawMaterial . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:CurrencyConcept ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:CurrencyConcept . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Procedure ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Procedure . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:FoodProcessing ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:FoodProcessing . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:InformationEntity ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:InformationEntity . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:LifeEvent ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:LifeEvent . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Agent ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Agent . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Investigation ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Investigation . diff --git a/project/prefixmap/linkml_common.yaml b/project/prefixmap/linkml_common.yaml index 21ae515..7fb68e5 100644 --- a/project/prefixmap/linkml_common.yaml +++ b/project/prefixmap/linkml_common.yaml @@ -1,17 +1,27 @@ { + "BFO": "http://purl.obolibrary.org/obo/BFO_", "ENVO": "http://purl.obolibrary.org/obo/ENVO_", + "IAO": "http://purl.obolibrary.org/obo/IAO_", + "OBI": "http://purl.obolibrary.org/obo/OBI_", "PATO": "http://purl.obolibrary.org/obo/PATO_", "UCUM": "http://example.org/UNKNOWN/UCUM/", "UO": "http://example.org/UNKNOWN/UO/", "biolink": "https://w3id.org/biolink/", + "dcterms": "http://purl.org/dc/terms/", "example": "https://example.org/", "fhir": "http://hl7.org/fhir/", + "fibo": "http://example.org/UNKNOWN/fibo/", + "fibo.DatesAndTimes": "https://www.omg.org/spec/Commons/DatesAndTimes/", + "fibo.QuantitiesAndUnits": "https://www.omg.org/spec/Commons/QuantitiesAndUnits/", + "fibo.commons.PartiesAndSituations": "https://spec.edmcouncil.org/fibo/ontology/FBC/ommons/PartiesAndSituations/", "linkml": "https://w3id.org/linkml/", "linkml_common": "https://w3id.org/linkml-common/", "nmdcschema": "http://example.org/UNKNOWN/nmdcschema/", "omopschema": "http://example.org/omop/", - "qudt": "http://example.org/UNKNOWN/qudt/", - "rdf": "http://example.org/UNKNOWN/rdf/", + "prov": "http://www.w3.org/ns/prov#", + "qudt": "http://qudt.org/vocab/unit/", + "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", + "rdfs": "http://www.w3.org/2000/01/rdf-schema#", "schema": "http://schema.org/", "Any": { "@id": "linkml:Any" @@ -37,6 +47,9 @@ "Ratio": { "@id": "fhir:Ratio" }, + "Role": { + "@id": "schema:Role" + }, "SimpleQuantity": { "@id": "fhir:SimpleQuantity" } diff --git a/project/protobuf/linkml_common.proto b/project/protobuf/linkml_common.proto index 2058c47..1914513 100644 --- a/project/protobuf/linkml_common.proto +++ b/project/protobuf/linkml_common.proto @@ -1,3 +1,23 @@ +// Represents an Agent +message Agent + { + uriorcurie id = 0 + string name = 0 + string type = 0 + string subtype = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } +// Represents an Automated Agent +message AutomatedAgent + { + uriorcurie id = 0 + string name = 0 + string type = 0 + string subtype = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } message BasicFoodType { uriorcurie id = 0 @@ -7,6 +27,7 @@ message BasicFoodType repeated concept ontologyTypes = 0 string description = 0 } +// A group of patients who share a common set of characteristics message ClinicalCohort { uriorcurie id = 0 @@ -17,6 +38,7 @@ message ClinicalCohort string description = 0 clinicalCohortDefinition definition = 0 } +// A definition of a clinical cohort message ClinicalCohortDefinition { uriorcurie id = 0 @@ -26,6 +48,7 @@ message ClinicalCohortDefinition repeated concept ontologyTypes = 0 string description = 0 } +// An event relating a patient to a clinical cohort message ClinicalCohortEnrollment { uriorcurie id = 0 @@ -36,6 +59,9 @@ message ClinicalCohortEnrollment string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 patient patient = 0 clinicalCohort cohort = 0 } @@ -63,6 +89,23 @@ message Concept repeated concept ontologyTypes = 0 string description = 0 } +// The most generic kind of creative work, including books, movies, photographs, software programs, etc. +message CreativeWork + { + uriorcurie id = 0 + string name = 0 + string type = 0 + string subtype = 0 + repeated concept ontologyTypes = 0 + string description = 0 + string title = 0 + string abstract = 0 + string rights = 0 + repeated agent creators = 0 + repeated agent contributors = 0 + repeated agent contacts = 0 + repeated string keywords = 0 + } message DataGenerationFromSample { uriorcurie id = 0 @@ -73,14 +116,40 @@ message DataGenerationFromSample string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 physicalDevice usesPhysicalDevice = 0 investigativeProtocol followsProcedure = 0 investigation partOf = 0 } +message Dataset + { + uriorcurie id = 0 + string name = 0 + string type = 0 + string subtype = 0 + repeated concept ontologyTypes = 0 + string description = 0 + string title = 0 + string abstract = 0 + string rights = 0 + repeated agent creators = 0 + repeated agent contributors = 0 + repeated agent contacts = 0 + repeated string keywords = 0 + repeated investigation collectedAsPartOf = 0 + } message DataStructure { string type = 0 } +// A length of time +message Duration + { + string type = 0 + quantityKind hasQuantityKind = 0 + } message EngineeringMaterialProcessing { uriorcurie id = 0 @@ -91,6 +160,9 @@ message EngineeringMaterialProcessing string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 procedure followsProcedure = 0 physicalDevice usesPhysicalDevice = 0 } @@ -104,6 +176,9 @@ message EngineeringProcess string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 engineeringSpecification followsProcedure = 0 engineeringProcess partOf = 0 } @@ -116,6 +191,18 @@ message EngineeringSpecification repeated concept ontologyTypes = 0 string description = 0 } +// A location or site that is the subject of environmental monitoring +message EnvironmentalSite + { + uriorcurie id = 0 + string name = 0 + string type = 0 + string subtype = 0 + repeated concept ontologyTypes = 0 + string description = 0 + postalAddress address = 0 + geoPointLocation geolocation = 0 + } // A thing that happens message Event { @@ -127,10 +214,14 @@ message Event string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 } message FoodIngredient { string type = 0 + quantityKind hasQuantityKind = 0 } message FoodProcessing { @@ -142,6 +233,9 @@ message FoodProcessing string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 procedure followsProcedure = 0 physicalDevice usesPhysicalDevice = 0 } @@ -181,6 +275,9 @@ message HealthcareConditionOccurrence string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 patient patient = 0 healthcareEncounter observedDuring = 0 } @@ -193,6 +290,9 @@ message HealthcareEncounter string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 patient patient = 0 healthcareProvider provider = 0 healthcareEncounterClassification subtype = 0 @@ -208,12 +308,14 @@ message HealthcareOrganization } message HealthcareProvider { + string type = 0 person isPerson = 0 concept speciality = 0 healthcareSite careSite = 0 } message HealthcareRole { + string type = 0 person isPerson = 0 } message HealthcareSite @@ -252,6 +354,7 @@ message Investigation repeated concept ontologyTypes = 0 string description = 0 string objectives = 0 + repeated variable variables = 0 } message InvestigativeProcess { @@ -263,6 +366,9 @@ message InvestigativeProcess string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 physicalDevice usesPhysicalDevice = 0 investigativeProtocol followsProcedure = 0 investigation partOf = 0 @@ -298,6 +404,9 @@ message LifeEvent string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 } message MaterialCollection { @@ -309,6 +418,9 @@ message MaterialCollection string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 procedure followsProcedure = 0 physicalDevice usesPhysicalDevice = 0 } @@ -322,6 +434,9 @@ message MaterialProcessing string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 procedure followsProcedure = 0 physicalDevice usesPhysicalDevice = 0 } @@ -365,6 +480,7 @@ message Organization } message Patient { + string type = 0 person isPerson = 0 } // Represents a Person @@ -402,6 +518,7 @@ message Place postalAddress address = 0 geoPointLocation geolocation = 0 } +// A process that follows a defined procedure or plan message PlannedProcess { uriorcurie id = 0 @@ -412,6 +529,9 @@ message PlannedProcess string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 procedure followsProcedure = 0 physicalDevice usesPhysicalDevice = 0 } @@ -444,10 +564,27 @@ message Publication string subtype = 0 repeated concept ontologyTypes = 0 string description = 0 + string title = 0 + string abstract = 0 + string rights = 0 + repeated agent creators = 0 + repeated agent contributors = 0 + repeated agent contacts = 0 + repeated string keywords = 0 } message Quantity { string type = 0 + quantityKind hasQuantityKind = 0 + } +message QuantityKind + { + uriorcurie id = 0 + string name = 0 + string type = 0 + string subtype = 0 + repeated concept ontologyTypes = 0 + string description = 0 } // A quantity range is a property that can be measured or counted message QuantityRange @@ -460,6 +597,7 @@ message QuantityRange message Ratio { string type = 0 + quantityKind hasQuantityKind = 0 quantity numerator = 0 quantity denominator = 0 } @@ -482,6 +620,9 @@ message SampleCollectionProcess string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 physicalDevice usesPhysicalDevice = 0 investigativeProtocol followsProcedure = 0 investigation partOf = 0 @@ -507,24 +648,77 @@ message SampleProcessing string description = 0 timePoint startsAt = 0 timePoint endsAt = 0 + timePoint happensAt = 0 + temporalInterval hasInterval = 0 + duration hasDuration = 0 procedure followsProcedure = 0 physicalDevice usesPhysicalDevice = 0 } +// A service provided by an organization +message Service + { + string type = 0 + } // A quantity is a property that can be measured or counted message SimpleQuantity { string type = 0 + quantityKind hasQuantityKind = 0 float value = 0 unitConcept unit = 0 } +// A specification of a thing +message Specification + { + uriorcurie id = 0 + string name = 0 + string type = 0 + string subtype = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } +message StudyDesign + { + uriorcurie id = 0 + string name = 0 + string type = 0 + string subtype = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } +// A period of time +message TemporalInterval + { + string type = 0 + timePoint startsAt = 0 + timePoint endsAt = 0 + } +// A relationship to another time point +message TemporalRelationship + { + string type = 0 + relativeTimeEnum predicate = 0 + entity relativeTo = 0 + } +// A point in time. Can be fully specified, or specified in relative terms. message TimePoint { + string type = 0 + timePoint startsAt = 0 + timePoint endsAt = 0 + integer yearValue = 0 date dateValue = 0 time timeValue = 0 datetime datetimeValue = 0 event markerEvent = 0 string description = 0 } +message TimePointOrTemporalInterval + { + string type = 0 + timePoint startsAt = 0 + timePoint endsAt = 0 + } message UnitConcept { uriorcurie id = 0 @@ -547,8 +741,3 @@ message Variable string type = 0 repeated unitConcept allowedUnits = 0 } -// A series of actions or steps taken in order to achieve a particular end -message XProcess - { - string type = 0 - } diff --git a/project/shacl/linkml_common.shacl.ttl b/project/shacl/linkml_common.shacl.ttl index 7c8913a..9cbc671 100644 --- a/project/shacl/linkml_common.shacl.ttl +++ b/project/shacl/linkml_common.shacl.ttl @@ -2,7 +2,7 @@ @prefix linkml: . @prefix linkml_common: . @prefix rdf: . -@prefix schema1: . +@prefix schema: . @prefix sh: . @prefix xsd: . @@ -10,29 +10,41 @@ sh:closed true ; sh:description "A quantity of money" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:property [ sh:class linkml_common:QuantityKind ; + sh:description "The kind of quantity" ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 2 ; + sh:path linkml_common:has_quantity_kind ], + [ sh:datatype xsd:float ; + sh:description "The value of the quantity" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:value ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 3 ; sh:path linkml_common:type ], [ sh:class linkml_common:CurrencyConcept ; sh:description "The currency of the quantity" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 1 ; - sh:path linkml_common:unit ], - [ sh:datatype xsd:float ; - sh:description "The value of the quantity" ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml_common:value ] ; + sh:path linkml_common:unit ] ; sh:targetClass . a sh:NodeShape ; sh:closed true ; sh:description "A quantity range is a property that can be measured or counted" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:class ; + sh:description "The lower bound of the range" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml_common:lower_bound ], + [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 2 ; @@ -42,30 +54,30 @@ sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 1 ; - sh:path linkml_common:upper_bound ], - [ sh:class ; - sh:description "The lower bound of the range" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml_common:lower_bound ] ; + sh:path linkml_common:upper_bound ] ; sh:targetClass . a sh:NodeShape ; sh:closed true ; sh:description "A tuple of two quantities" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class ; - sh:description "The denominator of the ratio" ; + sh:property [ sh:class linkml_common:QuantityKind ; + sh:description "The kind of quantity" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml_common:denominator ], + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:has_quantity_kind ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 2 ; + sh:order 3 ; sh:path linkml_common:type ], + [ sh:class ; + sh:description "The denominator of the ratio" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml_common:denominator ], [ sh:class ; sh:description "The numerator of the ratio" ; sh:maxCount 1 ; @@ -83,19 +95,25 @@ sh:maxCount 1 ; sh:order 0 ; sh:path linkml_common:value ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:type ], [ sh:class linkml_common:UnitConcept ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 1 ; sh:path linkml_common:unit ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + [ sh:class linkml_common:QuantityKind ; + sh:description "The kind of quantity" ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 2 ; - sh:path linkml_common:type ] ; + sh:path linkml_common:has_quantity_kind ] ; sh:targetClass . -schema1:Intangible a sh:NodeShape ; +schema:Intangible a sh:NodeShape ; sh:closed true ; sh:description "An entity that is not a physical object, process, or information" ; sh:ignoredProperties ( rdf:type ) ; @@ -104,111 +122,138 @@ schema1:Intangible a sh:NodeShape ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml_common:type ] ; - sh:targetClass schema1:Intangible . + sh:targetClass schema:Intangible . -schema1:Place a sh:NodeShape ; +schema:Place a sh:NodeShape ; sh:closed true ; sh:description "Entities that have a somewhat fixed, physical extension." ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path schema1:description ], - [ sh:class linkml_common:GeoPointLocation ; - sh:description "The geolocation of the place" ; + sh:order 4 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:ontology_types ], + [ sh:class schema:PostalAddress ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml_common:geolocation ], + sh:order 0 ; + sh:path linkml_common:address ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 2 ; + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 5 ; sh:path linkml_common:subtype ], - [ sh:description "A unique identifier for a thing" ; + [ sh:class linkml_common:GeoPointLocation ; + sh:description "The geolocation of the place" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 2 ; - sh:path schema1:identifier ], + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml_common:geolocation ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path schema:description ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 3 ; - sh:path schema1:name ], - [ sh:class schema1:PostalAddress ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml_common:address ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path linkml_common:ontology_types ], - [ sh:datatype xsd:string ; + sh:path schema:name ] ; + sh:targetClass schema:Place . + +schema:Role a sh:NodeShape ; + sh:closed false ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 4 ; + sh:order 0 ; sh:path linkml_common:type ] ; - sh:targetClass schema1:Place . + sh:targetClass schema:Role . -linkml_common:BasicFoodType a sh:NodeShape ; +linkml_common:AutomatedAgent a sh:NodeShape ; sh:closed true ; + sh:description "Represents an Automated Agent" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path schema1:name ], - [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema1:description ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ], + sh:path schema:description ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path schema:name ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema1:identifier ], + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:subtype ] ; - sh:targetClass linkml_common:BasicFoodType . + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ] ; + sh:targetClass linkml_common:AutomatedAgent . -linkml_common:ClinicalCohortEnrollment a sh:NodeShape ; +linkml_common:BasicFoodType a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:ClinicalCohort ; + sh:property [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path schema:description ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; sh:order 1 ; - sh:path linkml_common:cohort ], + sh:path schema:name ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 8 ; + sh:order 4 ; sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:name ], + sh:order 3 ; + sh:path linkml_common:subtype ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 4 ; - sh:path schema1:identifier ], - [ sh:class linkml_common:Patient ; + sh:order 0 ; + sh:path schema:identifier ] ; + sh:targetClass linkml_common:BasicFoodType . + +linkml_common:ClinicalCohortEnrollment a sh:NodeShape ; + sh:closed true ; + sh:description "An event relating a patient to a clinical cohort" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:Patient ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 0 ; @@ -218,42 +263,76 @@ linkml_common:ClinicalCohortEnrollment a sh:NodeShape ; sh:nodeKind sh:BlankNode ; sh:order 2 ; sh:path linkml_common:starts_at ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path schema:description ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml_common:ontology_types ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:has_duration ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml_common:subtype ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 3 ; sh:path linkml_common:ends_at ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml_common:happens_at ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:order 7 ; - sh:path linkml_common:subtype ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:path schema:identifier ], + [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml_common:type ], + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml_common:has_interval ], [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ] ; + sh:order 8 ; + sh:path schema:name ], + [ sh:class linkml_common:ClinicalCohort ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:cohort ] ; sh:targetClass linkml_common:ClinicalCohortEnrollment . linkml_common:Collection a sh:NodeShape ; sh:closed true ; sh:description "A group of things. The collection may be heterogeneous or homogeneous." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml_common:type ], - [ sh:class schema1:Thing ; + sh:property [ sh:class schema:Thing ; sh:description "The members of the collection" ; sh:nodeKind sh:BlankNode ; sh:order 0 ; - sh:path linkml_common:members ] ; + sh:path linkml_common:members ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:type ] ; sh:targetClass linkml_common:Collection . linkml_common:CompositeFoodType a sh:NodeShape ; @@ -263,26 +342,26 @@ linkml_common:CompositeFoodType a sh:NodeShape ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:subtype ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema1:identifier ], + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema1:description ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:subtype ], + sh:path schema:description ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema1:name ], + sh:path schema:name ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; @@ -290,63 +369,147 @@ linkml_common:CompositeFoodType a sh:NodeShape ; sh:path linkml_common:type ] ; sh:targetClass linkml_common:CompositeFoodType . -linkml_common:DataGenerationFromSample a sh:NodeShape ; +linkml_common:CreativeWork a sh:NodeShape ; sh:closed true ; + sh:description "The most generic kind of creative work, including books, movies, photographs, software programs, etc." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; - sh:maxCount 1 ; - sh:order 10 ; - sh:path schema1:description ], - [ sh:class linkml_common:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml_common:starts_at ], - [ sh:class linkml_common:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml_common:ends_at ], - [ sh:class linkml_common:Investigation ; - sh:maxCount 1 ; + sh:property [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:part_of ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:order 11 ; + sh:path linkml_common:ontology_types ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:order 7 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:Concept ; + sh:path schema:identifier ], + [ sh:class linkml_common:Agent ; + sh:description "A person or organization that contributed to the creation of the work" ; sh:nodeKind sh:IRI ; - sh:order 9 ; - sh:path linkml_common:ontology_types ], + sh:order 4 ; + sh:path ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 8 ; - sh:path linkml_common:subtype ], + sh:path schema:name ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "Information about rights held in and over the item" ; sh:maxCount 1 ; - sh:order 6 ; - sh:path schema1:name ], - [ sh:class linkml_common:InvestigativeProtocol ; + sh:order 2 ; + sh:path linkml_common:rights ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Agent ; + sh:description "The person or organization who created the work" ; sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path ], + [ sh:datatype xsd:string ; + sh:description "The title of the item" ; + sh:maxCount 1 ; sh:order 0 ; - sh:path linkml_common:follows_procedure ], + sh:path linkml_common:title ], + [ sh:datatype xsd:string ; + sh:description "A summary of the item" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:abstract ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path schema:description ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe this item" ; + sh:order 6 ; + sh:path schema:keywords ], + [ sh:class linkml_common:Agent ; + sh:description "A contact point for a person or organization" ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path schema:contactPoint ] ; + sh:targetClass linkml_common:CreativeWork . + +linkml_common:DataGenerationFromSample a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 13 ; + sh:path schema:description ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml_common:has_duration ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path schema:name ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml_common:type ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 8 ; + sh:path schema:identifier ], [ sh:class linkml_common:PhysicalDevice ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 2 ; sh:path linkml_common:uses_physical_device ], - [ sh:description "A unique identifier for a thing" ; + [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; - sh:minCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 5 ; - sh:path schema1:identifier ] ; + sh:path linkml_common:happens_at ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:Investigation ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:part_of ], + [ sh:class linkml_common:InvestigativeProtocol ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:follows_procedure ] ; sh:targetClass linkml_common:DataGenerationFromSample . linkml_common:DataStructure a sh:NodeShape ; @@ -359,227 +522,419 @@ linkml_common:DataStructure a sh:NodeShape ; sh:path linkml_common:type ] ; sh:targetClass linkml_common:DataStructure . -linkml_common:EngineeringMaterialProcessing a sh:NodeShape ; +linkml_common:Dataset a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ], - [ sh:class linkml_common:TimePoint ; + sh:order 13 ; + sh:path schema:description ], + [ sh:datatype xsd:string ; + sh:description "Information about rights held in and over the item" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 3 ; - sh:path linkml_common:ends_at ], + sh:path linkml_common:rights ], + [ sh:class linkml_common:Agent ; + sh:description "The person or organization who created the work" ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:order 7 ; + sh:order 11 ; sh:path linkml_common:subtype ], - [ sh:class linkml_common:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml_common:starts_at ], - [ sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 4 ; - sh:path schema1:identifier ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 6 ; + sh:order 10 ; sh:path linkml_common:type ], + [ sh:datatype xsd:string ; + sh:description "A summary of the item" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:abstract ], + [ sh:class linkml_common:Agent ; + sh:description "A contact point for a person or organization" ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path schema:contactPoint ], + [ sh:datatype xsd:string ; + sh:description "The title of the item" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:title ], + [ sh:class linkml_common:Investigation ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:collected_as_part_of ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe this item" ; + sh:order 7 ; + sh:path schema:keywords ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; + sh:order 9 ; + sh:path schema:name ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 8 ; + sh:path schema:identifier ], + [ sh:class linkml_common:Agent ; + sh:description "A person or organization that contributed to the creation of the work" ; + sh:nodeKind sh:IRI ; sh:order 5 ; - sh:path schema1:name ], + sh:path ] ; + sh:targetClass linkml_common:Dataset . + +linkml_common:EngineeringMaterialProcessing a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path schema:name ], + [ sh:class linkml_common:PhysicalDevice ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:uses_physical_device ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path schema:description ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:has_duration ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 8 ; + sh:order 11 ; sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml_common:type ], [ sh:class linkml_common:Procedure ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml_common:follows_procedure ], - [ sh:class linkml_common:PhysicalDevice ; + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:uses_physical_device ] ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml_common:starts_at ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml_common:subtype ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml_common:happens_at ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 7 ; + sh:path schema:identifier ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml_common:has_interval ] ; sh:targetClass linkml_common:EngineeringMaterialProcessing . +linkml_common:EnvironmentalMonitoring a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:targetClass linkml_common:EnvironmentalMonitoring . + linkml_common:EnvironmentalProcess a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; sh:targetClass linkml_common:EnvironmentalProcess . -linkml_common:FoodRecipe a sh:NodeShape ; +linkml_common:EnvironmentalSite a sh:NodeShape ; sh:closed true ; + sh:description "A location or site that is the subject of environmental monitoring" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path schema1:name ], - [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 5 ; sh:path linkml_common:subtype ], - [ sh:class linkml_common:FoodProcessing ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:steps ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 2 ; + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 4 ; sh:path linkml_common:type ], + [ sh:class schema:PostalAddress ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml_common:address ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path schema:name ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 7 ; - sh:path schema1:description ], - [ sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 2 ; - sh:path schema1:identifier ], - [ sh:class linkml_common:FoodIngredient ; - sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml_common:ingredients ], + sh:path schema:description ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 6 ; - sh:path linkml_common:ontology_types ] ; - sh:targetClass linkml_common:FoodRecipe . + sh:path linkml_common:ontology_types ], + [ sh:class linkml_common:GeoPointLocation ; + sh:description "The geolocation of the place" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml_common:geolocation ] ; + sh:targetClass linkml_common:EnvironmentalSite . -linkml_common:FoodTypeConcept a sh:NodeShape ; +linkml_common:FinancialAccount a sh:NodeShape ; sh:closed true ; + sh:description "A bank account" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "The account number" ; sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:account_number ], + [ sh:class linkml_common:Person ; + sh:description "The person or organization that holds the account" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 2 ; - sh:path linkml_common:type ], + sh:path linkml_common:account_holder ], [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Organization ; + sh:description "The bank that holds the account" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:bank ] ; + sh:targetClass linkml_common:FinancialAccount . + +linkml_common:FinancialProduct a sh:NodeShape ; + sh:closed true ; + sh:description "A product or service offered by a bank whereby one may deposit, withdraw or transfer money and in some cases be paid interest." ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:FinancialProduct . + +linkml_common:FoodRecipe a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:description ], + sh:order 7 ; + sh:path schema:description ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 0 ; - sh:path schema1:identifier ], + sh:order 2 ; + sh:path schema:identifier ], + [ sh:class linkml_common:FoodProcessing ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:steps ], [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path schema:name ], + [ sh:class linkml_common:FoodIngredient ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml_common:ingredients ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:subtype ] ; + sh:targetClass linkml_common:FoodRecipe . + +linkml_common:FoodTypeConcept a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml_common:ontology_types ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path schema:identifier ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema1:name ], + sh:path schema:name ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 3 ; - sh:path linkml_common:subtype ] ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path schema:description ] ; sh:targetClass linkml_common:FoodTypeConcept . linkml_common:HealthcareConditionOccurrence a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Patient ; + sh:property [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml_common:ontology_types ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 7 ; + sh:path schema:identifier ], + [ sh:class linkml_common:HealthcareEncounter ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:observed_during ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml_common:subtype ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:Patient ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 0 ; sh:path linkml_common:patient ], - [ sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 4 ; - sh:path schema1:identifier ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 6 ; + sh:order 9 ; sh:path linkml_common:type ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml_common:starts_at ], + sh:order 4 ; + sh:path linkml_common:happens_at ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:name ], + sh:order 12 ; + sh:path schema:description ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml_common:subtype ], - [ sh:class linkml_common:TimePoint ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml_common:ends_at ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; sh:order 8 ; - sh:path linkml_common:ontology_types ], - [ sh:class linkml_common:HealthcareEncounter ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:observed_during ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:path schema:name ], + [ sh:class linkml_common:Duration ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ] ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:has_duration ] ; sh:targetClass linkml_common:HealthcareConditionOccurrence . linkml_common:HealthcareOrganization a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:type ], - [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema1:name ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ], + sh:path schema:name ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema1:description ], - [ sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path schema1:identifier ] ; + sh:path schema:description ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ] ; sh:targetClass linkml_common:HealthcareOrganization . linkml_common:HealthcareRole a sh:NodeShape ; @@ -589,7 +944,12 @@ linkml_common:HealthcareRole a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path linkml_common:is_person ] ; + sh:path linkml_common:is_person ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:type ] ; sh:targetClass linkml_common:HealthcareRole . linkml_common:InformationEntity a sh:NodeShape ; @@ -601,674 +961,884 @@ linkml_common:InformationEntity a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 0 ; - sh:path schema1:describes ], + sh:path schema:describes ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path linkml_common:ontology_types ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 1 ; - sh:path schema1:identifier ], + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml_common:type ], [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 6 ; - sh:path schema1:description ], + sh:order 2 ; + sh:path schema:name ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 4 ; sh:path linkml_common:subtype ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path schema:description ] ; + sh:targetClass linkml_common:InformationEntity . + +linkml_common:InvestigativeProcess a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:InvestigativeProtocol ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:follows_procedure ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml_common:happens_at ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:PhysicalDevice ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 2 ; - sh:path schema1:name ], + sh:path linkml_common:uses_physical_device ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 8 ; + sh:path schema:identifier ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:Investigation ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:part_of ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path schema:name ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml_common:ontology_types ] ; - sh:targetClass linkml_common:InformationEntity . + sh:order 12 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml_common:has_duration ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 13 ; + sh:path schema:description ] ; + sh:targetClass linkml_common:InvestigativeProcess . -linkml_common:InvestigativeProcess a sh:NodeShape ; +linkml_common:Landform a sh:NodeShape ; sh:closed true ; + sh:description "A natural feature of the solid surface of the Earth or other planetary body" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; + sh:order 3 ; + sh:path schema:name ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; sh:order 6 ; - sh:path schema1:name ], + sh:path linkml_common:ontology_types ], + [ sh:class schema:PostalAddress ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml_common:address ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path schema:description ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:subtype ], + [ sh:class linkml_common:GeoPointLocation ; + sh:description "The geolocation of the place" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml_common:geolocation ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 2 ; + sh:path schema:identifier ], [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:Landform . + +linkml_common:LifeEvent a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 7 ; sh:path linkml_common:type ], - [ sh:class linkml_common:Investigation ; + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; + sh:order 9 ; + sh:path linkml_common:ontology_types ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml_common:has_duration ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path schema:name ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 1 ; - sh:path linkml_common:part_of ], + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml_common:happens_at ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 5 ; + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 10 ; - sh:path schema1:description ], - [ sh:class linkml_common:InvestigativeProtocol ; + sh:path schema:description ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml_common:has_interval ] ; + sh:targetClass linkml_common:LifeEvent . + +linkml_common:Location a sh:NodeShape ; + sh:closed false ; + sh:ignoredProperties ( rdf:type ) ; + sh:targetClass linkml_common:Location . + +linkml_common:MaterialCollection a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 7 ; + sh:path schema:identifier ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:Procedure ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml_common:follows_procedure ], - [ sh:class linkml_common:PhysicalDevice ; + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path linkml_common:uses_physical_device ], + sh:order 10 ; + sh:path linkml_common:subtype ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 3 ; + sh:order 2 ; sh:path linkml_common:starts_at ], - [ sh:description "A unique identifier for a thing" ; + [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; - sh:minCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 5 ; - sh:path schema1:identifier ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; + sh:path linkml_common:has_interval ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; sh:order 9 ; - sh:path linkml_common:ontology_types ], + sh:path linkml_common:type ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 8 ; - sh:path linkml_common:subtype ], + sh:path schema:name ], + [ sh:class linkml_common:PhysicalDevice ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:uses_physical_device ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 4 ; - sh:path linkml_common:ends_at ] ; - sh:targetClass linkml_common:InvestigativeProcess . + sh:path linkml_common:happens_at ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path schema:description ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:has_duration ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml_common:ontology_types ] ; + sh:targetClass linkml_common:MaterialCollection . -linkml_common:Landform a sh:NodeShape ; +linkml_common:MaterialProcessing a sh:NodeShape ; sh:closed true ; - sh:description "A natural feature of the solid surface of the Earth or other planetary body" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path linkml_common:ontology_types ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path schema1:name ], + sh:order 8 ; + sh:path schema:name ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:Procedure ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:follows_procedure ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path schema1:description ], - [ sh:class linkml_common:GeoPointLocation ; - sh:description "The geolocation of the place" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml_common:geolocation ], + sh:order 12 ; + sh:path schema:description ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:order 5 ; + sh:order 10 ; sh:path linkml_common:subtype ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml_common:has_interval ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 2 ; - sh:path schema1:identifier ], - [ sh:class schema1:PostalAddress ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml_common:address ], + sh:order 7 ; + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml_common:type ] ; - sh:targetClass linkml_common:Landform . - -linkml_common:LifeEvent a sh:NodeShape ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:order 9 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:PhysicalDevice ; sh:maxCount 1 ; - sh:order 7 ; - sh:path schema1:description ], + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:uses_physical_device ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 6 ; + sh:order 11 ; sh:path linkml_common:ontology_types ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml_common:starts_at ], - [ sh:description "A unique identifier for a thing" ; + sh:order 3 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 2 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml_common:happens_at ], + [ sh:class linkml_common:Duration ; sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml_common:subtype ], + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:has_duration ] ; + sh:targetClass linkml_common:MaterialProcessing . + +linkml_common:Measurement a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:Variable ; + sh:description "The variable being measured" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml_common:variable_measured ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 4 ; + sh:order 2 ; sh:path linkml_common:type ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path schema1:name ], - [ sh:class linkml_common:TimePoint ; + [ sh:class ; + sh:description "The quantity being measured" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml_common:ends_at ] ; - sh:targetClass linkml_common:LifeEvent . + sh:order 0 ; + sh:path linkml_common:quantity_measured ] ; + sh:targetClass linkml_common:Measurement . -linkml_common:Location a sh:NodeShape ; - sh:closed false ; +linkml_common:Observation a sh:NodeShape ; + sh:closed true ; + sh:description "A statement about the state of something" ; sh:ignoredProperties ( rdf:type ) ; - sh:targetClass linkml_common:Location . + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:Observation . -linkml_common:MaterialCollection a sh:NodeShape ; +linkml_common:PlannedProcess a sh:NodeShape ; sh:closed true ; + sh:description "A process that follows a defined procedure or plan" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:property [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ], + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml_common:ends_at ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 2 ; sh:path linkml_common:starts_at ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path schema:description ], [ sh:class linkml_common:Procedure ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml_common:follows_procedure ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 7 ; + sh:path schema:identifier ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml_common:happens_at ], [ sh:class linkml_common:PhysicalDevice ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 1 ; sh:path linkml_common:uses_physical_device ], - [ sh:description "A unique identifier for a thing" ; + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 4 ; - sh:path schema1:identifier ], + sh:order 9 ; + sh:path linkml_common:type ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 8 ; + sh:order 11 ; sh:path linkml_common:ontology_types ], - [ sh:class linkml_common:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml_common:ends_at ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; + sh:order 8 ; + sh:path schema:name ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 5 ; - sh:path schema1:name ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:Duration ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 6 ; - sh:path linkml_common:type ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml_common:subtype ] ; - sh:targetClass linkml_common:MaterialCollection . + sh:path linkml_common:has_duration ] ; + sh:targetClass linkml_common:PlannedProcess . -linkml_common:MaterialProcessing a sh:NodeShape ; +linkml_common:PointLocation a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:targetClass linkml_common:PointLocation . + +linkml_common:Publication a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "The title of the item" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:title ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path schema:description ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 7 ; + sh:path schema:identifier ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe this item" ; sh:order 6 ; - sh:path linkml_common:type ], + sh:path schema:keywords ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A summary of the item" ; sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:abstract ], + [ sh:class linkml_common:Agent ; + sh:description "A contact point for a person or organization" ; + sh:nodeKind sh:IRI ; sh:order 5 ; - sh:path schema1:name ], - [ sh:class linkml_common:TimePoint ; + sh:path schema:contactPoint ], + [ sh:datatype xsd:string ; + sh:description "Information about rights held in and over the item" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 2 ; - sh:path linkml_common:starts_at ], - [ sh:class linkml_common:PhysicalDevice ; - sh:maxCount 1 ; + sh:path linkml_common:rights ], + [ sh:class linkml_common:Agent ; + sh:description "The person or organization who created the work" ; sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:uses_physical_device ], - [ sh:class linkml_common:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 3 ; - sh:path linkml_common:ends_at ], + sh:path ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml_common:subtype ], + sh:order 9 ; + sh:path linkml_common:type ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 8 ; + sh:order 11 ; sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; - sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ], - [ sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 4 ; - sh:path schema1:identifier ], - [ sh:class linkml_common:Procedure ; + sh:description "An enum with a more specific type" ; sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml_common:subtype ], + [ sh:class linkml_common:Agent ; + sh:description "A person or organization that contributed to the creation of the work" ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml_common:follows_procedure ] ; - sh:targetClass linkml_common:MaterialProcessing . + sh:order 4 ; + sh:path ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path schema:name ] ; + sh:targetClass linkml_common:Publication . -linkml_common:Measurement a sh:NodeShape ; +linkml_common:RawMaterial a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Variable ; - sh:description "The variable being measured" ; + sh:property [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 1 ; - sh:path linkml_common:variable_measured ], + sh:path schema:name ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path schema:description ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], - [ sh:class ; - sh:description "The quantity being measured" ; + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:minCount 1 ; sh:order 0 ; - sh:path linkml_common:quantity_measured ] ; - sh:targetClass linkml_common:Measurement . + sh:path schema:identifier ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:subtype ] ; + sh:targetClass linkml_common:RawMaterial . -linkml_common:Observation a sh:NodeShape ; - sh:closed true ; - sh:description "A statement about the state of something" ; +linkml_common:Relationship a sh:NodeShape ; + sh:closed false ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml_common:type ] ; - sh:targetClass linkml_common:Observation . + sh:targetClass linkml_common:Relationship . -linkml_common:Organization a sh:NodeShape ; +linkml_common:SampleCollectionProcess a sh:NodeShape ; sh:closed true ; - sh:description "Represents an Organization" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path schema:description ], + [ sh:class linkml_common:InvestigativeProtocol ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:order 2 ; + sh:path linkml_common:follows_procedure ], + [ sh:class linkml_common:SampleMaterial ; sh:maxCount 1 ; - sh:order 1 ; - sh:path schema1:name ], + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:material_collected ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:order 3 ; + sh:order 13 ; sh:path linkml_common:subtype ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:description ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 0 ; - sh:path schema1:identifier ] ; - sh:targetClass linkml_common:Organization . - -linkml_common:PlannedProcess a sh:NodeShape ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:TimePoint ; + sh:order 10 ; + sh:path schema:identifier ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Duration ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml_common:starts_at ], + sh:order 9 ; + sh:path linkml_common:has_duration ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:PhysicalDevice ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:uses_physical_device ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 8 ; + sh:order 14 ; sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:name ], - [ sh:class linkml_common:Procedure ; + sh:order 11 ; + sh:path schema:name ], + [ sh:class linkml_common:Investigation ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml_common:follows_procedure ], - [ sh:class linkml_common:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 3 ; - sh:path linkml_common:ends_at ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:PhysicalDevice ; + sh:path linkml_common:part_of ], + [ sh:class linkml_common:NamedThing ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 1 ; - sh:path linkml_common:uses_physical_device ], - [ sh:description "A unique identifier for a thing" ; + sh:path linkml_common:collected_from ], + [ sh:class linkml_common:TimePoint ; 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 thing" ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 7 ; - sh:path linkml_common:subtype ] ; - sh:targetClass linkml_common:PlannedProcess . - -linkml_common:PointLocation a sh:NodeShape ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:targetClass linkml_common:PointLocation . + sh:path linkml_common:happens_at ] ; + sh:targetClass linkml_common:SampleCollectionProcess . -linkml_common:Publication a sh:NodeShape ; +linkml_common:SampleProcessing a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:property [ sh:class linkml_common:PhysicalDevice ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:type ], + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:uses_physical_device ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml_common:has_interval ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; + sh:order 7 ; + sh:path schema:identifier ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml_common:happens_at ], + [ sh:class linkml_common:Procedure ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:path linkml_common:follows_procedure ], + [ sh:class linkml_common:Duration ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:description ], + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:has_duration ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:order 3 ; + sh:order 10 ; sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path schema:description ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 4 ; + sh:order 11 ; sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path schema1:name ] ; - sh:targetClass linkml_common:Publication . + sh:order 8 ; + sh:path schema:name ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml_common:starts_at ] ; + sh:targetClass linkml_common:SampleProcessing . -linkml_common:RawMaterial a sh:NodeShape ; +linkml_common:Service a sh:NodeShape ; + sh:closed true ; + sh:description "A service provided by an organization" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:Service . + +linkml_common:Specification a sh:NodeShape ; sh:closed true ; + sh:description "A specification of a thing" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml_common:ontology_types ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:subtype ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema1:name ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:type ], + sh:path schema:name ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema1:description ], + sh:path schema:description ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema1:identifier ] ; - sh:targetClass linkml_common:RawMaterial . - -linkml_common:Relationship a sh:NodeShape ; - sh:closed false ; - sh:ignoredProperties ( rdf:type ) ; - sh:targetClass linkml_common:Relationship . - -linkml_common:SampleCollectionProcess a sh:NodeShape ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml_common:starts_at ], - [ sh:class linkml_common:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml_common:ends_at ], + sh:path schema:identifier ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:Investigation ; + sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; sh:order 3 ; - sh:path linkml_common:part_of ], - [ sh:class linkml_common:NamedThing ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:collected_from ], - [ sh:class linkml_common:SampleMaterial ; + sh:order 2 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:Specification . + +linkml_common:StudyDesign a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; + sh:minCount 1 ; sh:order 0 ; - sh:path linkml_common:material_collected ], + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:order 10 ; + sh:order 3 ; sh:path linkml_common:subtype ], [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 12 ; - sh:path schema1:description ], - [ sh:description "A unique identifier for a thing" ; + sh:order 1 ; + sh:path schema:name ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 7 ; - sh:path schema1:identifier ], + sh:order 5 ; + sh:path schema:description ], [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 11 ; - sh:path linkml_common:ontology_types ], - [ sh:class linkml_common:InvestigativeProtocol ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path linkml_common:follows_procedure ], - [ sh:class linkml_common:PhysicalDevice ; - sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 4 ; - sh:path linkml_common:uses_physical_device ], + sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path schema1:name ] ; - sh:targetClass linkml_common:SampleCollectionProcess . + sh:order 2 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:StudyDesign . -linkml_common:SampleProcessing a sh:NodeShape ; +linkml_common:TemporalRelationship a sh:NodeShape ; sh:closed true ; + sh:description "A relationship to another time point" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 2 ; - sh:path linkml_common:starts_at ], - [ sh:class linkml_common:Procedure ; + sh:path linkml_common:type ], + [ sh:description "The relationship between the two time points" ; + sh:in ( "BEFORE" "AFTER" "AT_SAME_TIME_AS" ) ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path linkml_common:follows_procedure ], - [ sh:class linkml_common:TimePoint ; + sh:path linkml_common:predicate ], + [ sh:class schema:Thing ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml_common:ends_at ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 8 ; - sh:path linkml_common:ontology_types ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:name ], - [ sh:class linkml_common:PhysicalDevice ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; sh:order 1 ; - sh:path linkml_common:uses_physical_device ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:path linkml_common:relative_to ] ; + sh:targetClass linkml_common:TemporalRelationship . + +linkml_common:TimePointOrTemporalInterval a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml_common:subtype ], - [ sh:description "A unique identifier for a thing" ; + sh:order 2 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:TimePoint ; 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 thing" ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ] ; - sh:targetClass linkml_common:SampleProcessing . + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml_common:starts_at ] ; + sh:targetClass linkml_common:TimePointOrTemporalInterval . linkml_common:UnitConversionOperation a sh:NodeShape ; sh:closed true ; sh:description "A unit conversion operation" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:MathematicalOperation ; - sh:description "The steps that immediately precede this step" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml_common:immediate_preceding_steps ], - [ sh:class ; + sh:property [ sh:class ; sh:description "The output unit" ; sh:nodeKind sh:BlankNode ; sh:order 1 ; sh:path linkml_common:outputs ], + [ sh:class ; + sh:description "The input unit" ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml_common:inputs ], [ sh:class linkml_common:MathematicalOperation ; sh:description "The parts of the process" ; sh:nodeKind sh:BlankNode ; sh:order 2 ; sh:path linkml_common:parts ], - [ sh:class ; - sh:description "The input unit" ; + [ sh:class linkml_common:MathematicalOperation ; + sh:description "The steps that immediately precede this step" ; sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml_common:inputs ] ; + sh:order 3 ; + sh:path linkml_common:immediate_preceding_steps ] ; sh:targetClass linkml_common:UnitConversionOperation . -linkml_common:XProcess a sh:NodeShape ; - sh:closed true ; - sh:description "A series of actions or steps taken in order to achieve a particular end" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml_common:type ] ; - sh:targetClass linkml_common:XProcess . - -schema1:Thing a sh:NodeShape ; - sh:closed false ; - sh:description "A physical, digital, conceptual, or other kind of thing with some common characteristics" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml_common:type ] ; - sh:targetClass schema1:Thing . - linkml_common:ClinicalCohort a sh:NodeShape ; sh:closed true ; + sh:description "A group of patients who share a common set of characteristics" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:class linkml_common:ClinicalCohortDefinition ; sh:maxCount 1 ; @@ -1279,41 +1849,42 @@ linkml_common:ClinicalCohort a sh:NodeShape ; sh:nodeKind sh:IRI ; sh:order 5 ; sh:path linkml_common:ontology_types ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 1 ; + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml_common:type ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path schema1:name ], + sh:order 4 ; + sh:path linkml_common:subtype ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 6 ; - sh:path schema1:description ], + sh:path schema:description ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml_common:subtype ], - [ sh:description "A unique identifier for a thing" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 1 ; - sh:path schema1:identifier ] ; + sh:order 2 ; + sh:path schema:name ] ; sh:targetClass linkml_common:ClinicalCohort . linkml_common:ClinicalCohortDefinition a sh:NodeShape ; sh:closed true ; + sh:description "A definition of a clinical cohort" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:description ], + sh:order 1 ; + sh:path schema:name ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 4 ; @@ -1323,6 +1894,11 @@ linkml_common:ClinicalCohortDefinition a sh:NodeShape ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path schema:description ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; @@ -1332,12 +1908,7 @@ linkml_common:ClinicalCohortDefinition a sh:NodeShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path schema1:name ] ; + sh:path schema:identifier ] ; sh:targetClass linkml_common:ClinicalCohortDefinition . linkml_common:CurrencyConcept a sh:NodeShape ; @@ -1350,15 +1921,10 @@ linkml_common:CurrencyConcept a sh:NodeShape ; sh:order 3 ; sh:path linkml_common:subtype ], [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:description ], - [ sh:description "A unique identifier for a thing" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path schema1:identifier ], + sh:order 1 ; + sh:path schema:name ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 4 ; @@ -1369,40 +1935,30 @@ linkml_common:CurrencyConcept a sh:NodeShape ; sh:order 2 ; sh:path linkml_common:type ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path schema1:name ] ; + sh:order 5 ; + sh:path schema:description ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path schema:identifier ] ; sh:targetClass linkml_common:CurrencyConcept . linkml_common:EngineeringProcess a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml_common:subtype ], - [ sh:class linkml_common:TimePoint ; + sh:property [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml_common:starts_at ], - [ sh:class linkml_common:EngineeringSpecification ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml_common:follows_procedure ], - [ sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 4 ; - sh:path schema1:identifier ], + sh:order 5 ; + sh:path linkml_common:has_interval ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ], + sh:order 12 ; + sh:path schema:description ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; @@ -1411,46 +1967,62 @@ linkml_common:EngineeringProcess a sh:NodeShape ; [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 6 ; + sh:order 9 ; sh:path linkml_common:type ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 8 ; + sh:order 11 ; sh:path linkml_common:ontology_types ], - [ sh:class linkml_common:EngineeringProcess ; + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path schema:name ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:EngineeringSpecification ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:part_of ], + sh:order 0 ; + sh:path linkml_common:follows_procedure ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:name ] ; + sh:order 10 ; + sh:path linkml_common:subtype ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:has_duration ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml_common:happens_at ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 7 ; + sh:path schema:identifier ], + [ sh:class linkml_common:EngineeringProcess ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:part_of ] ; sh:targetClass linkml_common:EngineeringProcess . linkml_common:EngineeringSpecification a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:description ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path schema1:name ], - [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; @@ -1460,51 +2032,80 @@ linkml_common:EngineeringSpecification a sh:NodeShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema1:identifier ] ; + sh:path schema:identifier ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path schema:name ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path schema:description ] ; sh:targetClass linkml_common:EngineeringSpecification . linkml_common:Event a sh:NodeShape ; sh:closed true ; sh:description "A thing that happens" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:TimePoint ; + sh:property [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path schema:description ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml_common:happens_at ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 0 ; sh:path linkml_common:starts_at ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml_common:subtype ], + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml_common:has_interval ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path schema:name ], + [ sh:class linkml_common:Duration ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 4 ; - sh:path linkml_common:type ], - [ sh:description "A unique identifier for a thing" ; + sh:path linkml_common:has_duration ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path schema1:identifier ], + sh:order 8 ; + sh:path linkml_common:subtype ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 6 ; + sh:order 9 ; sh:path linkml_common:ontology_types ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 1 ; sh:path linkml_common:ends_at ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path schema1:description ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path schema1:name ] ; + sh:order 5 ; + sh:path schema:identifier ] ; sh:targetClass linkml_common:Event . linkml_common:FoodIngredient a sh:NodeShape ; @@ -1513,122 +2114,168 @@ linkml_common:FoodIngredient a sh:NodeShape ; sh:property [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:QuantityKind ; + sh:description "The kind of quantity" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path linkml_common:type ] ; + sh:path linkml_common:has_quantity_kind ] ; sh:targetClass linkml_common:FoodIngredient . linkml_common:FoodProcessing a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Procedure ; + sh:property [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path schema:name ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 7 ; + sh:path schema:identifier ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml_common:subtype ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml_common:has_interval ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path schema:description ], + [ sh:class linkml_common:PhysicalDevice ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:uses_physical_device ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml_common:ontology_types ], + [ sh:class linkml_common:Procedure ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml_common:follows_procedure ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml_common:type ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 2 ; sh:path linkml_common:starts_at ], - [ sh:description "A unique identifier for a thing" ; + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:minCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 4 ; - sh:path schema1:identifier ], - [ sh:class linkml_common:PhysicalDevice ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:uses_physical_device ], + sh:path linkml_common:happens_at ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 3 ; sh:path linkml_common:ends_at ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + [ sh:class linkml_common:Duration ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 6 ; - sh:path linkml_common:type ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml_common:subtype ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:name ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 8 ; - sh:path linkml_common:ontology_types ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; - sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ] ; + sh:path linkml_common:has_duration ] ; sh:targetClass linkml_common:FoodProcessing . linkml_common:HealthcareEncounter a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 4 ; - sh:path schema1:identifier ], + sh:property [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 6 ; + sh:order 9 ; sh:path linkml_common:type ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 8 ; - sh:path linkml_common:ontology_types ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 2 ; sh:path linkml_common:starts_at ], - [ sh:class linkml_common:HealthcareProvider ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml_common:provider ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 3 ; sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml_common:has_interval ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path schema:name ], [ sh:description "An enum with a more specific type" ; sh:in ( "Inpatient Visit" "Emergency Room Visit" "Emergency Room and Inpatient Visit" "Non-hospital institution Visit" "Outpatient Visit" "Home Visit" "Telehealth Visit" "Pharmacy Visit" "Laboratory Visit" "Ambulance Visit" "Case Management Visit" ) ; sh:maxCount 1 ; - sh:order 7 ; + sh:order 10 ; sh:path linkml_common:subtype ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ], + sh:minCount 1 ; + sh:order 7 ; + sh:path schema:identifier ], + [ sh:class linkml_common:HealthcareProvider ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml_common:provider ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml_common:happens_at ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:name ], + sh:order 12 ; + sh:path schema:description ], [ sh:class linkml_common:Patient ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 0 ; - sh:path linkml_common:patient ] ; + sh:path linkml_common:patient ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:has_duration ] ; sh:targetClass linkml_common:HealthcareEncounter . linkml_common:HealthcareProvider a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Concept ; + sh:property [ sh:class linkml_common:Person ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:is_person ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Concept ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; @@ -1637,67 +2284,127 @@ linkml_common:HealthcareProvider a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 1 ; - sh:path linkml_common:care_site ], - [ sh:class linkml_common:Person ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path linkml_common:is_person ] ; + sh:path linkml_common:care_site ] ; sh:targetClass linkml_common:HealthcareProvider . linkml_common:HealthcareSite a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class schema1:PostalAddress ; + sh:property [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path schema:description ], + [ sh:class linkml_common:GeoPointLocation ; + sh:description "The geolocation of the place" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml_common:geolocation ], + [ sh:class schema:PostalAddress ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 0 ; sh:path linkml_common:address ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:subtype ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:ontology_types ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 2 ; - sh:path schema1:identifier ], + sh:path schema:identifier ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml_common:subtype ], + sh:order 3 ; + sh:path schema:name ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 4 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:HealthcareSite . + +linkml_common:NamedThing a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path schema:identifier ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 2 ; sh:path linkml_common:type ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path schema:description ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 3 ; - sh:path schema1:name ], - [ sh:class linkml_common:GeoPointLocation ; - sh:description "The geolocation of the place" ; + sh:path linkml_common:subtype ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 1 ; - sh:path linkml_common:geolocation ], + sh:path schema:name ] ; + sh:targetClass linkml_common:NamedThing . + +linkml_common:Organization a sh:NodeShape ; + sh:closed true ; + sh:description "Represents an Organization" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path schema:identifier ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path schema:description ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 6 ; + sh:order 4 ; sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path schema1:description ] ; - sh:targetClass linkml_common:HealthcareSite . + sh:order 2 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path schema:name ] ; + sh:targetClass linkml_common:Organization . -linkml_common:NamedThing a sh:NodeShape ; +linkml_common:SampleMaterial a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 3 ; @@ -1706,74 +2413,89 @@ linkml_common:NamedThing a sh:NodeShape ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema1:name ], - [ sh:description "A unique identifier for a thing" ; + sh:path schema:name ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path schema1:identifier ], + sh:order 5 ; + sh:path schema:description ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:description ] ; - sh:targetClass linkml_common:NamedThing . + sh:minCount 1 ; + sh:order 0 ; + sh:path schema:identifier ] ; + sh:targetClass linkml_common:SampleMaterial . -linkml_common:SampleMaterial a sh:NodeShape ; - sh:closed true ; +schema:Thing a sh:NodeShape ; + sh:closed false ; + sh:description "A physical, digital, conceptual, or other kind of thing with some common characteristics" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A unique identifier for a thing" ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:order 0 ; - sh:path schema1:identifier ], + sh:path linkml_common:type ] ; + sh:targetClass schema:Thing . + +linkml_common:UnitConcept a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path schema:description ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema1:name ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:description ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:path schema:name ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:subtype ] ; - sh:targetClass linkml_common:SampleMaterial . + sh:minCount 1 ; + sh:order 0 ; + sh:path schema:identifier ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ] ; + sh:targetClass linkml_common:UnitConcept . linkml_common:Variable a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:UnitConcept ; + sh:property [ sh:class linkml_common:UnitConcept ; sh:description "The units that are allowed for this variable" ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path linkml_common:allowed_units ] ; + sh:path linkml_common:allowed_units ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:type ] ; sh:targetClass linkml_common:Variable . -linkml_common:UnitConcept a sh:NodeShape ; +linkml_common:InvestigativeProtocol a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:class linkml_common:Concept ; @@ -1784,53 +2506,78 @@ linkml_common:UnitConcept a sh:NodeShape ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema1:description ], + sh:path schema:description ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:subtype ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema1:identifier ], + sh:path schema:identifier ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema1:name ], - [ sh:datatype xsd:string ; + sh:path schema:name ] ; + sh:targetClass linkml_common:InvestigativeProtocol . + +linkml_common:Patient a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 2 ; + sh:order 1 ; sh:path linkml_common:type ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + [ sh:class linkml_common:Person ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:subtype ] ; - sh:targetClass linkml_common:UnitConcept . + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:is_person ] ; + sh:targetClass linkml_common:Patient . + +linkml:Any a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:targetClass linkml:Any . -schema1:PostalAddress a sh:NodeShape ; +schema:PostalAddress a sh:NodeShape ; sh:closed true ; sh:description "Represents an Address" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; + sh:description "The state" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:state ], + [ sh:datatype xsd:string ; sh:description "The postal code or zip code" ; sh:maxCount 1 ; sh:order 4 ; sh:path linkml_common:postal_code ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml_common:type ], [ sh:datatype xsd:string ; sh:description "The city" ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:city ], [ sh:datatype xsd:string ; - sh:description "The state" ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:state ], + sh:order 6 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:string ; + sh:description "The country" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:country ], [ sh:datatype xsd:string ; sh:description "The street address" ; sh:maxCount 1 ; @@ -1839,13 +2586,8 @@ schema1:PostalAddress a sh:NodeShape ; [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:order 1 ; - sh:path linkml_common:street_address_additional ], - [ sh:datatype xsd:string ; - sh:description "The country" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml_common:country ] ; - sh:targetClass schema1:PostalAddress . + sh:path linkml_common:street_address_additional ] ; + sh:targetClass schema:PostalAddress . linkml_common:GeoPointLocation a sh:NodeShape ; sh:closed true ; @@ -1855,60 +2597,185 @@ linkml_common:GeoPointLocation a sh:NodeShape ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:altitude ], + [ sh:datatype xsd:decimal ; + sh:description "The longitude of the location" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:longitude ], [ sh:datatype xsd:decimal ; sh:description "The latitude of the location" ; sh:maxCount 1 ; sh:order 0 ; - sh:path linkml_common:latitude ], - [ sh:datatype xsd:decimal ; - sh:description "The longitude of the location" ; + sh:path linkml_common:latitude ] ; + sh:targetClass linkml_common:GeoPointLocation . + +linkml_common:Investigation a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 2 ; + sh:path schema:identifier ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; + sh:order 3 ; + sh:path schema:name ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path schema:description ], + [ sh:class linkml_common:Variable ; + sh:nodeKind sh:BlankNode ; sh:order 1 ; - sh:path linkml_common:longitude ] ; - sh:targetClass linkml_common:GeoPointLocation . + sh:path linkml_common:variables ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:objectives ] ; + sh:targetClass linkml_common:Investigation . + +linkml_common:MathematicalOperation a sh:NodeShape ; + sh:closed true ; + sh:description "Application of a mathematical operation to one or more inputs to produce one or more outputs" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml:Any ; + sh:description "The inputs to the operation" ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml_common:inputs ], + [ sh:class linkml:Any ; + sh:description "The outputs of the operation" ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml_common:outputs ], + [ sh:class linkml_common:MathematicalOperation ; + sh:description "The parts of the process" ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml_common:parts ], + [ sh:class linkml_common:MathematicalOperation ; + sh:description "The steps that immediately precede this step" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml_common:immediate_preceding_steps ] ; + sh:targetClass linkml_common:MathematicalOperation . + +linkml_common:Person a sh:NodeShape ; + sh:closed true ; + sh:description "Represents a Person" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 4 ; + sh:path schema:identifier ], + [ sh:description "living or dead status" ; + sh:in ( PATO:0001421 PATO:0001422 "UNKNOWN" ) ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:vital_status ], + [ sh:datatype xsd:string ; + sh:description "An enum with a more specific type" ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path linkml_common:subtype ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path schema:name ], + [ sh:datatype xsd:string ; + sh:description "The main email address of a person" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path schema:email ; + sh:pattern "^\\S+@[\\S+\\.]+\\S+" ], + [ sh:datatype xsd:integer ; + sh:description "Number of years since birth" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:age_in_years ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path schema:description ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:date ; + sh:description "Date on which a person is born" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path schema:birthDate ] ; + sh:targetClass linkml_common:Person . -linkml_common:Investigation a sh:NodeShape ; +linkml_common:Procedure a sh:NodeShape ; sh:closed true ; + sh:description "A canonical series of actions conducted in a certain order or manner" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path schema1:name ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 3 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml_common:ontology_types ], + sh:path linkml_common:subtype ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 1 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; sh:order 0 ; - sh:path linkml_common:objectives ], + sh:path schema:identifier ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A type for a thing" ; sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; sh:order 4 ; - sh:path linkml_common:subtype ], + sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 6 ; - sh:path schema1:description ] ; - sh:targetClass linkml_common:Investigation . + sh:order 5 ; + sh:path schema:description ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path schema:name ] ; + sh:targetClass linkml_common:Procedure . -linkml_common:InvestigativeProtocol a sh:NodeShape ; +linkml_common:QuantityKind a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 3 ; @@ -1918,261 +2785,224 @@ linkml_common:InvestigativeProtocol a sh:NodeShape ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema1:name ], - [ sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path schema1:identifier ], + sh:path schema:name ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema1:description ] ; - sh:targetClass linkml_common:InvestigativeProtocol . + sh:path schema:description ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path schema:identifier ] ; + sh:targetClass linkml_common:QuantityKind . -linkml_common:Patient a sh:NodeShape ; + a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Person ; + sh:property [ sh:class linkml_common:QuantityKind ; + sh:description "The kind of quantity" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path linkml_common:is_person ] ; - sh:targetClass linkml_common:Patient . + sh:path linkml_common:has_quantity_kind ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:type ] ; + sh:targetClass . -linkml_common:Person a sh:NodeShape ; +linkml_common:Agent a sh:NodeShape ; sh:closed true ; - sh:description "Represents a Person" ; + sh:description "Represents an Agent" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "The main email address of a person" ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 0 ; - sh:path schema1:email ; - sh:pattern "^\\S+@[\\S+\\.]+\\S+" ], + sh:order 2 ; + sh:path linkml_common:type ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:name ], + sh:order 1 ; + sh:path schema:name ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema1:description ], - [ sh:datatype xsd:integer ; - sh:description "Number of years since birth" ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:age_in_years ], + sh:order 5 ; + sh:path schema:description ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; - sh:order 7 ; + sh:order 3 ; sh:path linkml_common:subtype ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 4 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml_common:type ], - [ sh:datatype xsd:date ; - sh:description "Date on which a person is born" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path schema1:birthDate ], + sh:order 0 ; + sh:path schema:identifier ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 8 ; - sh:path linkml_common:ontology_types ], - [ sh:description "living or dead status" ; - sh:in ( PATO:0001421 PATO:0001422 "UNKNOWN" ) ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:vital_status ] ; - sh:targetClass linkml_common:Person . - -linkml:Any a sh:NodeShape ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:targetClass linkml:Any . + sh:order 4 ; + sh:path linkml_common:ontology_types ] ; + sh:targetClass linkml_common:Agent . -linkml_common:MathematicalOperation a sh:NodeShape ; +linkml_common:PhysicalDevice a sh:NodeShape ; sh:closed true ; - sh:description "Application of a mathematical operation to one or more inputs to produce one or more outputs" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:MathematicalOperation ; - sh:description "The parts of the process" ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml_common:parts ], - [ sh:class linkml:Any ; - sh:description "The inputs to the operation" ; - sh:nodeKind sh:BlankNode ; + sh:property [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; sh:order 0 ; - sh:path linkml_common:inputs ], - [ sh:class linkml:Any ; - sh:description "The outputs of the operation" ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml_common:outputs ], - [ sh:class linkml_common:MathematicalOperation ; - sh:description "The steps that immediately precede this step" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml_common:immediate_preceding_steps ] ; - sh:targetClass linkml_common:MathematicalOperation . - -linkml_common:Procedure a sh:NodeShape ; - sh:closed true ; - sh:description "A canonical series of actions conducted in a certain order or manner" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:path schema:identifier ], + [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema1:description ], + sh:path schema:description ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml_common:subtype ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema1:name ], - [ sh:description "A unique identifier for a thing" ; + sh:path schema:name ] ; + sh:targetClass linkml_common:PhysicalDevice . + +linkml_common:Duration a sh:NodeShape ; + sh:closed true ; + sh:description "A length of time" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:QuantityKind ; + sh:description "The kind of quantity" ; sh:maxCount 1 ; - sh:minCount 1 ; + sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path schema1:identifier ] ; - sh:targetClass linkml_common:Procedure . + sh:path linkml_common:has_quantity_kind ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:Duration . - a sh:NodeShape ; +linkml_common:TemporalInterval a sh:NodeShape ; sh:closed true ; + sh:description "A period of time" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 0 ; - sh:path linkml_common:type ] ; - sh:targetClass . + sh:path linkml_common:starts_at ] ; + sh:targetClass linkml_common:TemporalInterval . -linkml_common:PhysicalDevice a sh:NodeShape ; +linkml_common:Concept a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Concept ; + sh:property [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path schema:name ], + [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml_common:ontology_types ], - [ sh:description "A unique identifier for a thing" ; + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path schema1:identifier ], + sh:order 5 ; + sh:path schema:description ], [ sh:datatype xsd:string ; sh:description "A type for a thing" ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path schema1:name ], [ sh:datatype xsd:string ; sh:description "An enum with a more specific type" ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml_common:subtype ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:description ] ; - sh:targetClass linkml_common:PhysicalDevice . + sh:minCount 1 ; + sh:order 0 ; + sh:path schema:identifier ] ; + sh:targetClass linkml_common:Concept . linkml_common:TimePoint a sh:NodeShape ; sh:closed true ; + sh:description "A point in time. Can be fully specified, or specified in relative terms." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:dateTime ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:datetime_value ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 4 ; - sh:path schema1:description ], - [ sh:datatype xsd:time ; + sh:order 5 ; + sh:path schema:description ], + [ sh:datatype xsd:date ; sh:maxCount 1 ; sh:order 1 ; - sh:path linkml_common:time_value ], + sh:path linkml_common:date_value ], [ sh:class linkml_common:Event ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 3 ; + sh:order 4 ; sh:path linkml_common:marker_event ], - [ sh:datatype xsd:date ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml_common:date_value ] ; - sh:targetClass linkml_common:TimePoint . - -linkml_common:Concept a sh:NodeShape ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + [ sh:datatype xsd:time ; sh:maxCount 1 ; sh:order 2 ; - sh:path linkml_common:type ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:path linkml_common:time_value ], + [ sh:datatype xsd:dateTime ; sh:maxCount 1 ; sh:order 3 ; - sh:path linkml_common:subtype ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:path linkml_common:datetime_value ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:order 1 ; - sh:path schema1:name ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ], - [ sh:description "A unique identifier for a thing" ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml_common:ends_at ], + [ sh:datatype xsd:integer ; sh:maxCount 1 ; - sh:minCount 1 ; sh:order 0 ; - sh:path schema1:identifier ], + sh:path linkml_common:year_value ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml_common:starts_at ], [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:description "A type for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema1:description ] ; - sh:targetClass linkml_common:Concept . + sh:order 8 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:TimePoint . diff --git a/project/shex/linkml_common.shex b/project/shex/linkml_common.shex index e54872b..c204475 100644 --- a/project/shex/linkml_common.shex +++ b/project/shex/linkml_common.shex @@ -2,8 +2,9 @@ BASE PREFIX rdf: PREFIX xsd: PREFIX linkml: -PREFIX schema1: +PREFIX schema: PREFIX fhir: +PREFIX dcterms: linkml:String xsd:string @@ -44,12 +45,30 @@ linkml:Jsonpath xsd:string linkml:Sparqlpath xsd:string + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) + } OR @ OR @ OR @ +) + CLOSED { ( $ rdf:type . * ; rdf:type [ linkml:Any ] ? ) } + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) +} + CLOSED { ( $ ( & ; rdf:type [ ] ? @@ -87,7 +106,7 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ schema1:Intangible ] ? ; + rdf:type [ schema:Intangible ] ? ; @ * ) ; rdf:type [ ] ? @@ -109,7 +128,24 @@ linkml:Sparqlpath xsd:string ) ; rdf:type [ ] ) - } OR @ OR @ + } OR @ OR @ OR @ +) + + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + @linkml:String ? ; + <abstract> @linkml:String ? ; + <rights> @linkml:String ? ; + dcterms:creator @<Agent> * ; + dcterms:contributor @<Agent> * ; + schema:contactPoint @<Agent> * ; + schema:keywords @linkml:String * + ) ; + rdf:type [ <CreativeWork> ] + ) + } OR @<Dataset> OR @<Publication> ) <DataGenerationFromSample> CLOSED { @@ -120,14 +156,31 @@ linkml:Sparqlpath xsd:string ) } +<Dataset> CLOSED { + ( $<Dataset_tes> ( &<CreativeWork_tes> ; + rdf:type [ <CreativeWork> ] ? ; + <collected_as_part_of> @<Investigation> * + ) ; + rdf:type [ <Dataset> ] + ) +} + <DataStructure> CLOSED { ( $<DataStructure_tes> ( &<Intangible_tes> ; - rdf:type [ schema1:Intangible ] ? + rdf:type [ schema:Intangible ] ? ) ; rdf:type [ <DataStructure> ] ? ) } +<Duration> CLOSED { + ( $<Duration_tes> ( &<Quantity_tes> ; + rdf:type [ fhir:Quantity ] ? + ) ; + rdf:type [ <Duration> ] ? + ) +} + <EngineeringMaterialProcessing> CLOSED { ( $<EngineeringMaterialProcessing_tes> ( &<MaterialProcessing_tes> ; rdf:type [ <MaterialProcessing> ] ? @@ -155,18 +208,36 @@ linkml:Sparqlpath xsd:string } <Entity> ( - @<Intangible> OR @<NamedThing> OR @<Observation> OR @<PostalAddress> OR @<Variable> OR @<XProcess> + @<Intangible> OR @<NamedThing> OR @<Observation> OR @<PostalAddress> OR @<Variable> ) <Entity_struct> { ( $<Entity_tes> <type> @linkml:String ? ; - rdf:type [ schema1:Thing ] ? + rdf:type [ schema:Thing ] ? + ) +} + +<EnvironmentalMonitoring> CLOSED { + ( $<EnvironmentalMonitoring_tes> ( &<EnvironmentalProcess_tes> ; + rdf:type [ <EnvironmentalProcess> ] ? + ) ; + rdf:type [ <EnvironmentalMonitoring> ] ? ) } -<EnvironmentalProcess> CLOSED { - ( $<EnvironmentalProcess_tes> rdf:type . * ; - rdf:type [ <EnvironmentalProcess> ] ? +<EnvironmentalProcess> ( + CLOSED { + ( $<EnvironmentalProcess_tes> rdf:type . * ; + rdf:type [ <EnvironmentalProcess> ] ? + ) + } OR @<EnvironmentalMonitoring> +) + +<EnvironmentalSite> CLOSED { + ( $<EnvironmentalSite_tes> ( &<Place_tes> ; + rdf:type [ schema:Place ] ? + ) ; + rdf:type [ <EnvironmentalSite> ] ) } @@ -175,7 +246,10 @@ linkml:Sparqlpath xsd:string ( $<Event_tes> ( &<NamedThing_tes> ; rdf:type [ <NamedThing> ] ? ; <starts_at> @<TimePoint> ? ; - <ends_at> @<TimePoint> ? + <ends_at> @<TimePoint> ? ; + <happens_at> @<TimePoint> ? ; + <has_interval> @<TemporalInterval> ? ; + <has_duration> @<Duration> ? ) ; rdf:type [ <Event> ] ) @@ -245,7 +319,17 @@ linkml:Sparqlpath xsd:string rdf:type [ <Event> ] ? ; <patient> @<Patient> ? ; <provider> @<HealthcareProvider> ? ; - <subtype> @<HealthcareEncounterClassification> ? + <subtype> [ <https://w3id.org/linkml-common/HealthcareEncounterClassification#Inpatient%20Visit> + <https://w3id.org/linkml-common/HealthcareEncounterClassification#Emergency%20Room%20Visit> + <https://w3id.org/linkml-common/HealthcareEncounterClassification#Emergency%20Room%20and%20Inpatient%20Visit> + <https://w3id.org/linkml-common/HealthcareEncounterClassification#Non-hospital%20institution%20Visit> + <https://w3id.org/linkml-common/HealthcareEncounterClassification#Outpatient%20Visit> + <https://w3id.org/linkml-common/HealthcareEncounterClassification#Home%20Visit> + <https://w3id.org/linkml-common/HealthcareEncounterClassification#Telehealth%20Visit> + <https://w3id.org/linkml-common/HealthcareEncounterClassification#Pharmacy%20Visit> + <https://w3id.org/linkml-common/HealthcareEncounterClassification#Laboratory%20Visit> + <https://w3id.org/linkml-common/HealthcareEncounterClassification#Ambulance%20Visit> + <https://w3id.org/linkml-common/HealthcareEncounterClassification#Case%20Management%20Visit> ] ? ) ; rdf:type [ <HealthcareEncounter> ] ) @@ -271,7 +355,10 @@ linkml:Sparqlpath xsd:string <HealthcareRole> ( CLOSED { - ( $<HealthcareRole_tes> <is_person> @<Person> ? ; + ( $<HealthcareRole_tes> ( &<Role_tes> ; + rdf:type [ schema:Role ] ? ; + <is_person> @<Person> ? + ) ; rdf:type [ <HealthcareRole> ] ? ) } OR @<HealthcareProvider> OR @<Patient> @@ -279,7 +366,7 @@ linkml:Sparqlpath xsd:string <HealthcareSite> CLOSED { ( $<HealthcareSite_tes> ( &<Place_tes> ; - rdf:type [ schema1:Place ] ? + rdf:type [ schema:Place ] ? ) ; rdf:type [ <HealthcareSite> ] ) @@ -288,7 +375,7 @@ linkml:Sparqlpath xsd:string <InformationEntity> CLOSED { ( $<InformationEntity_tes> ( &<NamedThing_tes> ; rdf:type [ <NamedThing> ] ? ; - schema1:describes @<Any> ? + schema:describes @<Any> ? ) ; rdf:type [ <InformationEntity> ] ) @@ -297,17 +384,19 @@ linkml:Sparqlpath xsd:string <Intangible> ( CLOSED { ( $<Intangible_tes> ( &<Entity_tes> ; - rdf:type [ schema1:Thing ] ? + rdf:type [ schema:Thing ] ? ) ; - rdf:type [ schema1:Intangible ] ? + rdf:type [ schema:Intangible ] ? ) - } OR @<Collection> OR @<DataStructure> OR @<Quantity> OR @<QuantityRange> + } OR @<Collection> OR @<DataStructure> OR @<Quantity> OR @<QuantityRange> OR @<Relationship> OR @<Role> OR @<Service> OR + @<TimePointOrTemporalInterval> ) <Investigation> CLOSED { ( $<Investigation_tes> ( &<NamedThing_tes> ; rdf:type [ <NamedThing> ] ? ; - <objectives> @linkml:String ? + <objectives> @linkml:String ? ; + <variables> @<Variable> * ) ; rdf:type [ <Investigation> ] ) @@ -335,7 +424,7 @@ linkml:Sparqlpath xsd:string <Landform> CLOSED { ( $<Landform_tes> ( &<Place_tes> ; - rdf:type [ schema1:Place ] ? ; + rdf:type [ schema:Place ] ? ; <geolocation> @<GeoPointLocation> ) ; rdf:type [ <Landform> ] @@ -401,23 +490,23 @@ linkml:Sparqlpath xsd:string <NamedThing> ( CLOSED { ( $<NamedThing_tes> ( &<Entity_tes> ; - rdf:type [ schema1:Thing ] ? ; - schema1:name @linkml:String ? ; + rdf:type [ schema:Thing ] ? ; + schema:name @linkml:String ? ; <subtype> @linkml:String ? ; <ontology_types> @<Concept> * ; - schema1:description @linkml:String ? + schema:description @linkml:String ? ) ; rdf:type [ <NamedThing> ] ) - } OR @<ClinicalCohort> OR @<ClinicalCohortDefinition> OR @<Concept> OR @<Event> OR @<InformationEntity> OR @<Investigation> OR - @<Organization> OR @<Person> OR @<PhysicalDevice> OR @<Place> OR @<Procedure> OR @<Publication> OR @<RawMaterial> OR - @<SampleMaterial> + } OR @<Agent> OR @<ClinicalCohort> OR @<ClinicalCohortDefinition> OR @<Concept> OR @<CreativeWork> OR @<Event> OR + @<InformationEntity> OR @<Investigation> OR @<PhysicalDevice> OR @<Place> OR @<RawMaterial> OR @<SampleMaterial> OR + @<Specification> ) <Observation> ( CLOSED { ( $<Observation_tes> ( &<Entity_tes> ; - rdf:type [ schema1:Thing ] ? + rdf:type [ schema:Thing ] ? ) ; rdf:type [ <Observation> ] ? ) @@ -426,8 +515,8 @@ linkml:Sparqlpath xsd:string <Organization> ( CLOSED { - ( $<Organization_tes> ( &<NamedThing_tes> ; - rdf:type [ <NamedThing> ] ? + ( $<Organization_tes> ( &<Agent_tes> ; + rdf:type [ <Agent> ] ? ) ; rdf:type [ <Organization> ] ) @@ -443,12 +532,13 @@ linkml:Sparqlpath xsd:string } <Person> CLOSED { - ( $<Person_tes> ( &<NamedThing_tes> ; - rdf:type [ <NamedThing> ] ? ; - schema1:email @linkml:String ? ; - schema1:birthDate @linkml:Date ? ; + ( $<Person_tes> ( &<Agent_tes> ; + rdf:type [ <Agent> ] ? ; + schema:email @linkml:String ? ; + schema:birthDate @linkml:Date ? ; <age_in_years> @linkml:Integer ? ; - <vital_status> @<PersonStatus> ? + <vital_status> [ <http://purl.obolibrary.org/obo/PATO_0001421> <http://purl.obolibrary.org/obo/PATO_0001422> + <https://w3id.org/linkml-common/PersonStatus#UNKNOWN> ] ? ) ; rdf:type [ <Person> ] ) @@ -469,9 +559,9 @@ linkml:Sparqlpath xsd:string <address> @<PostalAddress> ? ; <geolocation> @<GeoPointLocation> ? ) ; - rdf:type [ schema1:Place ] + rdf:type [ schema:Place ] ) - } OR @<HealthcareSite> OR @<Landform> + } OR @<EnvironmentalSite> OR @<HealthcareSite> OR @<Landform> ) <PlannedProcess> ( @@ -498,7 +588,7 @@ linkml:Sparqlpath xsd:string <PostalAddress> CLOSED { ( $<PostalAddress_tes> ( &<Entity_tes> ; - rdf:type [ schema1:Thing ] ? ; + rdf:type [ schema:Thing ] ? ; <street_address> @linkml:String ? ; <street_address_additional> @linkml:String ? ; <city> @linkml:String ? ; @@ -506,23 +596,23 @@ linkml:Sparqlpath xsd:string <postal_code> @linkml:String ? ; <country> @linkml:String ? ) ; - rdf:type [ schema1:PostalAddress ] ? + rdf:type [ schema:PostalAddress ] ? ) } <Procedure> ( CLOSED { - ( $<Procedure_tes> ( &<NamedThing_tes> ; - rdf:type [ <NamedThing> ] ? + ( $<Procedure_tes> ( &<Specification_tes> ; + rdf:type [ <Specification> ] ? ) ; rdf:type [ <Procedure> ] ) - } OR @<EngineeringSpecification> OR @<FoodRecipe> OR @<InvestigativeProtocol> + } OR @<EngineeringSpecification> OR @<FoodRecipe> OR @<InvestigativeProtocol> OR @<StudyDesign> ) <Publication> CLOSED { - ( $<Publication_tes> ( &<NamedThing_tes> ; - rdf:type [ <NamedThing> ] ? + ( $<Publication_tes> ( &<CreativeWork_tes> ; + rdf:type [ <CreativeWork> ] ? ) ; rdf:type [ <Publication> ] ) @@ -531,16 +621,25 @@ linkml:Sparqlpath xsd:string <Quantity> ( CLOSED { ( $<Quantity_tes> ( &<Intangible_tes> ; - rdf:type [ schema1:Intangible ] ? + rdf:type [ schema:Intangible ] ? ; + <has_quantity_kind> @<QuantityKind> ? ) ; rdf:type [ fhir:Quantity ] ? ) - } OR @<FoodIngredient> OR @<Ratio> OR @<SimpleQuantity> + } OR @<Duration> OR @<FoodIngredient> OR @<Ratio> OR @<SimpleQuantity> ) +<QuantityKind> CLOSED { + ( $<QuantityKind_tes> ( &<Concept_tes> ; + rdf:type [ <Concept> ] ? + ) ; + rdf:type [ <QuantityKind> ] + ) +} + <QuantityRange> CLOSED { ( $<QuantityRange_tes> ( &<Intangible_tes> ; - rdf:type [ schema1:Intangible ] ? ; + rdf:type [ schema:Intangible ] ? ; <lower_bound> @<Quantity> ? ; <upper_bound> @<Quantity> ? ) ; @@ -566,11 +665,25 @@ linkml:Sparqlpath xsd:string ) } -<Relationship> { - ( $<Relationship_tes> rdf:type . * ; - rdf:type [ <Relationship> ] ? - ) -} +<Relationship> ( + { + ( $<Relationship_tes> ( &<Intangible_tes> ; + rdf:type [ schema:Intangible ] ? + ) ; + rdf:type [ <Relationship> ] ? + ) + } OR @<TemporalRelationship> +) + +<Role> ( + { + ( $<Role_tes> ( &<Intangible_tes> ; + rdf:type [ schema:Intangible ] ? + ) ; + rdf:type [ schema:Role ] ? + ) + } OR @<HealthcareRole> +) <SampleCollectionProcess> CLOSED { ( $<SampleCollectionProcess_tes> ( &<InvestigativeProcess_tes> ; @@ -598,6 +711,14 @@ linkml:Sparqlpath xsd:string ) } +<Service> CLOSED { + ( $<Service_tes> ( &<Intangible_tes> ; + rdf:type [ schema:Intangible ] ? + ) ; + rdf:type [ <Service> ] ? + ) +} + <SimpleQuantity> CLOSED { ( $<SimpleQuantity_tes> ( &<Quantity_tes> ; rdf:type [ fhir:Quantity ] ? ; @@ -608,17 +729,70 @@ linkml:Sparqlpath xsd:string ) } +<Specification> ( + CLOSED { + ( $<Specification_tes> ( &<NamedThing_tes> ; + rdf:type [ <NamedThing> ] ? + ) ; + rdf:type [ <Specification> ] + ) + } OR @<Procedure> +) + +<StudyDesign> CLOSED { + ( $<StudyDesign_tes> ( &<Procedure_tes> ; + rdf:type [ <Procedure> ] ? + ) ; + rdf:type [ <StudyDesign> ] + ) +} + +<TemporalInterval> CLOSED { + ( $<TemporalInterval_tes> ( &<TimePointOrTemporalInterval_tes> ; + rdf:type [ <TimePointOrTemporalInterval> ] ? + ) ; + rdf:type [ <TemporalInterval> ] ? + ) +} + +<TemporalRelationship> CLOSED { + ( $<TemporalRelationship_tes> ( &<Relationship_tes> ; + rdf:type [ <Relationship> ] ? ; + <predicate> [ <https://w3id.org/linkml-common/RelativeTimeEnum#BEFORE> + <https://w3id.org/linkml-common/RelativeTimeEnum#AFTER> + <https://w3id.org/linkml-common/RelativeTimeEnum#AT_SAME_TIME_AS> ] ? ; + <relative_to> @<Entity> ? + ) ; + rdf:type [ <TemporalRelationship> ] ? + ) +} + <TimePoint> CLOSED { - ( $<TimePoint_tes> ( <date_value> @linkml:Date ? ; + ( $<TimePoint_tes> ( &<TimePointOrTemporalInterval_tes> ; + rdf:type [ <TimePointOrTemporalInterval> ] ? ; + <year_value> @linkml:Integer ? ; + <date_value> @linkml:Date ? ; <time_value> @linkml:Time ? ; <datetime_value> @linkml:Datetime ? ; <marker_event> @<Event> ? ; - schema1:description @linkml:String ? + schema:description @linkml:String ? ) ; rdf:type [ <TimePoint> ] ? ) } +<TimePointOrTemporalInterval> ( + CLOSED { + ( $<TimePointOrTemporalInterval_tes> ( &<Intangible_tes> ; + rdf:type [ schema:Intangible ] ? ; + <starts_at> @<TimePoint> ? ; + <ends_at> @<TimePoint> ? + ) ; + rdf:type [ <TimePointOrTemporalInterval> ] ? + ) + } OR @<TemporalInterval> OR @<TimePoint> +) + <UnitConcept> CLOSED { ( $<UnitConcept_tes> ( &<Concept_tes> ; rdf:type [ <Concept> ] ? @@ -639,19 +813,11 @@ linkml:Sparqlpath xsd:string <Variable> CLOSED { ( $<Variable_tes> ( &<Entity_tes> ; - rdf:type [ schema1:Thing ] ? ; + rdf:type [ schema:Thing ] ? ; <allowed_units> @<UnitConcept> * ) ; rdf:type [ <Variable> ] ? ) } -<XProcess> CLOSED { - ( $<XProcess_tes> ( &<Entity_tes> ; - rdf:type [ schema1:Thing ] ? - ) ; - rdf:type [ <XProcess> ] ? - ) -} - diff --git a/project/sqlschema/linkml_common.sql b/project/sqlschema/linkml_common.sql index 79a5266..0d8cc97 100644 --- a/project/sqlschema/linkml_common.sql +++ b/project/sqlschema/linkml_common.sql @@ -1,5 +1,25 @@ +CREATE TABLE "Agent" ( + id TEXT NOT NULL, + name TEXT, + type TEXT, + subtype TEXT, + ontology_types TEXT, + description TEXT, + PRIMARY KEY (id) +); + +CREATE TABLE "AutomatedAgent" ( + id TEXT NOT NULL, + name TEXT, + type TEXT, + subtype TEXT, + ontology_types TEXT, + description TEXT, + PRIMARY KEY (id) +); + CREATE TABLE "BasicFoodType" ( id TEXT NOT NULL, name TEXT, @@ -46,6 +66,39 @@ CREATE TABLE "Concept" ( PRIMARY KEY (id) ); +CREATE TABLE "CreativeWork" ( + id TEXT NOT NULL, + name TEXT, + type TEXT, + subtype TEXT, + ontology_types TEXT, + description TEXT, + title TEXT, + abstract TEXT, + rights TEXT, + creators TEXT, + contributors TEXT, + contacts TEXT, + PRIMARY KEY (id) +); + +CREATE TABLE "Dataset" ( + id TEXT NOT NULL, + name TEXT, + type TEXT, + subtype TEXT, + ontology_types TEXT, + description TEXT, + title TEXT, + abstract TEXT, + rights TEXT, + creators TEXT, + contributors TEXT, + contacts TEXT, + collected_as_part_of TEXT, + PRIMARY KEY (id) +); + CREATE TABLE "DataStructure" ( type TEXT, PRIMARY KEY (type) @@ -61,6 +114,18 @@ CREATE TABLE "EngineeringSpecification" ( PRIMARY KEY (id) ); +CREATE TABLE "EnvironmentalSite" ( + id TEXT NOT NULL, + name TEXT, + type TEXT, + subtype TEXT, + ontology_types TEXT, + description TEXT, + address TEXT, + geolocation TEXT, + PRIMARY KEY (id) +); + CREATE TABLE "Event" ( id TEXT NOT NULL, name TEXT, @@ -70,6 +135,9 @@ CREATE TABLE "Event" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, PRIMARY KEY (id) ); @@ -108,6 +176,9 @@ CREATE TABLE "HealthcareEncounter" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, patient TEXT, provider TEXT, subtype VARCHAR(34), @@ -160,6 +231,7 @@ CREATE TABLE "Investigation" ( ontology_types TEXT, description TEXT, objectives TEXT, + variables TEXT, PRIMARY KEY (id) ); @@ -194,6 +266,9 @@ CREATE TABLE "LifeEvent" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, PRIMARY KEY (id) ); @@ -301,12 +376,23 @@ CREATE TABLE "Publication" ( subtype TEXT, ontology_types TEXT, description TEXT, + title TEXT, + abstract TEXT, + rights TEXT, + creators TEXT, + contributors TEXT, + contacts TEXT, PRIMARY KEY (id) ); -CREATE TABLE "Quantity" ( +CREATE TABLE "QuantityKind" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - PRIMARY KEY (type) + subtype TEXT, + ontology_types TEXT, + description TEXT, + PRIMARY KEY (id) ); CREATE TABLE "QuantityRange" ( @@ -316,14 +402,17 @@ CREATE TABLE "QuantityRange" ( PRIMARY KEY (type, lower_bound, upper_bound) ); -CREATE TABLE "Ratio" ( +CREATE TABLE "RawMaterial" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - numerator TEXT, - denominator TEXT, - PRIMARY KEY (type, numerator, denominator) + subtype TEXT, + ontology_types TEXT, + description TEXT, + PRIMARY KEY (id) ); -CREATE TABLE "RawMaterial" ( +CREATE TABLE "SampleMaterial" ( id TEXT NOT NULL, name TEXT, type TEXT, @@ -333,7 +422,12 @@ CREATE TABLE "RawMaterial" ( PRIMARY KEY (id) ); -CREATE TABLE "SampleMaterial" ( +CREATE TABLE "Service" ( + type TEXT, + PRIMARY KEY (type) +); + +CREATE TABLE "Specification" ( id TEXT NOT NULL, name TEXT, type TEXT, @@ -343,6 +437,37 @@ CREATE TABLE "SampleMaterial" ( PRIMARY KEY (id) ); +CREATE TABLE "StudyDesign" ( + id TEXT NOT NULL, + name TEXT, + type TEXT, + subtype TEXT, + ontology_types TEXT, + description TEXT, + PRIMARY KEY (id) +); + +CREATE TABLE "TemporalInterval" ( + type TEXT, + starts_at TEXT, + ends_at TEXT, + PRIMARY KEY (type, starts_at, ends_at) +); + +CREATE TABLE "TemporalRelationship" ( + type TEXT, + predicate VARCHAR(15), + relative_to TEXT, + PRIMARY KEY (type, predicate, relative_to) +); + +CREATE TABLE "TimePointOrTemporalInterval" ( + type TEXT, + starts_at TEXT, + ends_at TEXT, + PRIMARY KEY (type, starts_at, ends_at) +); + CREATE TABLE "UnitConcept" ( id TEXT NOT NULL, name TEXT, @@ -367,11 +492,6 @@ CREATE TABLE "Variable" ( PRIMARY KEY (type, allowed_units) ); -CREATE TABLE "XProcess" ( - type TEXT, - PRIMARY KEY (type) -); - CREATE TABLE "ClinicalCohort" ( id TEXT NOT NULL, name TEXT, @@ -393,6 +513,9 @@ CREATE TABLE "DataGenerationFromSample" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, uses_physical_device TEXT, follows_procedure TEXT, part_of TEXT, @@ -402,6 +525,13 @@ CREATE TABLE "DataGenerationFromSample" ( FOREIGN KEY(part_of) REFERENCES "Investigation" (id) ); +CREATE TABLE "Duration" ( + type TEXT, + has_quantity_kind TEXT, + PRIMARY KEY (type, has_quantity_kind), + FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id) +); + CREATE TABLE "EngineeringMaterialProcessing" ( id TEXT NOT NULL, name TEXT, @@ -411,6 +541,9 @@ CREATE TABLE "EngineeringMaterialProcessing" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, follows_procedure TEXT, uses_physical_device TEXT, PRIMARY KEY (id), @@ -427,6 +560,9 @@ CREATE TABLE "EngineeringProcess" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, follows_procedure TEXT, part_of TEXT, PRIMARY KEY (id), @@ -436,8 +572,10 @@ CREATE TABLE "EngineeringProcess" ( CREATE TABLE "FoodIngredient" ( type TEXT, + has_quantity_kind TEXT, "FoodRecipe_id" TEXT, - PRIMARY KEY (type, "FoodRecipe_id"), + PRIMARY KEY (type, has_quantity_kind, "FoodRecipe_id"), + FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id), FOREIGN KEY("FoodRecipe_id") REFERENCES "FoodRecipe" (id) ); @@ -450,6 +588,9 @@ CREATE TABLE "FoodProcessing" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, follows_procedure TEXT, uses_physical_device TEXT, "FoodRecipe_id" TEXT, @@ -468,6 +609,9 @@ CREATE TABLE "HealthcareConditionOccurrence" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, patient TEXT, observed_during TEXT, PRIMARY KEY (id), @@ -475,18 +619,20 @@ CREATE TABLE "HealthcareConditionOccurrence" ( ); CREATE TABLE "HealthcareProvider" ( + type TEXT, is_person TEXT, speciality TEXT, care_site TEXT, - PRIMARY KEY (is_person, speciality, care_site), + PRIMARY KEY (type, is_person, speciality, care_site), FOREIGN KEY(is_person) REFERENCES "Person" (id), FOREIGN KEY(speciality) REFERENCES "Concept" (id), FOREIGN KEY(care_site) REFERENCES "HealthcareSite" (id) ); CREATE TABLE "HealthcareRole" ( + type TEXT, is_person TEXT, - PRIMARY KEY (is_person), + PRIMARY KEY (type, is_person), FOREIGN KEY(is_person) REFERENCES "Person" (id) ); @@ -499,6 +645,9 @@ CREATE TABLE "InvestigativeProcess" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, uses_physical_device TEXT, follows_procedure TEXT, part_of TEXT, @@ -517,6 +666,9 @@ CREATE TABLE "MaterialCollection" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, follows_procedure TEXT, uses_physical_device TEXT, PRIMARY KEY (id), @@ -533,6 +685,9 @@ CREATE TABLE "MaterialProcessing" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, follows_procedure TEXT, uses_physical_device TEXT, PRIMARY KEY (id), @@ -541,8 +696,9 @@ CREATE TABLE "MaterialProcessing" ( ); CREATE TABLE "Patient" ( + type TEXT, is_person TEXT, - PRIMARY KEY (is_person), + PRIMARY KEY (type, is_person), FOREIGN KEY(is_person) REFERENCES "Person" (id) ); @@ -555,6 +711,9 @@ CREATE TABLE "PlannedProcess" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, follows_procedure TEXT, uses_physical_device TEXT, PRIMARY KEY (id), @@ -562,6 +721,22 @@ CREATE TABLE "PlannedProcess" ( FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id) ); +CREATE TABLE "Quantity" ( + type TEXT, + has_quantity_kind TEXT, + PRIMARY KEY (type, has_quantity_kind), + FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id) +); + +CREATE TABLE "Ratio" ( + type TEXT, + has_quantity_kind TEXT, + numerator TEXT, + denominator TEXT, + PRIMARY KEY (type, has_quantity_kind, numerator, denominator), + FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id) +); + CREATE TABLE "SampleCollectionProcess" ( id TEXT NOT NULL, name TEXT, @@ -571,6 +746,9 @@ CREATE TABLE "SampleCollectionProcess" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, uses_physical_device TEXT, follows_procedure TEXT, part_of TEXT, @@ -593,6 +771,9 @@ CREATE TABLE "SampleProcessing" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, follows_procedure TEXT, uses_physical_device TEXT, PRIMARY KEY (id), @@ -602,22 +783,49 @@ CREATE TABLE "SampleProcessing" ( CREATE TABLE "SimpleQuantity" ( type TEXT, + has_quantity_kind TEXT, value FLOAT, unit TEXT, - PRIMARY KEY (type, value, unit), + PRIMARY KEY (type, has_quantity_kind, value, unit), + FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id), FOREIGN KEY(unit) REFERENCES "UnitConcept" (id) ); CREATE TABLE "TimePoint" ( + type TEXT, + starts_at TEXT, + ends_at TEXT, + year_value INTEGER, date_value DATE, time_value TIME, datetime_value DATETIME, marker_event TEXT, description TEXT, - PRIMARY KEY (date_value, time_value, datetime_value, marker_event, description), + PRIMARY KEY (type, starts_at, ends_at, year_value, date_value, time_value, datetime_value, marker_event, description), FOREIGN KEY(marker_event) REFERENCES "Event" (id) ); +CREATE TABLE "CreativeWork_keywords" ( + backref_id TEXT, + keywords TEXT, + PRIMARY KEY (backref_id, keywords), + FOREIGN KEY(backref_id) REFERENCES "CreativeWork" (id) +); + +CREATE TABLE "Dataset_keywords" ( + backref_id TEXT, + keywords TEXT, + PRIMARY KEY (backref_id, keywords), + FOREIGN KEY(backref_id) REFERENCES "Dataset" (id) +); + +CREATE TABLE "Publication_keywords" ( + backref_id TEXT, + keywords TEXT, + PRIMARY KEY (backref_id, keywords), + FOREIGN KEY(backref_id) REFERENCES "Publication" (id) +); + CREATE TABLE "ClinicalCohortEnrollment" ( id TEXT NOT NULL, name TEXT, @@ -627,6 +835,9 @@ CREATE TABLE "ClinicalCohortEnrollment" ( description TEXT, starts_at TEXT, ends_at TEXT, + happens_at TEXT, + has_interval TEXT, + has_duration TEXT, patient TEXT, cohort TEXT, PRIMARY KEY (id), diff --git a/pyproject.toml b/pyproject.toml index 904e4b0..c1d485e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,7 +14,8 @@ neo4j = "^5.14.1" linkml-transformer = "^0.2.2" [tool.poetry.group.dev.dependencies] -linkml = "^1.6.8" +linkml = "^1.6.10" +schema-automator = "^0.4.0" [tool.poetry-dynamic-versioning] enable = true diff --git a/src/data/examples/valid/Dataset-001.yaml b/src/data/examples/valid/Dataset-001.yaml new file mode 100644 index 0000000..2460753 --- /dev/null +++ b/src/data/examples/valid/Dataset-001.yaml @@ -0,0 +1,11 @@ +# Example data object +id: example:Dataset001 +name: my dataset +collected_as_part_of: + - example:Investigation001 +creators: + - example:Person001 +keywords: + - sample data + - testing + diff --git a/src/data/examples/valid/Event-001.yaml b/src/data/examples/valid/Event-001.yaml new file mode 100644 index 0000000..95f341a --- /dev/null +++ b/src/data/examples/valid/Event-001.yaml @@ -0,0 +1,6 @@ +# Example data object +id: example:Event001 +name: Battle of Hastings +happens_at: + year_value: 1066 + diff --git a/src/linkml_common/datamodel/linkml_common.py b/src/linkml_common/datamodel/linkml_common.py index 517473c..be78339 100644 --- a/src/linkml_common/datamodel/linkml_common.py +++ b/src/linkml_common/datamodel/linkml_common.py @@ -1,5 +1,5 @@ # Auto generated from linkml_common.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-01-13T18:02:58 +# Generation date: 2024-02-02T17:33:04 # Schema: linkml-common # # id: https://w3id.org/linkml/linkml-common @@ -31,19 +31,29 @@ dataclasses._init_fn = dataclasses_init_fn_with_kwargs # Namespaces +BFO = CurieNamespace('BFO', 'http://purl.obolibrary.org/obo/BFO_') ENVO = CurieNamespace('ENVO', 'http://purl.obolibrary.org/obo/ENVO_') +IAO = CurieNamespace('IAO', 'http://purl.obolibrary.org/obo/IAO_') +OBI = CurieNamespace('OBI', 'http://purl.obolibrary.org/obo/OBI_') PATO = CurieNamespace('PATO', 'http://purl.obolibrary.org/obo/PATO_') UCUM = CurieNamespace('UCUM', 'http://example.org/UNKNOWN/UCUM/') UO = CurieNamespace('UO', 'http://example.org/UNKNOWN/UO/') BIOLINK = CurieNamespace('biolink', 'https://w3id.org/biolink/') +DCTERMS = CurieNamespace('dcterms', 'http://purl.org/dc/terms/') EXAMPLE = CurieNamespace('example', 'https://example.org/') FHIR = CurieNamespace('fhir', 'http://hl7.org/fhir/') +FIBO = CurieNamespace('fibo', 'http://example.org/UNKNOWN/fibo/') +FIBO_DATESANDTIMES = CurieNamespace('fibo_DatesAndTimes', 'https://www.omg.org/spec/Commons/DatesAndTimes/') +FIBO_QUANTITIESANDUNITS = CurieNamespace('fibo_QuantitiesAndUnits', 'https://www.omg.org/spec/Commons/QuantitiesAndUnits/') +FIBO_COMMONS_PARTIESANDSITUATIONS = CurieNamespace('fibo_commons_PartiesAndSituations', 'https://spec.edmcouncil.org/fibo/ontology/FBC/ommons/PartiesAndSituations/') LINKML = CurieNamespace('linkml', 'https://w3id.org/linkml/') LINKML_COMMON = CurieNamespace('linkml_common', 'https://w3id.org/linkml-common/') NMDCSCHEMA = CurieNamespace('nmdcschema', 'http://example.org/UNKNOWN/nmdcschema/') OMOPSCHEMA = CurieNamespace('omopschema', 'http://example.org/omop/') -QUDT = CurieNamespace('qudt', 'http://example.org/UNKNOWN/qudt/') -RDF = CurieNamespace('rdf', 'http://example.org/UNKNOWN/rdf/') +PROV = CurieNamespace('prov', 'http://www.w3.org/ns/prov#') +QUDT = CurieNamespace('qudt', 'http://qudt.org/vocab/unit/') +RDF = CurieNamespace('rdf', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#') +RDFS = CurieNamespace('rdfs', 'http://www.w3.org/2000/01/rdf-schema#') SCHEMA = CurieNamespace('schema', 'http://schema.org/') DEFAULT_ = LINKML_COMMON @@ -67,11 +77,11 @@ class PhysicalDeviceId(NamedThingId): pass -class ProcedureId(NamedThingId): +class SpecificationId(NamedThingId): pass -class PublicationId(NamedThingId): +class ProcedureId(SpecificationId): pass @@ -111,6 +121,10 @@ class PlaceId(NamedThingId): pass +class EnvironmentalSiteId(PlaceId): + pass + + class LandformId(PlaceId): pass @@ -127,19 +141,31 @@ class InvestigativeProtocolId(ProcedureId): pass +class StudyDesignId(ProcedureId): + pass + + class SampleMaterialId(NamedThingId): pass +class QuantityKindId(ConceptId): + pass + + class UnitConceptId(ConceptId): pass -class PersonId(NamedThingId): +class AgentId(NamedThingId): + pass + + +class PersonId(AgentId): pass -class OrganizationId(NamedThingId): +class OrganizationId(AgentId): pass @@ -147,6 +173,22 @@ class HealthcareOrganizationId(OrganizationId): pass +class AutomatedAgentId(AgentId): + pass + + +class CreativeWorkId(NamedThingId): + pass + + +class PublicationId(CreativeWorkId): + pass + + +class DatasetId(CreativeWorkId): + pass + + class EventId(NamedThingId): pass @@ -386,7 +428,22 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.type = str(self.class_name) -class Relationship(YAMLRoot): +class Role(Intangible): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = SCHEMA["Role"] + class_class_curie: ClassVar[str] = "schema:Role" + class_name: ClassVar[str] = "Role" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Role + + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +class Relationship(Intangible): _inherited_slots: ClassVar[List[str]] = [] class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Relationship"] @@ -395,6 +452,12 @@ class Relationship(YAMLRoot): class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Relationship + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + class Location(YAMLRoot): _inherited_slots: ClassVar[List[str]] = [] @@ -432,42 +495,48 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass -class Procedure(NamedThing): +class Specification(NamedThing): """ - A canonical series of actions conducted in a certain order or manner + A specification of a thing """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Procedure"] - class_class_curie: ClassVar[str] = "linkml_common:Procedure" - class_name: ClassVar[str] = "Procedure" - class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Procedure + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Specification"] + class_class_curie: ClassVar[str] = "linkml_common:Specification" + class_name: ClassVar[str] = "Specification" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Specification - id: Union[str, ProcedureId] = None + id: Union[str, SpecificationId] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self._is_empty(self.id): self.MissingRequiredField("id") - if not isinstance(self.id, ProcedureId): - self.id = ProcedureId(self.id) + if not isinstance(self.id, SpecificationId): + self.id = SpecificationId(self.id) super().__post_init__(**kwargs) self.type = str(self.class_name) -class XProcess(Entity): +@dataclass +class Procedure(Specification): """ - A series of actions or steps taken in order to achieve a particular end + A canonical series of actions conducted in a certain order or manner """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML_COMMON["XProcess"] - class_class_curie: ClassVar[str] = "linkml_common:XProcess" - class_name: ClassVar[str] = "XProcess" - class_model_uri: ClassVar[URIRef] = LINKML_COMMON.XProcess + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Procedure"] + class_class_curie: ClassVar[str] = "linkml_common:Procedure" + class_name: ClassVar[str] = "Procedure" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Procedure + id: Union[str, ProcedureId] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, ProcedureId): + self.id = ProcedureId(self.id) super().__post_init__(**kwargs) self.type = str(self.class_name) @@ -527,29 +596,11 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): Any = Any -@dataclass -class Publication(NamedThing): - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Publication"] - class_class_curie: ClassVar[str] = "linkml_common:Publication" - class_name: ClassVar[str] = "Publication" - class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Publication - - id: Union[str, PublicationId] = None - - def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if self._is_empty(self.id): - self.MissingRequiredField("id") - if not isinstance(self.id, PublicationId): - self.id = PublicationId(self.id) - - super().__post_init__(**kwargs) - self.type = str(self.class_name) - - @dataclass class ClinicalCohort(NamedThing): + """ + A group of patients who share a common set of characteristics + """ _inherited_slots: ClassVar[List[str]] = [] class_class_uri: ClassVar[URIRef] = LINKML_COMMON["ClinicalCohort"] @@ -575,6 +626,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass class ClinicalCohortDefinition(NamedThing): + """ + A definition of a clinical cohort + """ _inherited_slots: ClassVar[List[str]] = [] class_class_uri: ClassVar[URIRef] = LINKML_COMMON["ClinicalCohortDefinition"] @@ -660,6 +714,15 @@ class EnvironmentalProcess(YAMLRoot): class_model_uri: ClassVar[URIRef] = LINKML_COMMON.EnvironmentalProcess +class EnvironmentalMonitoring(EnvironmentalProcess): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["EnvironmentalMonitoring"] + class_class_curie: ClassVar[str] = "linkml_common:EnvironmentalMonitoring" + class_name: ClassVar[str] = "EnvironmentalMonitoring" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.EnvironmentalMonitoring + + @dataclass class FoodRecipe(Procedure): _inherited_slots: ClassVar[List[str]] = [] @@ -786,6 +849,30 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.type = str(self.class_name) +@dataclass +class EnvironmentalSite(Place): + """ + A location or site that is the subject of environmental monitoring + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["EnvironmentalSite"] + class_class_curie: ClassVar[str] = "linkml_common:EnvironmentalSite" + class_name: ClassVar[str] = "EnvironmentalSite" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.EnvironmentalSite + + id: Union[str, EnvironmentalSiteId] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, EnvironmentalSiteId): + self.id = EnvironmentalSiteId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + @dataclass class Landform(Place): """ @@ -906,7 +993,7 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass -class HealthcareRole(YAMLRoot): +class HealthcareRole(Role): _inherited_slots: ClassVar[List[str]] = [] class_class_uri: ClassVar[URIRef] = LINKML_COMMON["HealthcareRole"] @@ -921,6 +1008,7 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.is_person = PersonId(self.is_person) super().__post_init__(**kwargs) + self.type = str(self.class_name) @dataclass @@ -943,6 +1031,7 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.care_site = HealthcareSiteId(self.care_site) super().__post_init__(**kwargs) + self.type = str(self.class_name) class Patient(HealthcareRole): @@ -954,6 +1043,12 @@ class Patient(HealthcareRole): class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Patient + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + @dataclass class Investigation(NamedThing): _inherited_slots: ClassVar[List[str]] = [] @@ -965,6 +1060,7 @@ class Investigation(NamedThing): id: Union[str, InvestigationId] = None objectives: Optional[str] = None + variables: Optional[Union[Union[dict, "Variable"], List[Union[dict, "Variable"]]]] = empty_list() def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self._is_empty(self.id): @@ -975,6 +1071,10 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.objectives is not None and not isinstance(self.objectives, str): self.objectives = str(self.objectives) + if not isinstance(self.variables, list): + self.variables = [self.variables] if self.variables is not None else [] + self.variables = [v if isinstance(v, Variable) else Variable(**as_dict(v)) for v in self.variables] + super().__post_init__(**kwargs) self.type = str(self.class_name) @@ -1000,6 +1100,27 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.type = str(self.class_name) +@dataclass +class StudyDesign(Procedure): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["StudyDesign"] + class_class_curie: ClassVar[str] = "linkml_common:StudyDesign" + class_name: ClassVar[str] = "StudyDesign" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.StudyDesign + + id: Union[str, StudyDesignId] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, StudyDesignId): + self.id = StudyDesignId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + @dataclass class SampleMaterial(NamedThing): _inherited_slots: ClassVar[List[str]] = [] @@ -1064,6 +1185,28 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.type = str(self.class_name) +@dataclass +class QuantityKind(Concept): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["QuantityKind"] + class_class_curie: ClassVar[str] = "linkml_common:QuantityKind" + class_name: ClassVar[str] = "QuantityKind" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.QuantityKind + + id: Union[str, QuantityKindId] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, QuantityKindId): + self.id = QuantityKindId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass class Quantity(Intangible): _inherited_slots: ClassVar[List[str]] = [] @@ -1072,8 +1215,11 @@ class Quantity(Intangible): class_name: ClassVar[str] = "Quantity" class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Quantity + has_quantity_kind: Optional[Union[str, QuantityKindId]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.has_quantity_kind is not None and not isinstance(self.has_quantity_kind, QuantityKindId): + self.has_quantity_kind = QuantityKindId(self.has_quantity_kind) super().__post_init__(**kwargs) self.type = str(self.class_name) @@ -1221,7 +1367,31 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass -class Person(NamedThing): +class Agent(NamedThing): + """ + Represents an Agent + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Agent"] + class_class_curie: ClassVar[str] = "linkml_common:Agent" + class_name: ClassVar[str] = "Agent" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Agent + + id: Union[str, AgentId] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, AgentId): + self.id = AgentId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class Person(Agent): """ Represents a Person """ @@ -1261,7 +1431,7 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass -class Organization(NamedThing): +class Organization(Agent): """ Represents an Organization """ @@ -1305,6 +1475,151 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.type = str(self.class_name) +@dataclass +class AutomatedAgent(Agent): + """ + Represents an Automated Agent + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["AutomatedAgent"] + class_class_curie: ClassVar[str] = "linkml_common:AutomatedAgent" + class_name: ClassVar[str] = "AutomatedAgent" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.AutomatedAgent + + id: Union[str, AutomatedAgentId] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, AutomatedAgentId): + self.id = AutomatedAgentId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class CreativeWork(NamedThing): + """ + The most generic kind of creative work, including books, movies, photographs, software programs, etc. + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["CreativeWork"] + class_class_curie: ClassVar[str] = "linkml_common:CreativeWork" + class_name: ClassVar[str] = "CreativeWork" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.CreativeWork + + id: Union[str, CreativeWorkId] = None + title: Optional[str] = None + abstract: Optional[str] = None + rights: Optional[str] = None + creators: Optional[Union[Union[str, AgentId], List[Union[str, AgentId]]]] = empty_list() + contributors: Optional[Union[Union[str, AgentId], List[Union[str, AgentId]]]] = empty_list() + contacts: Optional[Union[Union[str, AgentId], List[Union[str, AgentId]]]] = empty_list() + keywords: Optional[Union[str, List[str]]] = empty_list() + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, CreativeWorkId): + self.id = CreativeWorkId(self.id) + + if self.title is not None and not isinstance(self.title, str): + self.title = str(self.title) + + if self.abstract is not None and not isinstance(self.abstract, str): + self.abstract = str(self.abstract) + + if self.rights is not None and not isinstance(self.rights, str): + self.rights = str(self.rights) + + if not isinstance(self.creators, list): + self.creators = [self.creators] if self.creators is not None else [] + self.creators = [v if isinstance(v, AgentId) else AgentId(v) for v in self.creators] + + if not isinstance(self.contributors, list): + self.contributors = [self.contributors] if self.contributors is not None else [] + self.contributors = [v if isinstance(v, AgentId) else AgentId(v) for v in self.contributors] + + if not isinstance(self.contacts, list): + self.contacts = [self.contacts] if self.contacts is not None else [] + self.contacts = [v if isinstance(v, AgentId) else AgentId(v) for v in self.contacts] + + if not isinstance(self.keywords, list): + self.keywords = [self.keywords] if self.keywords is not None else [] + self.keywords = [v if isinstance(v, str) else str(v) for v in self.keywords] + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class Publication(CreativeWork): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Publication"] + class_class_curie: ClassVar[str] = "linkml_common:Publication" + class_name: ClassVar[str] = "Publication" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Publication + + id: Union[str, PublicationId] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, PublicationId): + self.id = PublicationId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class Dataset(CreativeWork): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Dataset"] + class_class_curie: ClassVar[str] = "linkml_common:Dataset" + class_name: ClassVar[str] = "Dataset" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Dataset + + id: Union[str, DatasetId] = None + collected_as_part_of: Optional[Union[Union[str, InvestigationId], List[Union[str, InvestigationId]]]] = empty_list() + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, DatasetId): + self.id = DatasetId(self.id) + + if not isinstance(self.collected_as_part_of, list): + self.collected_as_part_of = [self.collected_as_part_of] if self.collected_as_part_of is not None else [] + self.collected_as_part_of = [v if isinstance(v, InvestigationId) else InvestigationId(v) for v in self.collected_as_part_of] + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +class Service(Intangible): + """ + A service provided by an organization + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Service"] + class_class_curie: ClassVar[str] = "linkml_common:Service" + class_name: ClassVar[str] = "Service" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Service + + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + @dataclass class Event(NamedThing): """ @@ -1320,6 +1635,9 @@ class Event(NamedThing): id: Union[str, EventId] = None starts_at: Optional[Union[dict, "TimePoint"]] = None ends_at: Optional[Union[dict, "TimePoint"]] = None + happens_at: Optional[Union[dict, "TimePoint"]] = None + has_interval: Optional[Union[dict, "TemporalInterval"]] = None + has_duration: Optional[Union[dict, "Duration"]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self._is_empty(self.id): @@ -1333,12 +1651,24 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.ends_at is not None and not isinstance(self.ends_at, TimePoint): self.ends_at = TimePoint(**as_dict(self.ends_at)) + if self.happens_at is not None and not isinstance(self.happens_at, TimePoint): + self.happens_at = TimePoint(**as_dict(self.happens_at)) + + if self.has_interval is not None and not isinstance(self.has_interval, TemporalInterval): + self.has_interval = TemporalInterval(**as_dict(self.has_interval)) + + if self.has_duration is not None and not isinstance(self.has_duration, Duration): + self.has_duration = Duration(**as_dict(self.has_duration)) + super().__post_init__(**kwargs) self.type = str(self.class_name) @dataclass class ClinicalCohortEnrollment(Event): + """ + An event relating a patient to a clinical cohort + """ _inherited_slots: ClassVar[List[str]] = [] class_class_uri: ClassVar[URIRef] = LINKML_COMMON["ClinicalCohortEnrollment"] @@ -1479,7 +1809,59 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass -class TimePoint(YAMLRoot): +class TimePointOrTemporalInterval(Intangible): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["TimePointOrTemporalInterval"] + class_class_curie: ClassVar[str] = "linkml_common:TimePointOrTemporalInterval" + class_name: ClassVar[str] = "TimePointOrTemporalInterval" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.TimePointOrTemporalInterval + + starts_at: Optional[Union[dict, "TimePoint"]] = None + ends_at: Optional[Union[dict, "TimePoint"]] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.starts_at is not None and not isinstance(self.starts_at, TimePoint): + self.starts_at = TimePoint(**as_dict(self.starts_at)) + + if self.ends_at is not None and not isinstance(self.ends_at, TimePoint): + self.ends_at = TimePoint(**as_dict(self.ends_at)) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class TemporalInterval(TimePointOrTemporalInterval): + """ + A period of time + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["TemporalInterval"] + class_class_curie: ClassVar[str] = "linkml_common:TemporalInterval" + class_name: ClassVar[str] = "TemporalInterval" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.TemporalInterval + + starts_at: Optional[Union[dict, "TimePoint"]] = None + ends_at: Optional[Union[dict, "TimePoint"]] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.starts_at is not None and not isinstance(self.starts_at, TimePoint): + self.starts_at = TimePoint(**as_dict(self.starts_at)) + + if self.ends_at is not None and not isinstance(self.ends_at, TimePoint): + self.ends_at = TimePoint(**as_dict(self.ends_at)) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class TimePoint(TimePointOrTemporalInterval): + """ + A point in time. Can be fully specified, or specified in relative terms. + """ _inherited_slots: ClassVar[List[str]] = [] class_class_uri: ClassVar[URIRef] = LINKML_COMMON["TimePoint"] @@ -1487,6 +1869,7 @@ class TimePoint(YAMLRoot): class_name: ClassVar[str] = "TimePoint" class_model_uri: ClassVar[URIRef] = LINKML_COMMON.TimePoint + year_value: Optional[int] = None date_value: Optional[Union[str, XSDDate]] = None time_value: Optional[Union[str, XSDTime]] = None datetime_value: Optional[Union[str, XSDDateTime]] = None @@ -1494,6 +1877,9 @@ class TimePoint(YAMLRoot): description: Optional[str] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.year_value is not None and not isinstance(self.year_value, int): + self.year_value = int(self.year_value) + if self.date_value is not None and not isinstance(self.date_value, XSDDate): self.date_value = XSDDate(self.date_value) @@ -1510,10 +1896,58 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.description = str(self.description) super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +class Duration(Quantity): + """ + A length of time + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Duration"] + class_class_curie: ClassVar[str] = "linkml_common:Duration" + class_name: ClassVar[str] = "Duration" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Duration + + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class TemporalRelationship(Relationship): + """ + A relationship to another time point + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["TemporalRelationship"] + class_class_curie: ClassVar[str] = "linkml_common:TemporalRelationship" + class_name: ClassVar[str] = "TemporalRelationship" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.TemporalRelationship + + predicate: Optional[Union[str, "RelativeTimeEnum"]] = None + relative_to: Optional[Union[dict, Entity]] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.predicate is not None and not isinstance(self.predicate, RelativeTimeEnum): + self.predicate = RelativeTimeEnum(self.predicate) + + if self.relative_to is not None and not isinstance(self.relative_to, Entity): + self.relative_to = Entity(**as_dict(self.relative_to)) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) @dataclass class PlannedProcess(Event): + """ + A process that follows a defined procedure or plan + """ _inherited_slots: ClassVar[List[str]] = [] class_class_uri: ClassVar[URIRef] = LINKML_COMMON["PlannedProcess"] @@ -1779,6 +2213,34 @@ def _addvals(cls): text="Case Management Visit", description="""Person interacting with healthcare system, without a Care Site, within a day, with no Providers involved, for administrative purposes""")) +class CaseOrControlEnum(EnumDefinitionImpl): + + CASE = PermissibleValue( + text="CASE", + meaning=OBI["0002492"]) + CONTROL = PermissibleValue( + text="CONTROL", + meaning=OBI["0002493"]) + + _defn = EnumDefinition( + name="CaseOrControlEnum", + ) + +class StudyDesignEnum(EnumDefinitionImpl): + + _defn = EnumDefinition( + name="StudyDesignEnum", + ) + +class HumanLanguageCodeEnum(EnumDefinitionImpl): + """ + An enumeration of languages + """ + _defn = EnumDefinition( + name="HumanLanguageCodeEnum", + description="An enumeration of languages", + ) + class PersonStatus(EnumDefinitionImpl): ALIVE = PermissibleValue( @@ -1797,6 +2259,16 @@ class PersonStatus(EnumDefinitionImpl): name="PersonStatus", ) +class RelativeTimeEnum(EnumDefinitionImpl): + + BEFORE = PermissibleValue(text="BEFORE") + AFTER = PermissibleValue(text="AFTER") + AT_SAME_TIME_AS = PermissibleValue(text="AT_SAME_TIME_AS") + + _defn = EnumDefinition( + name="RelativeTimeEnum", + ) + # Slots class slots: pass @@ -1852,6 +2324,12 @@ class slots: slots.ends_at = Slot(uri=LINKML_COMMON.ends_at, name="ends_at", curie=LINKML_COMMON.curie('ends_at'), model_uri=LINKML_COMMON.ends_at, domain=None, range=Optional[Union[dict, TimePoint]]) +slots.happens_at = Slot(uri=LINKML_COMMON.happens_at, name="happens_at", curie=LINKML_COMMON.curie('happens_at'), + model_uri=LINKML_COMMON.happens_at, domain=None, range=Optional[Union[dict, TimePoint]]) + +slots.year_value = Slot(uri=LINKML_COMMON.year_value, name="year_value", curie=LINKML_COMMON.curie('year_value'), + model_uri=LINKML_COMMON.year_value, domain=None, range=Optional[int]) + slots.date_value = Slot(uri=LINKML_COMMON.date_value, name="date_value", curie=LINKML_COMMON.curie('date_value'), model_uri=LINKML_COMMON.date_value, domain=None, range=Optional[Union[str, XSDDate]]) @@ -1864,6 +2342,12 @@ class slots: slots.marker_event = Slot(uri=LINKML_COMMON.marker_event, name="marker_event", curie=LINKML_COMMON.curie('marker_event'), model_uri=LINKML_COMMON.marker_event, domain=None, range=Optional[Union[str, EventId]]) +slots.has_interval = Slot(uri=LINKML_COMMON.has_interval, name="has_interval", curie=LINKML_COMMON.curie('has_interval'), + model_uri=LINKML_COMMON.has_interval, domain=None, range=Optional[Union[dict, TemporalInterval]]) + +slots.has_duration = Slot(uri=LINKML_COMMON.has_duration, name="has_duration", curie=LINKML_COMMON.curie('has_duration'), + model_uri=LINKML_COMMON.has_duration, domain=None, range=Optional[Union[dict, Duration]]) + slots.mathematicalOperation__inputs = Slot(uri=LINKML_COMMON.inputs, name="mathematicalOperation__inputs", curie=LINKML_COMMON.curie('inputs'), model_uri=LINKML_COMMON.mathematicalOperation__inputs, domain=None, range=Optional[Union[Union[dict, Any], List[Union[dict, Any]]]]) @@ -1879,6 +2363,9 @@ class slots: slots.collection__members = Slot(uri=LINKML_COMMON.members, name="collection__members", curie=LINKML_COMMON.curie('members'), model_uri=LINKML_COMMON.collection__members, domain=None, range=Optional[Union[Union[dict, Entity], List[Union[dict, Entity]]]]) +slots.dataset__collected_as_part_of = Slot(uri=LINKML_COMMON.collected_as_part_of, name="dataset__collected_as_part_of", curie=LINKML_COMMON.curie('collected_as_part_of'), + model_uri=LINKML_COMMON.dataset__collected_as_part_of, domain=None, range=Optional[Union[Union[str, InvestigationId], List[Union[str, InvestigationId]]]]) + slots.clinicalCohort__definition = Slot(uri=LINKML_COMMON.definition, name="clinicalCohort__definition", curie=LINKML_COMMON.curie('definition'), model_uri=LINKML_COMMON.clinicalCohort__definition, domain=None, range=Optional[Union[str, ClinicalCohortDefinitionId]]) @@ -1951,6 +2438,9 @@ class slots: slots.investigation__objectives = Slot(uri=LINKML_COMMON.objectives, name="investigation__objectives", curie=LINKML_COMMON.curie('objectives'), model_uri=LINKML_COMMON.investigation__objectives, domain=None, range=Optional[str]) +slots.investigation__variables = Slot(uri=LINKML_COMMON.variables, name="investigation__variables", curie=LINKML_COMMON.curie('variables'), + model_uri=LINKML_COMMON.investigation__variables, domain=None, range=Optional[Union[Union[dict, Variable], List[Union[dict, Variable]]]]) + slots.investigativeProcess__follows_procedure = Slot(uri=LINKML_COMMON.follows_procedure, name="investigativeProcess__follows_procedure", curie=LINKML_COMMON.curie('follows_procedure'), model_uri=LINKML_COMMON.investigativeProcess__follows_procedure, domain=None, range=Optional[Union[str, InvestigativeProtocolId]]) @@ -1972,6 +2462,9 @@ class slots: slots.variable__allowed_units = Slot(uri=LINKML_COMMON.allowed_units, name="variable__allowed_units", curie=LINKML_COMMON.curie('allowed_units'), model_uri=LINKML_COMMON.variable__allowed_units, domain=None, range=Optional[Union[Union[str, UnitConceptId], List[Union[str, UnitConceptId]]]]) +slots.quantity__has_quantity_kind = Slot(uri=LINKML_COMMON.has_quantity_kind, name="quantity__has_quantity_kind", curie=LINKML_COMMON.curie('has_quantity_kind'), + model_uri=LINKML_COMMON.quantity__has_quantity_kind, domain=None, range=Optional[Union[str, QuantityKindId]]) + slots.simpleQuantity__value = Slot(uri=LINKML_COMMON.value, name="simpleQuantity__value", curie=LINKML_COMMON.curie('value'), model_uri=LINKML_COMMON.simpleQuantity__value, domain=None, range=Optional[float]) @@ -1990,6 +2483,33 @@ class slots: slots.quantityRange__upper_bound = Slot(uri=LINKML_COMMON.upper_bound, name="quantityRange__upper_bound", curie=LINKML_COMMON.curie('upper_bound'), model_uri=LINKML_COMMON.quantityRange__upper_bound, domain=None, range=Optional[Union[dict, Quantity]]) +slots.creativeWork__title = Slot(uri=LINKML_COMMON.title, name="creativeWork__title", curie=LINKML_COMMON.curie('title'), + model_uri=LINKML_COMMON.creativeWork__title, domain=None, range=Optional[str]) + +slots.creativeWork__abstract = Slot(uri=LINKML_COMMON.abstract, name="creativeWork__abstract", curie=LINKML_COMMON.curie('abstract'), + model_uri=LINKML_COMMON.creativeWork__abstract, domain=None, range=Optional[str]) + +slots.creativeWork__rights = Slot(uri=LINKML_COMMON.rights, name="creativeWork__rights", curie=LINKML_COMMON.curie('rights'), + model_uri=LINKML_COMMON.creativeWork__rights, domain=None, range=Optional[str]) + +slots.creativeWork__creators = Slot(uri=DCTERMS.creator, name="creativeWork__creators", curie=DCTERMS.curie('creator'), + model_uri=LINKML_COMMON.creativeWork__creators, domain=None, range=Optional[Union[Union[str, AgentId], List[Union[str, AgentId]]]]) + +slots.creativeWork__contributors = Slot(uri=DCTERMS.contributor, name="creativeWork__contributors", curie=DCTERMS.curie('contributor'), + model_uri=LINKML_COMMON.creativeWork__contributors, domain=None, range=Optional[Union[Union[str, AgentId], List[Union[str, AgentId]]]]) + +slots.creativeWork__contacts = Slot(uri=SCHEMA.contactPoint, name="creativeWork__contacts", curie=SCHEMA.curie('contactPoint'), + model_uri=LINKML_COMMON.creativeWork__contacts, domain=None, range=Optional[Union[Union[str, AgentId], List[Union[str, AgentId]]]]) + +slots.creativeWork__keywords = Slot(uri=SCHEMA.keywords, name="creativeWork__keywords", curie=SCHEMA.curie('keywords'), + model_uri=LINKML_COMMON.creativeWork__keywords, domain=None, range=Optional[Union[str, List[str]]]) + +slots.temporalRelationship__predicate = Slot(uri=LINKML_COMMON.predicate, name="temporalRelationship__predicate", curie=LINKML_COMMON.curie('predicate'), + model_uri=LINKML_COMMON.temporalRelationship__predicate, domain=None, range=Optional[Union[str, "RelativeTimeEnum"]]) + +slots.temporalRelationship__relative_to = Slot(uri=LINKML_COMMON.relative_to, name="temporalRelationship__relative_to", curie=LINKML_COMMON.curie('relative_to'), + model_uri=LINKML_COMMON.temporalRelationship__relative_to, domain=None, range=Optional[Union[dict, Entity]]) + slots.plannedProcess__follows_procedure = Slot(uri=LINKML_COMMON.follows_procedure, name="plannedProcess__follows_procedure", curie=LINKML_COMMON.curie('follows_procedure'), model_uri=LINKML_COMMON.plannedProcess__follows_procedure, domain=None, range=Optional[Union[str, ProcedureId]]) diff --git a/src/linkml_common/schema/bibliographic.yaml b/src/linkml_common/schema/bibliographic.yaml index 0d506e0..e98060d 100644 --- a/src/linkml_common/schema/bibliographic.yaml +++ b/src/linkml_common/schema/bibliographic.yaml @@ -2,7 +2,7 @@ id: https://w3id.org/linkml-common/financial name: linkml-common-financial title: linkml-common-financial description: |- - Common Data Model Elements + Common Data Model Elements: Bibliographic and Publishing Data license: MIT see_also: - https://linkml.github.io/linkml-common @@ -24,5 +24,5 @@ imports: classes: Publication: - is_a: NamedThing + is_a: CreativeWork diff --git a/src/linkml_common/schema/clinicalresearch.yaml b/src/linkml_common/schema/clinicalresearch.yaml index ec08343..d916c7c 100644 --- a/src/linkml_common/schema/clinicalresearch.yaml +++ b/src/linkml_common/schema/clinicalresearch.yaml @@ -1,8 +1,8 @@ id: https://w3id.org/linkml-common/clinicalresearch name: linkml-common-clinicalresearch -title: linkml-common-clinicalresearch +title: "LinkML Common Schema Components: Clinical Research" description: |- - Common Data Model Elements + Common Schema Components: Clinical Research license: MIT see_also: - https://linkml.github.io/linkml-common @@ -26,17 +26,20 @@ imports: classes: ClinicalCohort: + description: A group of patients who share a common set of characteristics is_a: NamedThing attributes: definition: range: ClinicalCohortDefinition ClinicalCohortDefinition: + description: A definition of a clinical cohort is_a: NamedThing exact_mappings: - omopschema:COHORT_DEFINITION ClinicalCohortEnrollment: + description: An event relating a patient to a clinical cohort is_a: Event exact_mappings: - omopschema:COHORT diff --git a/src/linkml_common/schema/computational.yaml b/src/linkml_common/schema/computational.yaml index 2da151b..f7e383a 100644 --- a/src/linkml_common/schema/computational.yaml +++ b/src/linkml_common/schema/computational.yaml @@ -19,7 +19,6 @@ default_range: string imports: - linkml:types - - quantities classes: diff --git a/src/linkml_common/schema/core.yaml b/src/linkml_common/schema/core.yaml index c6d3451..1b79158 100644 --- a/src/linkml_common/schema/core.yaml +++ b/src/linkml_common/schema/core.yaml @@ -13,7 +13,10 @@ prefixes: biolink: https://w3id.org/biolink/ schema: http://schema.org/ BFO: http://purl.obolibrary.org/obo/BFO_ + IAO: http://purl.obolibrary.org/obo/IAO_ fhir: http://hl7.org/fhir/ + rdfs: http://www.w3.org/2000/01/rdf-schema# + rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# default_prefix: linkml_common default_range: string @@ -63,8 +66,18 @@ classes: class_uri: schema:Intangible is_a: Entity + Role: + is_a: Intangible + abstract: true + class_uri: schema:Role + close_mappings: + - BFO:0000023 + Relationship: + is_a: Intangible abstract: true + close_mappings: + - rdfs:Statement Location: @@ -74,14 +87,19 @@ classes: is_a: Location Observation: - description: >- - A statement about the state of something + description: A statement about the state of something is_a: Entity - Procedure: - description: >- - A canonical series of actions conducted in a certain order or manner + + Specification: + description: A specification of a thing is_a: NamedThing + exact_mappings: + - IAO:0000104 + + Procedure: + description: A canonical series of actions conducted in a certain order or manner + is_a: Specification MathematicalOperation: description: >- diff --git a/src/linkml_common/schema/datasets.yaml b/src/linkml_common/schema/datasets.yaml new file mode 100644 index 0000000..6c7b187 --- /dev/null +++ b/src/linkml_common/schema/datasets.yaml @@ -0,0 +1,33 @@ +id: https://w3id.org/linkml-common/datasets +name: linkml-common-datasets +title: linkml-common-datasets +description: |- + Common Data Model Elements +license: MIT +see_also: + - https://linkml.github.io/linkml-common + +prefixes: + linkml_common: https://w3id.org/linkml-common/ + linkml: https://w3id.org/linkml/ + biolink: https://w3id.org/biolink/ + schema: http://schema.org/ + PATO: http://purl.obolibrary.org/obo/PATO_ + fhir: http://hl7.org/fhir/ +default_prefix: linkml_common +default_range: string + +imports: + - linkml:types + - bibliographic + - investigations + +classes: + + Dataset: + is_a: CreativeWork + attributes: + collected_as_part_of: + range: Investigation + multivalued: true + diff --git a/src/linkml_common/schema/environmental.yaml b/src/linkml_common/schema/environmental.yaml index 1cb3141..0ca172d 100644 --- a/src/linkml_common/schema/environmental.yaml +++ b/src/linkml_common/schema/environmental.yaml @@ -24,7 +24,14 @@ imports: classes: + EnvironmentalSite: + description: A location or site that is the subject of environmental monitoring + is_a: Place + EnvironmentalProcess: comments: - TODO #is_a: Process + + EnvironmentalMonitoring: + is_a: EnvironmentalProcess diff --git a/src/linkml_common/schema/financial.yaml b/src/linkml_common/schema/financial.yaml index 29019d6..8f31816 100644 --- a/src/linkml_common/schema/financial.yaml +++ b/src/linkml_common/schema/financial.yaml @@ -14,7 +14,7 @@ prefixes: schema: http://schema.org/ PATO: http://purl.obolibrary.org/obo/PATO_ fhir: http://hl7.org/fhir/ - fibo: https://spec.edmcouncil.org/fibo/ontology/ + fibo: https://spec.edmcouncil.org/fibo/ontology/FBC default_prefix: linkml_common default_range: string @@ -43,3 +43,25 @@ classes: A currency is_a: Concept + FinancialProduct: + description: A product or service offered by a bank whereby one may deposit, + withdraw or transfer money and in some cases be paid interest. + is_a: Service + + FinancialAccount: + description: A bank account + is_a: FinancialProduct + attributes: + account_number: + range: string + description: The account number + bank: + range: Organization + description: The bank that holds the account + account_holder: + range: Person + description: The person or organization that holds the account + exact_mappings: + - fibo:ProductsAndServices/ClientsAndAccounts/Account + - schema:BankAccount + diff --git a/src/linkml_common/schema/foods.yaml b/src/linkml_common/schema/foods.yaml index 9aa61d1..1ee0f07 100644 --- a/src/linkml_common/schema/foods.yaml +++ b/src/linkml_common/schema/foods.yaml @@ -47,4 +47,6 @@ classes: CompositeFoodType: is_a: FoodTypeConcept + implements: + - linkml_common:Composable diff --git a/src/linkml_common/schema/healthcare.yaml b/src/linkml_common/schema/healthcare.yaml index d325c77..0dd5222 100644 --- a/src/linkml_common/schema/healthcare.yaml +++ b/src/linkml_common/schema/healthcare.yaml @@ -47,6 +47,7 @@ classes: is_a: Organization HealthcareRole: + is_a: Role attributes: is_person: range: Person diff --git a/src/linkml_common/schema/investigations.yaml b/src/linkml_common/schema/investigations.yaml index 539f5ae..a3e3ea0 100644 --- a/src/linkml_common/schema/investigations.yaml +++ b/src/linkml_common/schema/investigations.yaml @@ -6,6 +6,7 @@ description: |- license: MIT see_also: - https://linkml.github.io/linkml-common + - https://obi-ontology.org/ prefixes: linkml_common: https://w3id.org/linkml-common/ @@ -32,10 +33,16 @@ classes: attributes: objectives: range: string + variables: + range: Variable + multivalued: true InvestigativeProtocol: is_a: Procedure + StudyDesign: + is_a: Procedure + SampleMaterial: is_a: NamedThing @@ -63,3 +70,21 @@ classes: DataGenerationFromSample: is_a: InvestigativeProcess +enums: + + CaseOrControlEnum: + permissible_values: + CASE: + title: case role in case-control study + meaning: OBI:0002492 + CONTROL: + title: control role in case-control study + meaning: OBI:0002493 + + StudyDesignEnum: + reachable_from: + source_nodes: + - OBI:0500000 + is_direct: false + relationship_types: + - rdfs:subClassOf \ No newline at end of file diff --git a/src/linkml_common/schema/linkml_common.yaml b/src/linkml_common/schema/linkml_common.yaml index e952d70..0ed535a 100644 --- a/src/linkml_common/schema/linkml_common.yaml +++ b/src/linkml_common/schema/linkml_common.yaml @@ -21,6 +21,7 @@ imports: - linkml:types - core - bibliographic + - datasets - clinicalresearch - computational - engineering diff --git a/src/linkml_common/schema/plannedprocess.yaml b/src/linkml_common/schema/plannedprocess.yaml index 17249ef..7c353fa 100644 --- a/src/linkml_common/schema/plannedprocess.yaml +++ b/src/linkml_common/schema/plannedprocess.yaml @@ -25,12 +25,15 @@ imports: classes: PlannedProcess: + description: A process that follows a defined procedure or plan is_a: Event attributes: follows_procedure: range: Procedure uses_physical_device: range: PhysicalDevice + exact_mappings: + - OBI:0000011 MaterialCollection: is_a: PlannedProcess diff --git a/src/linkml_common/schema/quantities.yaml b/src/linkml_common/schema/quantities.yaml index d17aa55..a469cfe 100644 --- a/src/linkml_common/schema/quantities.yaml +++ b/src/linkml_common/schema/quantities.yaml @@ -14,6 +14,8 @@ prefixes: schema: http://schema.org/ PATO: http://purl.obolibrary.org/obo/PATO_ fhir: http://hl7.org/fhir/ + qudt: http://qudt.org/vocab/unit/ + fibo.QuantitiesAndUnits: https://www.omg.org/spec/Commons/QuantitiesAndUnits/ default_prefix: linkml_common default_range: string @@ -23,6 +25,12 @@ imports: classes: + QuantityKind: + is_a: Concept + exact_mappings: + - qudt:QuantityKind + - fibo.QuantitiesAndUnits:ScalarQuantity + Quantity: is_a: Intangible class_uri: fhir:Quantity @@ -30,6 +38,12 @@ classes: - Quantity - QuantityRange - Ratio + attributes: + has_quantity_kind: + range: QuantityKind + description: The kind of quantity + exact_mappings: + - schema:Quantity SimpleQuantity: description: >- @@ -42,6 +56,12 @@ classes: description: The value of the quantity unit: range: UnitConcept + exact_mappings: + - schema:unitCode + - qudt:unit + exact_mappings: + - fibo:ScalarQuantityValue + Ratio: description: >- diff --git a/src/linkml_common/schema/social.yaml b/src/linkml_common/schema/social.yaml index 86bb511..a2cca18 100644 --- a/src/linkml_common/schema/social.yaml +++ b/src/linkml_common/schema/social.yaml @@ -2,7 +2,7 @@ id: https://w3id.org/linkml-common/social name: linkml-common-social title: linkml-common-social description: |- - Common Data Model Elements + Common Data Model Elements: Human and social activities license: MIT see_also: - https://linkml.github.io/linkml-common @@ -14,6 +14,9 @@ prefixes: schema: http://schema.org/ PATO: http://purl.obolibrary.org/obo/PATO_ fhir: http://hl7.org/fhir/ + prov: http://www.w3.org/ns/prov# + dcterms: http://purl.org/dc/terms/ + fibo.commons.PartiesAndSituations: https://spec.edmcouncil.org/fibo/ontology/FBC/ommons/PartiesAndSituations/ default_prefix: linkml_common default_range: string @@ -23,10 +26,16 @@ imports: classes: - Person: + Agent: is_a: NamedThing - description: >- - Represents a Person + description: Represents an Agent + exact_mappings: + - prov:Agent + - fibo.commons.PartiesAndSituations:Agent + + Person: + is_a: Agent + description: Represents a Person slots: - primary_email - birth_date @@ -35,15 +44,66 @@ classes: slot_usage: primary_email: pattern: "^\\S+@[\\S+\\.]+\\S+" + exact_mappings: + - schema:Person Organization: - is_a: NamedThing - description: >- - Represents an Organization + is_a: Agent + description: Represents an Organization + exact_mappings: + - schema:Organization + + AutomatedAgent: + is_a: Agent + description: Represents an Automated Agent LifeEvent: is_a: Event + CreativeWork: + description: The most generic kind of creative work, including books, movies, photographs, software programs, etc. + is_a: NamedThing + exact_mappings: + - schema:CreativeWork + attributes: + title: + range: string + description: The title of the item + exact_mappings: + - dcterms:title + abstract: + range: string + description: A summary of the item + rights: + range: string + description: Information about rights held in and over the item + creators: + range: Agent + slot_uri: dcterms:creator + description: The person or organization who created the work + multivalued: true + contributors: + range: Agent + slot_uri: dcterms:contributor + description: A person or organization that contributed to the creation of the work + multivalued: true + contacts: + range: Agent + slot_uri: schema:contactPoint + description: A contact point for a person or organization + multivalued: true + keywords: + range: string + slot_uri: schema:keywords + description: Keywords or tags used to describe this item + multivalued: true + + Service: + description: A service provided by an organization + is_a: Intangible + exact_mappings: + - schema:Service + slots: primary_email: @@ -61,6 +121,8 @@ slots: description: living or dead status enums: + HumanLanguageCodeEnum: + description: An enumeration of languages PersonStatus: permissible_values: ALIVE: diff --git a/src/linkml_common/schema/time.yaml b/src/linkml_common/schema/time.yaml index 8422613..ea358c4 100644 --- a/src/linkml_common/schema/time.yaml +++ b/src/linkml_common/schema/time.yaml @@ -14,6 +14,7 @@ prefixes: schema: http://schema.org/ PATO: http://purl.obolibrary.org/obo/PATO_ fhir: http://hl7.org/fhir/ + fibo.DatesAndTimes: https://www.omg.org/spec/Commons/DatesAndTimes/ default_prefix: linkml_common default_range: string @@ -25,20 +26,60 @@ imports: classes: Event: - description: >- - A thing that happens + description: A thing that happens is_a: NamedThing slots: - starts_at - ends_at + - happens_at + - has_interval + - has_duration + + + TimePointOrTemporalInterval: + is_a: Intangible + slots: + - starts_at + - ends_at + + TemporalInterval: + description: A period of time + is_a: TimePointOrTemporalInterval + slots: + - starts_at + - ends_at TimePoint: + description: A point in time. Can be fully specified, or specified in relative terms. + is_a: TimePointOrTemporalInterval slots: + - year_value - date_value - time_value - datetime_value - marker_event - description + exact_mappings: + - fibo.DatesAndTimes:TimeInstant + + Duration: + description: A length of time + is_a: Quantity + + + TemporalRelationship: + description: A relationship to another time point + is_a: Relationship + attributes: + predicate: + range: RelativeTimeEnum + description: The relationship between the two time points + relative_to: + range: Entity + any_of: + - range: TimePoint + - range: TemporalInterval + - range: Event slots: @@ -49,6 +90,15 @@ slots: ends_at: range: TimePoint + happens_at: + range: TimePoint + + year_value: + range: integer + unit: + symbol: year + ucum_code: a + date_value: range: date @@ -60,3 +110,17 @@ slots: marker_event: range: Event + + has_interval: + range: TemporalInterval + + has_duration: + range: Duration + +enums: + + RelativeTimeEnum: + permissible_values: + BEFORE: + AFTER: + AT_SAME_TIME_AS: \ No newline at end of file